:root{--navy:#10263f;--navy2:#173753;--green:#6f9d4a;--orange:#d88422;--text:#27352e;--muted:#68766f;--line:#e2e8e3;--soft:#f6f8f5;--white:#fff;--danger:#b6463c}
*{box-sizing:border-box}.license-apply-page{margin:0;background:#fff;color:var(--text);font-family:Pretendard,"Noto Sans KR",Arial,sans-serif}.license-apply-page main{overflow:hidden}.apply-container{width:min(1180px,calc(100% - 48px));margin:0 auto}.apply-hero{padding:72px 0 56px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#f8faf7 0%,#fff 58%,#fff9ef 100%)}.apply-badge{display:inline-flex;padding:7px 11px;border-radius:999px;background:#fff7e9;border:1px solid #f0dfc2;color:#b96d17;font-size:12px;font-weight:800;letter-spacing:.2px}.apply-hero h1{margin:15px 0 12px;color:var(--navy);font-size:42px;line-height:1.2;letter-spacing:-1.8px}.apply-hero p{margin:0;color:#59675f;font-size:17px;line-height:1.75}.apply-body{padding:52px 0 82px}.apply-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:34px;align-items:start}.apply-intro{margin-bottom:18px;padding:20px 22px;border:1px solid #dce7d7;border-left:4px solid var(--green);border-radius:14px;background:#f7fbf4}.apply-intro strong{display:block;margin-bottom:6px;color:var(--navy);font-size:17px}.apply-intro p{margin:0;color:#5b6a61;font-size:15px;line-height:1.75}.login-notice{margin-bottom:18px;padding:15px 18px;border:1px solid #efd6b3;border-radius:12px;background:#fff8ed;color:#806038;font-size:14px}.apply-form{display:grid;gap:18px}.form-section{padding:24px 26px;border:1px solid var(--line);border-radius:16px;background:#fff}.precheck-gate{background:#fbfdf9;border-color:#dce7d7}.form-section-head{display:flex;gap:13px;align-items:flex-start;margin-bottom:20px}.form-section-head>span{display:inline-flex;flex:0 0 34px;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:var(--navy);color:#fff;font-size:12px;font-weight:900}.compact-head>span{background:#6f9d4a;font-size:15px}.form-section-head h2{margin:1px 0 4px;color:var(--navy);font-size:20px;line-height:1.3;letter-spacing:-.6px}.form-section-head p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.55}.form-grid{display:grid;gap:14px}.form-grid.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.full-span{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:7px}.field.full{width:100%}.field>span,.choice-label{color:#39483f;font-size:13.5px;font-weight:800}.field em,.choice-label em{color:var(--orange);font-style:normal}.field input,.field select,.field textarea{width:100%;border:1px solid #d7dfd9;border-radius:10px;background:#fff;color:#24332a;font:inherit;font-size:14.5px;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.field input,.field select{height:46px;padding:0 13px}.field textarea{padding:12px 13px;resize:vertical;line-height:1.6}.field input:focus,.field select:focus,.field textarea:focus{border-color:#8fb276;box-shadow:0 0 0 3px rgba(111,157,74,.12)}.field small{align-self:flex-end;color:#8a948e;font-size:12px;line-height:1.45}.choice-group{display:flex;align-items:center;gap:9px;min-height:46px;padding:9px 11px;border:1px solid #e1e7e2;border-radius:11px;background:#fafbfa}.choice-wide{flex-wrap:wrap;align-items:flex-start}.choice-wide .choice-label{width:100%;margin:0 0 2px}.choice-label{margin-right:5px;white-space:nowrap}.choice-group label{display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:#536158;font-size:13.5px;line-height:1.45}.choice-group input,.check-grid input{accent-color:var(--green)}.conditional-block{margin-top:18px;padding:18px;border:1px solid #e0e7e1;border-radius:12px;background:#fbfcfb}.business-block{background:#f8fbf6;border-color:#dce7d7}.conditional-title{margin-bottom:14px;color:var(--navy);font-size:14.5px;font-weight:900}.section-helper{margin:14px 0 0;padding:12px 14px;border-radius:10px;background:#f6f8f6;color:#66736b;font-size:12.8px;line-height:1.65}.top-gap{margin-top:14px}.input-unit{display:flex;align-items:center;border:1px solid #d7dfd9;border-radius:10px;background:#fff;overflow:hidden}.input-unit:focus-within{border-color:#8fb276;box-shadow:0 0 0 3px rgba(111,157,74,.12)}.input-unit input{border:0!important;box-shadow:none!important;border-radius:0}.input-unit b{padding:0 13px;color:#758079;font-size:13px;font-weight:700;white-space:nowrap}.funding-box{padding:17px 18px;border:1px solid #e1e7e2;border-radius:12px;background:#fafbfa}.funding-box h3{margin:0 0 12px;color:#33443a;font-size:14.5px}.funding-box h3 small{color:#78847d;font-size:12px;font-weight:600}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px}.check-grid label{display:flex;align-items:flex-start;gap:7px;color:#536158;font-size:13.2px;line-height:1.45;cursor:pointer}.check-grid input{margin-top:2px}.precheck-status{margin-top:10px;min-height:20px;color:#607067;font-size:13px;line-height:1.55}.precheck-status.warning{padding:12px 14px;border-radius:10px;background:#fff7ea;color:#8a622c}.precheck-status a{color:#b66e1e;font-weight:800;text-decoration:underline;text-underline-offset:2px}.document-notice{padding:20px 22px;border:1px solid #ead8bb;border-left:4px solid var(--orange);border-radius:14px;background:#fffaf2}.document-notice strong{display:block;margin-bottom:6px;color:#7d5420;font-size:16px}.document-notice p{margin:0;color:#776b5c;font-size:13.5px;line-height:1.7}.final-guide{padding:15px 17px;border-radius:11px;background:#f6f8f6;color:#67736c;font-size:13px;line-height:1.7}.form-message{margin:0;padding:13px 16px;border-radius:10px;font-size:14px;line-height:1.6}.form-message.info{background:#f0f6ed;color:#4f6f3d}.form-message.error{background:#fff0ee;color:#9d3f36}.form-actions{display:flex;justify-content:center;gap:10px;padding-top:7px}.submit-btn,.cancel-btn{display:inline-flex;min-width:180px;height:48px;align-items:center;justify-content:center;border-radius:11px;font-size:14.5px;font-weight:800;text-decoration:none;cursor:pointer}.submit-btn{border:1px solid #ca7619;background:var(--orange);color:#fff}.submit-btn:hover{background:#c87518}.cancel-btn{border:1px solid #dce2dd;background:#fff;color:#5e6b63}.cancel-btn:hover{background:#f7f8f7}.apply-side{position:sticky;top:112px;display:grid;gap:14px}.side-card,.side-note{border:1px solid var(--line);border-radius:16px;background:#fff}.side-card{padding:22px}.side-card h2{margin:0 0 17px;color:var(--navy);font-size:18px}.side-card ol{display:grid;gap:15px;margin:0;padding:0;list-style:none}.side-card li{display:flex;gap:10px}.side-card li>span{display:inline-flex;flex:0 0 27px;width:27px;height:27px;align-items:center;justify-content:center;border-radius:50%;background:#f1f6ed;color:#5c883f;font-size:12px;font-weight:900}.side-card strong{display:block;margin-bottom:2px;color:#33443a;font-size:14px}.side-card p{margin:0;color:#77837c;font-size:12.5px;line-height:1.55}.side-note{padding:18px 19px;background:#fff9f0;border-color:#efe0c7}.side-note strong{display:block;margin-bottom:5px;color:#805822;font-size:14px}.side-note p{margin:0;color:#786c5e;font-size:12.5px;line-height:1.65}
@media(max-width:980px){.apply-layout{grid-template-columns:1fr}.apply-side{position:static;grid-template-columns:1fr 1fr}.form-grid.three-col{grid-template-columns:1fr 1fr}.form-grid.three-col .field:last-child{grid-column:1/-1}}
@media(max-width:700px){.apply-container{width:min(100% - 32px,1180px)}.apply-hero{padding:52px 0 42px}.apply-hero h1{font-size:32px;letter-spacing:-1.2px}.apply-hero p{font-size:15px}.apply-body{padding:34px 0 60px}.form-section{padding:20px 18px}.form-grid.three-col,.form-grid.two-col,.apply-side,.check-grid{grid-template-columns:1fr}.form-grid.three-col .field:last-child,.full-span{grid-column:auto}.choice-group{align-items:flex-start;flex-wrap:wrap;width:100%}.choice-label{width:100%;margin-bottom:2px}.form-actions{flex-direction:column}.submit-btn,.cancel-btn{width:100%}}

/* v2.5 application refinements */
.license-apply-page main{padding-top:88px}
.apply-hero{padding:76px 0 58px}
.address-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}
.address-search-btn{height:46px;padding:0 18px;border:1px solid #c9d7c4;border-radius:10px;background:#f4f8f1;color:#4f713c;font:inherit;font-size:13.5px;font-weight:800;white-space:nowrap;cursor:pointer}
.address-search-btn:hover{background:#eaf3e4}
.address-search-btn:focus-visible{outline:3px solid rgba(111,157,74,.18);outline-offset:2px}
.document-list-link,.side-document-link{display:inline-block;margin-top:9px;color:#9a5c18;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.confirmation-check{display:flex;align-items:flex-start;gap:10px;padding:15px 16px;border:1px solid #dce5dd;border-radius:11px;background:#f8faf7;color:#4f5e55;font-size:14px;line-height:1.65;cursor:pointer}
.confirmation-check input{flex:0 0 auto;margin-top:4px;accent-color:var(--green)}
.confirmation-check em{color:var(--orange);font-style:normal;font-weight:800}
.confirmation-list{display:grid;gap:10px}
.document-list-link,.side-document-link{padding:0;border:0;background:transparent;font-family:inherit;cursor:pointer}
.documents-modal-open{overflow:hidden}
.documents-modal[hidden]{display:none}
.documents-modal{position:fixed;inset:0;z-index:20000;display:flex;align-items:center;justify-content:center;padding:24px}
.documents-modal-backdrop{position:absolute;inset:0;background:rgba(9,25,40,.62);backdrop-filter:blur(3px)}
.documents-modal-panel{position:relative;display:flex;flex-direction:column;width:min(880px,100%);max-height:min(820px,calc(100vh - 48px));overflow:hidden;border:1px solid #dfe6df;border-radius:22px;background:#fff;box-shadow:0 28px 80px rgba(6,24,39,.28);outline:none}
.documents-modal-head{display:flex;justify-content:space-between;gap:24px;padding:25px 28px 21px;border-bottom:1px solid #e5ebe6;background:linear-gradient(135deg,#f7faf5,#fffaf2)}
.documents-modal-head span{color:var(--orange);font-size:12px;font-weight:900;letter-spacing:1px}.documents-modal-head h2{margin:5px 0 7px;color:var(--navy);font-size:27px;letter-spacing:-1px}.documents-modal-head p{margin:0;color:#69766e;font-size:13.5px;line-height:1.65}
.documents-modal-close{flex:0 0 40px;width:40px;height:40px;border:1px solid #dce3dd;border-radius:50%;background:#fff;color:#5f6d65;font-size:25px;line-height:1;cursor:pointer}.documents-modal-close:hover{background:#f3f6f3}
.documents-modal-body{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:22px 28px;overflow-y:auto}.documents-group{overflow:hidden;border:1px solid #e1e7e2;border-radius:14px;background:#fff}.conditional-documents{grid-column:1/-1}.documents-group-title{display:flex;align-items:center;gap:11px;padding:15px 17px;border-bottom:1px solid #e5eae6}.documents-group-title b{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;height:32px;border-radius:50%;font-size:11px}.documents-group-title h3{margin:0 0 2px;color:var(--navy);font-size:16px}.documents-group-title p{margin:0;color:#77827b;font-size:11.5px}.owner-documents .documents-group-title{background:#fff9f1}.owner-documents .documents-group-title b{background:#f7e8d2;color:#a76217}.agency-documents .documents-group-title{background:#f2f8ef}.agency-documents .documents-group-title b{background:#dfeeda;color:#4d7938}.conditional-documents .documents-group-title{background:#f3f5f7}.conditional-documents .documents-group-title b{background:#e5ebef;color:#536b7c}
.documents-group ol{display:grid;gap:8px;margin:0;padding:15px 18px 17px 42px;color:#536158;font-size:13px;line-height:1.5}.documents-group ol li::marker{color:#8a978f;font-size:11px;font-weight:800}.conditional-documents ol{grid-template-columns:repeat(3,minmax(0,1fr));padding-left:42px}.documents-modal-note{grid-column:1/-1;margin:0;padding:12px 14px;border-radius:10px;background:#f6f8f6;color:#738078;font-size:12px;line-height:1.6}
.documents-modal-actions{display:flex;justify-content:flex-end;gap:9px;padding:17px 28px;border-top:1px solid #e5ebe6;background:#fafbfa}.documents-modal-actions a,.documents-modal-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:0 17px;border-radius:10px;font-family:inherit;font-size:13.5px;font-weight:800;text-decoration:none;cursor:pointer}.documents-modal-actions a{border:1px solid #d8e0da;background:#fff;color:#53645a}.documents-modal-actions button{border:1px solid #ca7619;background:var(--orange);color:#fff}
@media(max-width:700px){.documents-modal{align-items:flex-end;padding:0}.documents-modal-panel{width:100%;max-height:92vh;border-radius:20px 20px 0 0}.documents-modal-head{padding:20px 18px 17px}.documents-modal-head h2{font-size:23px}.documents-modal-body{grid-template-columns:1fr;padding:16px 18px}.conditional-documents{grid-column:auto}.conditional-documents ol{grid-template-columns:1fr}.documents-modal-actions{display:grid;grid-template-columns:1fr;padding:14px 18px calc(14px + env(safe-area-inset-bottom))}.documents-modal-actions a,.documents-modal-actions button{width:100%}}
.form-actions{justify-content:flex-end;margin-top:2px;padding-top:10px;border-top:1px solid #edf0ed}
.submit-btn{order:2}.cancel-btn{order:1;min-width:120px}.submit-btn{min-width:220px}
@media(max-width:980px){.license-apply-page main{padding-top:84px}}
@media(max-width:700px){.apply-hero{padding:50px 0 40px}.address-input-row{grid-template-columns:1fr}.address-search-btn{width:100%}.form-actions{padding-top:8px}.submit-btn{order:1}.cancel-btn{order:2}}

/* v3.3: laptop-safe document modal scrolling */
.documents-modal-panel{height:min(820px,calc(100dvh - 48px));max-height:calc(100vh - 48px)}
.documents-modal-head{flex:0 0 auto}
.documents-modal-body{min-height:0;overflow-x:hidden;overflow-y:scroll;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}
.documents-modal-actions{position:relative;z-index:2;flex:0 0 auto}
@media(max-width:700px){.documents-modal-panel{height:92dvh;max-height:92vh}}

/* v3.4: scroll the whole overlay for reliable laptop visibility */
.documents-modal{display:block;padding:24px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
.documents-modal-backdrop{position:fixed}
.documents-modal-panel{display:block;height:auto;min-height:0;max-height:none;margin:0 auto;overflow:visible}
.documents-modal-head{position:relative}
.documents-modal-body{display:grid;min-height:0;overflow:visible}
.documents-modal-actions{position:relative}
@media(max-width:700px){.documents-modal{padding:24px 0 0}.documents-modal-panel{height:auto;max-height:none;margin-top:auto;border-radius:20px 20px 0 0}}

/* v3.5: precheck prerequisite emphasis */
.compact-head>span{background:var(--orange)}
.precheck-action-guide{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:10px 0 0;padding:15px 16px;border:1px solid #eadbc5;border-radius:12px;background:linear-gradient(135deg,#fffaf3,#fff)}
.precheck-action-guide>div{min-width:0}.precheck-action-guide strong{display:block;margin-bottom:3px;color:#6e522f;font-size:13.5px}.precheck-action-guide p{margin:0;color:#7b7063;font-size:12.5px;line-height:1.55}
.precheck-apply-link{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 15px;border:1px solid #d88422;border-radius:9px;background:#fff;color:#a96113;font-size:13px;font-weight:900;text-decoration:none;white-space:nowrap;transition:background .16s ease,border-color .16s ease,transform .16s ease}
.precheck-apply-link span{font-size:16px;line-height:1}.precheck-apply-link:hover{border-color:#c87518;background:#fff5e7;transform:translateY(-1px)}
.precheck-apply-link:focus-visible{outline:3px solid rgba(216,132,34,.2);outline-offset:2px}
@media(max-width:700px){.precheck-action-guide{align-items:stretch;flex-direction:column;gap:12px;margin-bottom:16px;padding:15px}.precheck-apply-link{width:100%}}
