.jobs-public{padding-top:34px}.job-search-box{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 10px 30px rgba(0,0,0,.035);margin-bottom:34px}.job-search-main{display:grid;grid-template-columns:minmax(220px,2fr) minmax(150px,1fr) minmax(150px,1fr) 92px 108px;gap:10px}.job-search-main input,.job-search-main select,.job-search-detail select{min-height:46px;border:1px solid #ddd;border-radius:12px;background:#fff;padding:0 12px;font-size:14px}.job-search-btn,.job-detail-toggle,.job-search-detail button{border:0;border-radius:12px;font-weight:900;cursor:pointer}.job-search-btn{background:var(--orange);color:#fff}.job-detail-toggle{background:#222;color:#fff}.job-search-detail{display:grid;grid-template-columns:repeat(5,1fr) 110px;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.job-search-detail button{background:#f3f3f3;color:#555}.jobs-section-title,.jobs-list-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.jobs-section-title span{font-size:12px;font-weight:900;color:var(--orange);letter-spacing:.1em}.jobs-section-title h2,.jobs-list-head h2{margin:5px 0 0;font-size:26px;letter-spacing:-.04em}.jobs-section-title small{color:#888}.featured-job-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}.featured-job-card{display:block;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;color:#222;text-decoration:none;box-shadow:0 8px 25px rgba(0,0,0,.03);transition:.18s transform,.18s box-shadow}.featured-job-card:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.07)}.featured-job-card .top{display:flex;justify-content:space-between;align-items:center;gap:10px}.featured-job-card .pick{font-size:11px;font-weight:900;color:var(--orange);background:#fff0e7;padding:6px 9px;border-radius:999px}.featured-job-card .deadline{font-size:12px;font-weight:900;color:#444}.featured-job-card .company{display:block;margin-top:16px;color:#777;font-size:13px}.featured-job-card h3{font-size:19px;margin:6px 0 13px;line-height:1.4}.featured-job-card .meta{display:flex;gap:6px;flex-wrap:wrap;color:#666;font-size:12px}.featured-job-card .meta span{background:#f6f6f6;padding:6px 8px;border-radius:8px}.featured-job-card .salary{margin:15px 0 0;font-weight:900}.all-jobs{margin-top:42px}.jobs-list-head{margin-bottom:12px}.jobs-list-head>div:first-child{display:flex;align-items:baseline;gap:10px}.jobs-list-head span{color:#888;font-size:13px}.job-sort{display:flex;gap:4px;background:#eee;border-radius:10px;padding:3px}.job-sort button{border:0;background:transparent;border-radius:8px;padding:8px 12px;color:#666;font-weight:800;cursor:pointer}.job-sort button.active{background:#fff;color:var(--orange);box-shadow:0 1px 5px rgba(0,0,0,.08)}.job-table{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.job-list-row{display:grid;grid-template-columns:minmax(220px,1.7fr) minmax(140px,1.1fr) 110px 95px 110px 130px 90px;align-items:center;min-height:78px;border-bottom:1px solid var(--line);text-decoration:none;color:#555}.job-list-row:last-child{border-bottom:0}.job-list-row:hover{background:#fffaf6}.job-list-headrow{min-height:48px;background:#f7f7f7;font-size:13px;font-weight:900;color:#555}.job-list-row>div{padding:12px 14px;min-width:0}.job-list-row .title strong{display:block;color:#222;font-size:15px;margin-bottom:4px}.job-list-row .title small{color:#888}.job-list-row .position{font-weight:800;color:#333}.job-list-row .deadline{font-weight:900;color:var(--orange)}.job-pagination{display:flex;justify-content:center;gap:6px;margin-top:20px}.job-pagination button{border:1px solid #ddd;background:#fff;border-radius:9px;padding:8px 11px;cursor:pointer}.job-pagination button.active{background:#222;color:#fff;border-color:#222}.job-loading,.job-empty{grid-column:1/-1;padding:38px;text-align:center;color:#888;background:#fff;border-radius:16px}.external-job-future{margin-top:24px;border:1px dashed #ddd;background:#fff;border-radius:18px;padding:22px;text-align:center}.external-job-future b{font-size:17px}.external-job-future p{margin:8px 0 14px;color:#777;font-size:13px;line-height:1.6}.external-job-future button{border:0;border-radius:11px;padding:11px 16px;background:#eee;color:#999;font-weight:900}.job-detail-shell{max-width:1040px}.job-detail-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 12px 34px rgba(0,0,0,.04)}.job-detail-top{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.job-detail-top .company{color:var(--orange);font-weight:900}.job-detail-top h2{font-size:31px;letter-spacing:-.045em;margin:8px 0}.job-detail-top .posting-no{color:#999;font-size:12px}.job-detail-deadline{min-width:88px;text-align:center;border-radius:15px;background:#fff3eb;color:var(--orange);padding:15px 12px;font-size:18px;font-weight:900}.job-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.job-summary-grid div{background:#fafafa;border:1px solid #eee;border-radius:14px;padding:15px}.job-summary-grid small{display:block;color:#888;margin-bottom:5px}.job-summary-grid b{font-size:14px}.job-detail-section{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.job-detail-section h3{font-size:20px;margin:0 0 15px}.position-detail{border:1px solid #eee;border-radius:17px;padding:20px;margin-top:12px}.position-detail h4{font-size:18px;margin:0 0 14px}.position-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.position-detail-grid div{background:#fafafa;border-radius:10px;padding:11px;font-size:13px}.position-text{margin-top:14px}.position-text b{display:block;font-size:13px;margin-bottom:5px}.position-text p{margin:0;color:#666;line-height:1.7;white-space:pre-line}.job-detail-html{line-height:1.8;color:#555}.job-company-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.job-company-grid div{background:#fafafa;border-radius:12px;padding:14px}.job-detail-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}.job-detail-actions .back{color:#555;font-weight:800}.job-detail-actions .future-actions{display:flex;gap:8px}.job-detail-actions button{border:0;border-radius:11px;padding:11px 16px;font-weight:900}.job-detail-actions .apply{background:#ddd;color:#888}.job-detail-actions .inquiry{background:#f2f2f2;color:#888}.job-detail-note{font-size:12px;color:#999;margin-top:8px;text-align:right}
@media(max-width:900px){.job-search-main{grid-template-columns:1fr 1fr}.job-search-main input{grid-column:1/-1}.job-search-detail{grid-template-columns:1fr 1fr}.featured-job-grid{grid-template-columns:1fr 1fr}.job-table{overflow-x:auto}.job-list-row{min-width:900px}.job-summary-grid,.position-detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.featured-job-grid{grid-template-columns:1fr}.job-search-main,.job-search-detail{grid-template-columns:1fr}.job-search-main input{grid-column:auto}.jobs-section-title,.jobs-list-head,.job-detail-top{align-items:stretch;flex-direction:column}.job-summary-grid,.position-detail-grid,.job-company-grid{grid-template-columns:1fr}.job-detail-card{padding:20px}.job-detail-top h2{font-size:25px}.job-detail-deadline{align-self:flex-start}}

/* STEP 5-0B-1 검색/추천 UX 보완 */
.job-search-main{grid-template-columns:minmax(230px,1.6fr) repeat(4,minmax(135px,.85fr)) 82px 108px;align-items:stretch}
.job-search-main select:disabled,.job-search-detail select:disabled{background:#f5f5f5;color:#aaa;cursor:not-allowed}
.job-search-detail[hidden]{display:none!important}
.job-search-detail{grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px}
.job-search-help{margin:11px 2px 0;color:#888;font-size:12px;line-height:1.55}
.featured-job-grid{background:#1f1f1f;border-radius:22px;padding:18px;min-height:180px}
.featured-job-card{background:#262626;border-color:#3a3a3a;color:#fff;box-shadow:none}
.featured-job-card:hover{background:#2c2c2c;box-shadow:0 14px 34px rgba(0,0,0,.18)}
.featured-job-card .company{color:#bbb}
.featured-job-card h3{color:#fff}
.featured-job-card .meta{color:#ddd}
.featured-job-card .meta span{background:#333;color:#ddd}
.featured-job-card .salary{color:#fff}
.featured-job-card .deadline{color:#fff}
.featured-job-card .pick{background:#4b3023;color:#ff7a21}
.featured-job-grid .dark-empty{background:transparent;color:#aaa}
@media(max-width:1180px){.job-search-main{grid-template-columns:repeat(3,1fr)}.job-search-main input{grid-column:1/-1}.job-search-detail{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.job-search-main,.job-search-detail{grid-template-columns:1fr 1fr}.job-search-main input{grid-column:1/-1}}
@media(max-width:520px){.job-search-main,.job-search-detail{grid-template-columns:1fr}.job-search-main input{grid-column:auto}.featured-job-grid{padding:12px}}

/* STEP 5-0B-2 채용정보 가독성/상세구조 개선 */
.featured-jobs{background:#fff8f3;border:1px solid #f2e1d6;border-radius:24px;padding:24px;margin-top:8px}.featured-job-grid{background:transparent;border-radius:0;padding:0;min-height:0}.featured-job-card{background:#252525;border:1px solid #444}.featured-job-card:hover{background:#2d2d2d;border-color:#666}.job-search-detail #jobResetBtn{min-height:46px;padding:0 18px;background:#fff;border:1px solid #d8d8d8;color:#333;font-size:14px;white-space:nowrap}.job-search-detail #jobResetBtn:hover{background:#f7f7f7}.job-list-row{line-height:1.45}.job-list-row>div{padding:15px 14px}.job-list-row .title strong{font-size:16px;line-height:1.4}.job-list-row .title small{display:block;margin-top:5px}.job-list-row .position{line-height:1.45}.company-intro{background:#fffaf6;border:1px solid #f4e4d8!important;border-radius:18px;padding:22px!important;margin-top:26px!important}.company-intro .section-kicker{font-size:11px;font-weight:900;letter-spacing:.12em;color:var(--orange)}.company-intro h3{margin:5px 0 10px}.company-intro-lead{margin:0 0 14px;color:#555;line-height:1.7}.company-intro-box{background:#fff;border:1px solid #eee;border-radius:12px;padding:14px}.company-intro-box small{display:block;color:#888;margin-bottom:5px}.company-intro-box p{margin:0;line-height:1.7}.company-intro-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.company-intro-meta span{background:#fff;border:1px solid #eee;border-radius:999px;padding:7px 10px;color:#666;font-size:12px}.common-work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.common-work-grid>div{background:#fafafa;border:1px solid #eee;border-radius:12px;padding:14px}.common-work-grid small{display:block;color:#888;margin-bottom:6px}.common-work-grid b{font-size:14px;line-height:1.55;white-space:pre-line}.job-detail-html{overflow-wrap:anywhere}.job-detail-html img{max-width:100%;height:auto}
@media(max-width:900px){.featured-jobs{padding:18px}.common-work-grid{grid-template-columns:1fr}}

/* STEP 5-0B-3 중장년 가독성 / 상세정보 재구성 */
.job-detail-card{font-size:16px;line-height:1.65}.job-detail-section h3{font-size:22px;letter-spacing:-.03em}.job-detail-top h2{font-size:34px}.job-summary-grid{display:none}.company-first{margin-top:28px!important}.job-company-grid small,.position-detail-grid small,.common-work-grid small,.process-grid small{display:block;color:#777;font-size:14px;margin-bottom:6px}.job-company-grid b,.position-detail-grid b,.common-work-grid b,.process-grid b{font-size:16px;line-height:1.55}.company-home{grid-column:1/-1}.positions-section>h3{margin-bottom:18px}.position-detail{border:2px solid #f0e3d9;background:#fffdfb;border-radius:20px;padding:24px;margin-top:18px}.position-detail:nth-of-type(even){background:#fffaf5}.position-detail h4{display:flex;align-items:center;gap:10px;font-size:21px;margin-bottom:18px}.position-detail h4 span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:30px;border-radius:999px;background:#ffefe5;color:var(--orange);font-size:13px;font-weight:900}.position-detail-grid div{background:#fff4ec;border:1px solid #f5dfd0;border-radius:12px;padding:14px 15px}.position-text{margin-top:20px}.position-text b{font-size:16px;margin-bottom:7px;color:#222}.position-text p{font-size:16px;line-height:1.8;color:#555}.common-work{background:#f7f8fa;border:1px solid #e5e7eb!important;border-radius:20px;padding:24px!important}.common-work-grid>div{background:#fff;padding:16px}.process-box{background:#fff7f0;border:1px solid #f1d8c7!important;border-radius:20px;padding:24px!important}.process-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.process-grid>div{background:#fff;border:1px solid #f0dfd4;border-radius:13px;padding:16px}.job-detail-actions .future-actions{align-items:center}.job-detail-actions .active-action{display:inline-flex;align-items:center;justify-content:center;border-radius:11px;padding:12px 19px;background:#222;color:#fff;text-decoration:none;font-weight:900}.job-detail-actions button{font-size:15px;padding:12px 19px}.job-detail-actions .back{font-size:15px}.job-detail-note{font-size:13px;line-height:1.6}.job-search-main input,.job-search-main select,.job-search-detail select,.job-search-btn,.job-detail-toggle,.job-search-detail #jobResetBtn{font-size:15px;min-height:48px}.job-list-row{font-size:15px}.job-list-headrow{font-size:14px}.job-list-row .title strong{font-size:17px}.featured-job-card h3{font-size:20px}
@media(max-width:900px){.process-grid{grid-template-columns:1fr}.job-detail-card{font-size:16px}.job-detail-section h3{font-size:21px}}

/* STEP 2: 기업 마이페이지 저장정보 → 공개 채용상세 자동연동 */
.company-main-business{grid-column:1/-1}
.company-intro-box{margin-top:12px}
.company-intro-box small{font-size:14px;font-weight:700;color:#777}
.company-intro-box p{font-size:16px;line-height:1.8;color:#444;white-space:pre-line;overflow-wrap:anywhere}
@media(max-width:620px){.company-main-business{grid-column:auto}}


/* STEP 5-0B 상세채용정보 확정 디자인 */
.job-detail-shell{max-width:1180px}
.job-detail-final{background:#fff;border:1px solid #e7e7e7;border-radius:24px;padding:32px;box-shadow:0 14px 38px rgba(0,0,0,.045);font-size:17px;line-height:1.72;color:#222}
.detail-titlebar{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:28px;border-bottom:1px solid #e9e9e9}
.detail-breadcrumb{font-size:13px;font-weight:900;color:var(--orange);margin-bottom:8px}
.detail-titlebar h2{font-size:36px;line-height:1.25;letter-spacing:-.045em;margin:0;color:#171717}
.detail-titlebar p{margin:10px 0 0;color:#707070;font-size:15px}
.title-actions{display:flex;gap:9px;align-items:center;flex-shrink:0}
.utility-btn,.apply-main,.sticky-util,.sticky-apply{min-height:52px;border-radius:12px;padding:0 20px;font-size:16px;font-weight:850;cursor:pointer}
.utility-btn{background:#fff;border:1px solid #dadada;color:#333}
.apply-main{border:0;background:var(--orange);color:#fff;min-width:132px}
.apply-main:disabled,.sticky-apply:disabled{opacity:.55;cursor:not-allowed}

.detail-block{margin-top:30px;padding-top:0;border-top:0}
.detail-block>h3{font-size:25px;line-height:1.35;margin:0 0 18px;letter-spacing:-.035em;color:#171717}
.company-block{border:1px solid #e6e6e6;border-radius:18px;padding:24px;background:#fff}
.company-head{display:grid;grid-template-columns:76px 1fr;gap:18px;align-items:center;padding-bottom:20px;border-bottom:1px solid #ececec}
.company-logo-placeholder{width:76px;height:76px;border-radius:16px;background:#fff4ec;color:var(--orange);display:flex;align-items:center;justify-content:center;font-size:31px;font-weight:900;border:1px solid #f3d9c8}
.company-head h4{font-size:23px;margin:0 0 6px}
.company-head p{margin:0;color:#555;white-space:pre-line;line-height:1.75}
.company-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:18px;border:1px solid #e8e8e8;border-radius:14px;overflow:hidden}
.company-facts>div{padding:16px;border-right:1px solid #ececec;border-bottom:1px solid #ececec;min-width:0}
.company-facts>div:nth-child(4n){border-right:0}
.company-facts .wide{grid-column:span 2}
.company-facts small,.process-final-grid small,.work-facts small,.benefit-panel small,.insurance-panel small{display:block;font-size:14px;color:#6d6d6d;margin-bottom:5px}
.company-facts b,.process-final-grid b,.work-facts b{font-size:17px;line-height:1.55;color:#222}

.position-card{border:1px solid #f0dccc;border-radius:18px;background:#fffdfb;overflow:hidden;margin-top:16px}
.position-card h4{display:flex;gap:10px;align-items:center;margin:0;padding:20px 22px 13px;font-size:23px}
.position-card h4 span{display:inline-flex;align-items:center;justify-content:center;width:38px;height:30px;border-radius:99px;background:#ffefe5;color:var(--orange);font-size:13px}
.position-keyline{display:grid;grid-template-columns:repeat(6,1fr);background:#fff3ea;border-top:1px solid #f1dfd2;border-bottom:1px solid #f1dfd2}
.position-keyline>div{padding:15px 12px;border-right:1px solid #efdccc;text-align:center}
.position-keyline>div:last-child{border-right:0}
.position-keyline small{display:block;font-size:13px;color:#777;margin-bottom:3px}
.position-keyline b{font-size:16px;color:#222}
.position-keyline .salary b{color:var(--orange)}
.position-attrs{display:grid;grid-template-columns:repeat(3,1fr)}
.position-attr{padding:18px 20px;min-height:132px;border-right:1px solid #ece7e2;border-bottom:1px solid #ece7e2}
.position-attr:nth-child(3n){border-right:0}
.position-attr strong{font-size:16px;display:block;margin-bottom:8px}
.position-attr p,.position-extra p{margin:0;color:#505050;font-size:16px;line-height:1.75;white-space:pre-line}
.position-extra{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:18px 20px}
.position-extra strong{display:block;margin-bottom:7px}

.html-block{border:1px solid #e6e6e6;border-radius:18px;padding:24px}
.job-html-content{font-size:max(16px,1rem);line-height:1.75;overflow-wrap:anywhere;word-break:break-word;max-width:100%;overflow:hidden}
.job-html-content img,.job-html-content video,.job-html-content iframe{max-width:100%!important;height:auto!important}
.job-html-content table{width:100%!important;max-width:100%;border-collapse:collapse}
.job-html-content *{max-width:100%}

.work-benefits{border:1px solid #e1e4e8;border-radius:18px;padding:24px;background:#f8f9fa}
.work-layout{display:grid;grid-template-columns:1.55fr .9fr .9fr;gap:14px}
.work-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.work-facts>div,.benefit-panel,.insurance-panel{background:#fff;border:1px solid #e6e6e6;border-radius:13px;padding:15px}
.benefit-panel{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:flex-start}
.benefit-icon{width:42px;height:42px;border-radius:12px;background:#fff0e6;color:var(--orange);display:flex;align-items:center;justify-content:center;font-size:20px}
.benefit-panel p,.insurance-panel p{margin:2px 0 0;color:#444;line-height:1.7}
.insurance-panel p{display:flex;flex-direction:column;gap:4px}

.process-block{border:1px solid #f0d8c7;border-radius:18px;padding:24px;background:#fff8f2}
.process-final-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.process-final-grid>div{background:#fff;border:1px solid #eddccd;border-radius:13px;padding:16px}

.inquiry-block{border:1px solid #dfe7e2;border-radius:18px;padding:24px;background:#f7fbf8}
.inquiry-card{display:flex;justify-content:space-between;gap:28px;align-items:center}
.inquiry-person{display:flex;gap:13px;align-items:center}
.person-mark{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#657b6e;border:1px solid #dde8e1;font-size:0}
.person-mark:after{content:'👤';font-size:24px}
.inquiry-person small,.inquiry-contact small{display:block;color:#6f7e75;font-size:14px;margin-bottom:4px}
.inquiry-person b,.inquiry-contact b{font-size:17px}
.inquiry-person p{margin:3px 0 0;color:#68766e}
.inquiry-contact{display:flex;gap:28px}

.detail-bottom{margin-top:28px;padding-top:20px;border-top:1px solid #e9e9e9}
.detail-bottom a{font-size:16px;font-weight:800;color:#444}

.apply-sticky{position:fixed;left:0;right:0;bottom:0;z-index:900;background:rgba(255,255,255,.96);border-top:1px solid #ddd;box-shadow:0 -8px 24px rgba(0,0,0,.06);backdrop-filter:blur(8px)}
.sticky-inner{max-width:1180px;margin:0 auto;padding:10px 20px;display:flex;justify-content:flex-end;gap:9px}
.sticky-util{background:#fff;border:1px solid #d8d8d8;color:#333;min-width:108px}
.sticky-apply{border:0;background:var(--orange);color:#fff;min-width:210px}
body{padding-bottom:82px}
.site-header{z-index:1000}

@media(max-width:1050px){
  .company-facts{grid-template-columns:repeat(2,1fr)}
  .company-facts>div:nth-child(4n){border-right:1px solid #ececec}
  .company-facts>div:nth-child(2n){border-right:0}
  .position-keyline{grid-template-columns:repeat(3,1fr)}
  .position-keyline>div:nth-child(3n){border-right:0}
  .position-attrs{grid-template-columns:repeat(2,1fr)}
  .position-attr:nth-child(3n){border-right:1px solid #ece7e2}
  .position-attr:nth-child(2n){border-right:0}
  .work-layout{grid-template-columns:1fr 1fr}
  .work-facts{grid-column:1/-1}
}
@media(max-width:767px){
  .job-detail-final{padding:20px;border-radius:18px;font-size:16px}
  .detail-titlebar{flex-direction:column}
  .detail-titlebar h2{font-size:29px}
  .title-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .apply-main{grid-column:1/-1}
  .company-head{grid-template-columns:58px 1fr}
  .company-logo-placeholder{width:58px;height:58px}
  .company-facts{grid-template-columns:1fr}
  .company-facts .wide{grid-column:auto}
  .company-facts>div{border-right:0}
  .position-keyline{grid-template-columns:repeat(2,1fr)}
  .position-keyline>div:nth-child(3n){border-right:1px solid #efdccc}
  .position-keyline>div:nth-child(2n){border-right:0}
  .position-attrs{grid-template-columns:1fr}
  .position-attr,.position-attr:nth-child(2n),.position-attr:nth-child(3n){border-right:0;min-height:0}
  .position-extra,.process-final-grid,.work-facts,.work-layout{grid-template-columns:1fr}
  .work-facts{grid-column:auto}
  .inquiry-card,.inquiry-contact{flex-direction:column;align-items:flex-start}
  .sticky-inner{display:grid;grid-template-columns:1fr 1fr}
  .sticky-apply{grid-column:1/-1;min-width:0}
  body{padding-bottom:150px}
}

/* =========================================================
   STEP 5-0C PREMIUM DETAIL UI
   - 최종 확정 시안 기준
   - 중장년층 가독성 + 프리미엄 채용 브랜딩
   - API/DB/승인/지원 로직 변경 없음
   ========================================================= */
:root{
  --detail-ink:#1f2328;
  --detail-muted:#667085;
  --detail-line:#e6e8eb;
  --detail-soft:#f7f8fa;
  --detail-orange:#ef6c24;
  --detail-orange-soft:#fff4ec;
  --detail-green-soft:#f5faf7;
}
.job-detail-shell{max-width:1200px;margin:0 auto;padding:26px 20px 72px}
.job-detail-final{
  border:0;
  border-radius:0;
  box-shadow:none;
  padding:0;
  background:#fff;
  color:var(--detail-ink);
  font-size:18px;
  line-height:1.78;
  letter-spacing:-.012em;
}
.detail-titlebar{
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:34px;
  padding:34px 2px 32px;
  border-bottom:2px solid #222;
}
.detail-breadcrumb{
  margin-bottom:10px;
  color:var(--detail-orange);
  font-size:15px;
  font-weight:900;
  letter-spacing:-.02em;
}
.detail-titlebar h2{
  max-width:760px;
  margin:0;
  color:#17191c;
  font-size:38px;
  line-height:1.28;
  font-weight:900;
  letter-spacing:-.045em;
}
.posting-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}
.meta-chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 11px;
  border:1px solid #e2e4e7;
  border-radius:9px;
  background:#fff;
  color:#5f6670;
  font-size:14px;
  font-weight:700;
}
.title-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}
.utility-btn,.apply-main{
  min-height:54px;
  border-radius:11px;
  font-size:16px;
  font-weight:850;
}
.utility-btn{padding:0 17px;border:1px solid #d9dde2;background:#fff;color:#34383e}
.utility-btn:hover{background:#f7f8fa}
.apply-main{min-width:142px;padding:0 24px;background:var(--detail-orange);color:#fff}

.detail-block{margin-top:44px}
.detail-block>h3{
  position:relative;
  margin:0 0 20px;
  padding-left:14px;
  color:#191b1f;
  font-size:27px;
  line-height:1.35;
  font-weight:900;
  letter-spacing:-.04em;
}
.detail-block>h3:before{
  content:"";
  position:absolute;
  left:0;top:5px;bottom:5px;
  width:4px;
  border-radius:8px;
  background:var(--detail-orange);
}

/* 기업정보: 시안처럼 로고/회사명 + 핵심정보 가로형 */
.company-block{
  padding:0;
  border:1px solid var(--detail-line);
  border-radius:18px;
  overflow:hidden;
  background:#fff;
}
.company-block>h3{margin:0;padding:22px 24px 18px 38px;border-bottom:1px solid #eceef0}
.company-block>h3:before{left:24px;top:27px;bottom:23px}
.company-head{
  display:grid;
  grid-template-columns:88px 1fr;
  gap:22px;
  align-items:center;
  padding:26px 28px 22px;
  border-bottom:0;
}
.company-logo-placeholder{
  width:88px;height:88px;
  border:1px solid #f1d8c9;
  border-radius:18px;
  background:linear-gradient(145deg,#fff9f5,#fff0e5);
  color:var(--detail-orange);
  font-size:36px;font-weight:900;
}
.company-head h4{margin:0 0 6px;font-size:27px;line-height:1.3;font-weight:900}
.company-head p{max-width:850px;margin:0;color:#59616b;font-size:16px;line-height:1.72}
.company-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin:0 28px 28px;
  border:1px solid #e6e8eb;
  border-radius:14px;
  overflow:hidden;
  background:#fafafa;
}
.company-facts>div{
  min-height:90px;
  padding:17px 18px;
  border-right:1px solid #e7e9ec;
  border-bottom:1px solid #e7e9ec;
  background:#fff;
}
.company-facts small{font-size:14px;font-weight:750;color:#7a8088}
.company-facts b{font-size:17px;font-weight:850;color:#24272b}

/* 모집직종: 제목 아래 핵심 조건은 한 줄의 강조 바, 상세는 3열 */
.positions-block>h3{margin-bottom:14px}
.position-card{
  margin-top:18px;
  border:1px solid #eadfd7;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 7px 24px rgba(31,35,40,.035);
}
.position-card h4{
  padding:20px 24px 16px;
  gap:11px;
  font-size:25px;
  font-weight:900;
}
.position-card h4 span{
  width:42px;height:32px;
  background:#fff0e6;
  color:var(--detail-orange);
  font-size:13px;
  font-weight:900;
}
.position-keyline{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  background:#fff4ec;
  border-top:1px solid #f0ddd0;
  border-bottom:1px solid #f0ddd0;
}
.position-keyline>div{
  min-height:80px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:12px 10px;
  border-right:1px solid #ecd8ca;
}
.position-keyline small{margin-bottom:4px;color:#756d68;font-size:14px;font-weight:750}
.position-keyline b{font-size:17px;font-weight:900;color:#252525}
.position-keyline .salary b{color:var(--detail-orange)}
.position-attrs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.position-attr{
  min-height:148px;
  padding:22px 23px;
  border-right:1px solid #ece8e5;
  border-bottom:1px solid #ece8e5;
}
.position-attr strong{
  display:block;
  margin-bottom:9px;
  color:#25272b;
  font-size:17px;
  font-weight:900;
}
.position-attr p,.position-extra p{
  margin:0;
  color:#4f5660;
  font-size:17px;
  line-height:1.78;
}
.position-extra{padding:20px 23px}

/* 기업 작성 HTML: 브랜딩 영역이지만 전체 레이아웃을 절대 깨지 않음 */
.html-block{
  padding:26px 28px 30px;
  border:1px solid var(--detail-line);
  border-radius:18px;
  background:#fff;
}
.job-html-content{
  max-width:100%;
  min-width:0;
  overflow:hidden;
  color:#333941;
  font-size:17px!important;
  line-height:1.82!important;
  word-break:keep-all;
  overflow-wrap:anywhere;
}
.job-html-content p,.job-html-content li,.job-html-content td,.job-html-content th{
  font-size:max(17px,1em)!important;
  line-height:1.82!important;
}
.job-html-content h1{font-size:30px!important}
.job-html-content h2{font-size:26px!important}
.job-html-content h3{font-size:22px!important}
.job-html-content img,.job-html-content video,.job-html-content iframe{
  display:block;
  max-width:100%!important;
  height:auto!important;
}
.job-html-content table{display:block;width:100%!important;max-width:100%!important;overflow-x:auto}

/* 근로조건: 시안의 3영역 카드 */
.work-benefits{
  padding:26px 28px 28px;
  border:1px solid #e3e5e8;
  border-radius:18px;
  background:#f7f8f9;
}
.work-layout{display:grid;grid-template-columns:1.55fr .85fr .85fr;gap:14px}
.work-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.work-facts>div,.benefit-panel,.insurance-panel{
  padding:17px;
  border:1px solid #e2e5e8;
  border-radius:13px;
  background:#fff;
}
.work-facts small,.benefit-panel small,.insurance-panel small{font-size:14px;font-weight:800;color:#727982}
.work-facts b{font-size:17px;font-weight:850}
.benefit-icon{
  width:46px;height:46px;
  border-radius:13px;
  background:#fff0e6;
  color:var(--detail-orange);
}
.benefit-panel p,.insurance-panel p{font-size:16px;line-height:1.72}

/* 채용절차: 큰 글씨와 카드형으로 빠르게 읽기 */
.process-block{
  padding:26px 28px 28px;
  border:1px solid #f0d9c9;
  border-radius:18px;
  background:#fff9f4;
}
.process-final-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.process-final-grid>div{
  min-height:92px;
  padding:18px 19px;
  border:1px solid #ecdccc;
  border-radius:13px;
  background:#fff;
}
.process-final-grid small{font-size:14px;font-weight:800}
.process-final-grid b{font-size:17px;font-weight:850}

/* 지원문의 */
.inquiry-block{
  padding:26px 28px;
  border:1px solid #dfe8e2;
  border-radius:18px;
  background:var(--detail-green-soft);
}
.inquiry-card{gap:30px}
.inquiry-person b,.inquiry-contact b{font-size:18px;font-weight:900}

/* Sticky: 상단 nav보다 낮게, 콘텐츠를 가리지 않도록 body 여백 확보 */
.apply-sticky{
  z-index:900;
  border-top:1px solid #dfe2e5;
  background:rgba(255,255,255,.97);
  box-shadow:0 -8px 28px rgba(0,0,0,.07);
}
.site-header{z-index:1000}
.sticky-inner{max-width:1200px;padding:11px 20px}
.sticky-util,.sticky-apply{min-height:54px;font-size:16px;font-weight:900}
.sticky-apply{min-width:230px;background:var(--detail-orange)}
body{padding-bottom:86px}

/* 키보드 접근성 */
.utility-btn:focus-visible,.apply-main:focus-visible,.sticky-util:focus-visible,.sticky-apply:focus-visible,
.detail-bottom a:focus-visible{
  outline:3px solid rgba(239,108,36,.35);
  outline-offset:3px;
}

/* Tablet: 3열 → 2열 */
@media(max-width:1024px){
  .detail-titlebar{align-items:flex-start;flex-direction:column}
  .company-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .position-keyline{grid-template-columns:repeat(3,minmax(0,1fr))}
  .position-attrs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .position-attr:nth-child(3n){border-right:1px solid #ece8e5}
  .position-attr:nth-child(2n){border-right:0}
  .work-layout{grid-template-columns:repeat(2,minmax(0,1fr))}
  .work-facts{grid-column:1/-1}
}

/* Mobile: 모두 1열, CTA 크게 */
@media(max-width:720px){
  .job-detail-shell{padding:14px 12px 48px}
  .job-detail-final{font-size:17px}
  .detail-titlebar{padding:24px 2px 25px}
  .detail-titlebar h2{font-size:30px;line-height:1.32}
  .title-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .apply-main{grid-column:1/-1}
  .detail-block{margin-top:32px}
  .detail-block>h3{font-size:24px}
  .company-head{grid-template-columns:68px 1fr;padding:22px 18px}
  .company-logo-placeholder{width:68px;height:68px;font-size:29px}
  .company-head h4{font-size:23px}
  .company-facts{grid-template-columns:1fr;margin:0 18px 20px}
  .company-facts .wide{grid-column:auto}
  .company-facts>div{min-height:0;border-right:0}
  .position-card h4{font-size:22px}
  .position-keyline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .position-attrs{grid-template-columns:1fr}
  .position-attr,.position-attr:nth-child(2n),.position-attr:nth-child(3n){min-height:0;border-right:0}
  .position-extra,.process-final-grid,.work-layout,.work-facts{grid-template-columns:1fr}
  .work-facts{grid-column:auto}
  .html-block,.work-benefits,.process-block,.inquiry-block{padding:21px 18px}
  .inquiry-card,.inquiry-contact{flex-direction:column;align-items:flex-start}
  .sticky-inner{display:grid;grid-template-columns:1fr 1fr}
  .sticky-apply{grid-column:1/-1;min-width:0}
  body{padding-bottom:154px}
}

/* =========================================================
   STEP 5-0D APPROVED REFERENCE MATCH
   승인 시안의 레이아웃/밀도/아이콘/정보위계를 최대한 재현
   ========================================================= */
.job-detail-shell{max-width:1120px;margin:0 auto;padding:26px 18px 72px}
.reference-detail{font-family:inherit;color:#17191c;font-size:17px;line-height:1.68}
.reference-top{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;padding:28px 14px 24px;border-bottom:1px solid #dfe1e4}
.top-kicker{font-size:14px;font-weight:900;color:#ef6c24;margin-bottom:8px}
.title-row{display:flex;align-items:center;gap:14px}
.title-row h2{margin:0;font-size:36px;line-height:1.25;letter-spacing:-.045em;font-weight:900}
.dday{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:34px;padding:0 12px;border:2px solid #ef6c24;border-radius:999px;color:#ef6c24;font-weight:900;font-size:15px}
.top-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:12px;color:#575d66;font-size:14px;font-weight:700}
.reference-actions{display:flex;gap:8px}
.ref-util,.ref-apply{height:52px;border-radius:10px;padding:0 18px;font-size:16px;font-weight:850}
.ref-util{border:1px solid #d9dde2;background:#fff;color:#25282d}
.ref-apply{border:0;background:#ef6c24;color:#fff;min-width:132px}
.ref-apply:disabled,.sticky-apply:disabled{opacity:.58}

.reference-section{margin-top:28px}
.reference-section>h3{margin:0 0 12px;font-size:23px;font-weight:900;letter-spacing:-.035em}
.company-reference{border:1px solid #dedfe2;border-radius:14px;padding:14px 16px 16px}
.company-reference>h3{margin-bottom:10px}
.company-reference-main{display:grid;grid-template-columns:86px 1fr;gap:16px;align-items:center;padding:9px 0 12px}
.company-logo-ref{width:82px;height:82px;border:1px solid #e9ded6;border-radius:10px;background:#fff5ee;color:#ef6c24;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:900}
.company-title-ref>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.company-title-ref h4{margin:0;font-size:25px;font-weight:900}
.company-title-ref span{padding:3px 8px;border:1px solid #5c98ea;border-radius:999px;color:#397bd6;font-size:12px;font-weight:900}
.company-title-ref p{margin:4px 0 0;color:#5f6670;font-size:15px}
.company-reference-facts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid #e4e6e9;border-radius:10px;overflow:hidden}
.company-fact{display:flex;align-items:center;gap:9px;min-height:72px;padding:11px 12px;border-right:1px solid #e8eaed;background:#fff}
.company-fact:last-child{border-right:0}
.company-fact small{display:block;font-size:12px;color:#777d85;margin-bottom:2px}
.company-fact b{display:block;font-size:15px;line-height:1.4}
.company-intro-ref{margin-top:12px;padding:12px 4px 3px}
.company-intro-ref strong{font-size:15px}
.company-intro-ref p{margin:5px 0 0;color:#4f5660;font-size:15px;line-height:1.68;white-space:pre-line}
.line-icon{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;color:#343a42;flex:0 0 26px}
.line-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

.approved-position-card{border:1px solid #efded1;border-radius:14px;overflow:hidden;background:#fff;margin-top:12px}
.position-heading{display:flex;align-items:center;gap:9px;padding:11px 14px 9px;background:#fffaf6}
.position-heading>span{color:#ef6c24;font-weight:900;font-size:18px}
.position-heading h4{margin:0;font-size:21px;font-weight:900}
.approved-keyline{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:#fff5ee;border-top:1px solid #efded1;border-bottom:1px solid #efded1}
.position-key-item{min-height:64px;padding:8px 8px;display:flex;align-items:center;justify-content:center;gap:7px;border-right:1px solid #efded1}
.position-key-item:last-child{border-right:0}
.position-key-item small{display:block;font-size:12px;color:#756f6b}
.position-key-item b{font-size:14px;line-height:1.35;font-weight:900}
.position-key-item.accent b{color:#ef6c24}
.position-key-item .line-icon{width:23px;height:23px;flex-basis:23px}
.position-key-item .line-icon svg{width:21px;height:21px}
.approved-position-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.position-detail-cell{padding:12px 14px;min-height:118px;border-right:1px solid #e7e8ea;border-bottom:1px solid #e7e8ea}
.position-detail-cell:nth-child(3n){border-right:0}
.position-detail-cell strong{display:block;margin-bottom:6px;font-size:15px;font-weight:900}
.position-detail-cell ul{margin:0;padding-left:18px}
.position-detail-cell li{margin:3px 0;color:#424850;font-size:14px;line-height:1.55}
.position-detail-cell p{font-size:14px;color:#60666e}

.html-reference{border:1px solid #e2e4e7;border-radius:14px;padding:16px}
.job-html-content{font-size:16px!important;line-height:1.72!important;max-width:100%;overflow:hidden;overflow-wrap:anywhere}
.job-html-content p,.job-html-content li,.job-html-content td,.job-html-content th{font-size:max(16px,1em)!important;line-height:1.72!important}
.job-html-content img,.job-html-content video,.job-html-content iframe{max-width:100%!important;height:auto!important}
.job-html-content table{display:block;width:100%!important;max-width:100%!important;overflow-x:auto;border-collapse:collapse}

.reference-work-grid{display:grid;grid-template-columns:1.45fr .9fr .75fr;border:1px solid #e0e2e5;border-radius:12px;overflow:hidden}
.reference-work-list{display:grid;grid-template-columns:1fr 1fr;padding:12px 14px;gap:9px 14px;border-right:1px solid #e0e2e5}
.reference-work-list>div{display:grid;grid-template-columns:26px 76px 1fr;align-items:center;gap:6px;min-width:0}
.reference-work-list span{font-size:13px;color:#6b7179}
.reference-work-list b{font-size:14px;line-height:1.4}
.reference-benefits,.reference-insurance{padding:14px}
.reference-benefits{border-right:1px solid #e0e2e5}
.benefit-title{display:flex;align-items:center;gap:7px;margin-bottom:9px}
.benefit-title b{font-size:15px}
.benefit-tags{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.benefit-tags span{display:flex;align-items:center;min-height:29px;padding:4px 7px;border:1px solid #e5e7e9;border-radius:8px;background:#fff;font-size:12px}
.insurance-list{display:flex;flex-direction:column;gap:6px;font-size:13px}

.process-reference-grid{display:grid;grid-template-columns:1.3fr .9fr .85fr;border:1px solid #e1e3e6;border-radius:12px;overflow:hidden}
.process-flow{display:flex;align-items:center;justify-content:center;gap:7px;padding:16px 12px;border-right:1px solid #e1e3e6}
.process-step{min-width:70px;text-align:center}
.process-step span{display:flex;width:36px;height:36px;border:1px solid #d9dde1;border-radius:50%;align-items:center;justify-content:center;margin:0 auto 6px;font-size:13px;font-weight:900;background:#fff}
.process-step b{font-size:13px}
.process-flow i{font-style:normal;color:#858b93}
.document-box,.date-box{padding:15px;border-right:1px solid #e1e3e6}
.document-box p{margin:6px 0 0;font-size:13px;line-height:1.6;white-space:pre-line}
.date-box{border-right:0}
.date-box>div+div{margin-top:10px}
.date-box small{display:block;color:#737982;font-size:12px;margin-bottom:2px}
.date-box b{font-size:13px}

.reference-inquiry{display:grid;grid-template-columns:1.15fr .8fr 1fr;gap:18px;align-items:center;padding:13px 15px;border:1px solid #e1e4e7;border-radius:12px}
.inquiry-person{display:flex;align-items:center;gap:9px}
.inquiry-person small,.reference-inquiry>div>small{display:block;font-size:12px;color:#737982}
.inquiry-person b,.reference-inquiry>div>b{font-size:14px}
.inquiry-person span{display:block;margin-top:1px;font-size:12px;color:#727880}

.reference-list-link{padding:22px 0 4px}
.reference-list-link a{font-weight:800;color:#3f444b}
.reference-sticky{position:fixed;left:0;right:0;bottom:0;z-index:900;background:rgba(255,255,255,.98);border-top:1px solid #d8dce0;box-shadow:0 -5px 18px rgba(0,0,0,.05)}
.reference-sticky-inner{max-width:1120px;margin:0 auto;display:flex;justify-content:flex-end;gap:7px;padding:8px 18px}
.sticky-util,.sticky-apply{height:48px;border-radius:9px;font-size:15px;font-weight:900}
.sticky-util{min-width:102px;border:1px solid #d9dde1;background:#fff}
.sticky-apply{min-width:220px;border:0;background:#ef6c24;color:#fff}
body{padding-bottom:72px}
.site-header{z-index:1000}

@media(max-width:1024px){
  .reference-top{align-items:flex-start;flex-direction:column}
  .company-reference-facts{grid-template-columns:repeat(3,1fr)}
  .approved-keyline{grid-template-columns:repeat(3,1fr)}
  .approved-position-grid{grid-template-columns:repeat(2,1fr)}
  .position-detail-cell:nth-child(3n){border-right:1px solid #e7e8ea}
  .position-detail-cell:nth-child(2n){border-right:0}
  .reference-work-grid{grid-template-columns:1fr 1fr}
  .reference-work-list{grid-column:1/-1;border-right:0;border-bottom:1px solid #e0e2e5}
  .process-reference-grid{grid-template-columns:1fr 1fr}
  .process-flow{grid-column:1/-1;border-right:0;border-bottom:1px solid #e1e3e6}
}
@media(max-width:720px){
  .job-detail-shell{padding:12px 10px 48px}
  .reference-detail{font-size:16px}
  .reference-top{padding:20px 4px}
  .title-row{align-items:flex-start;flex-direction:column;gap:8px}
  .title-row h2{font-size:29px}
  .reference-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .ref-apply{grid-column:1/-1}
  .company-reference-main{grid-template-columns:64px 1fr}
  .company-logo-ref{width:62px;height:62px;font-size:26px}
  .company-reference-facts{grid-template-columns:1fr 1fr}
  .approved-keyline{grid-template-columns:1fr 1fr}
  .approved-position-grid{grid-template-columns:1fr}
  .position-detail-cell,.position-detail-cell:nth-child(2n),.position-detail-cell:nth-child(3n){min-height:0;border-right:0}
  .reference-work-grid,.process-reference-grid{grid-template-columns:1fr}
  .reference-work-list{grid-column:auto;grid-template-columns:1fr;border-bottom:1px solid #e0e2e5}
  .reference-benefits{border-right:0;border-bottom:1px solid #e0e2e5}
  .process-flow{grid-column:auto;overflow-x:auto;justify-content:flex-start}
  .document-box{border-right:0;border-bottom:1px solid #e1e3e6}
  .reference-inquiry{grid-template-columns:1fr}
  .reference-sticky-inner{display:grid;grid-template-columns:1fr 1fr}
  .sticky-apply{grid-column:1/-1;min-width:0}
  body{padding-bottom:140px}
}

/* =========================================================
   STEP 5-0E FINAL REFERENCE UI
   2026-08-19 확정 시안 + 사용자 수정요청 7개 항목 반영
   ========================================================= */
.job-detail-shell{max-width:1180px!important;margin:0 auto!important;padding:26px 20px 86px!important}
.ej-job-detail{color:#202328;font-size:17px;line-height:1.7}
.ej-icon{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;flex:0 0 24px;color:#39404a}
.ej-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* 1. 상단 타이틀 */
.ej-job-header{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;padding:26px 10px 24px;border-bottom:1px solid #dcdfe3}
.job-breadcrumb{font-size:13px;font-weight:900;color:#ef6c24;margin-bottom:8px}
.job-title-line{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.job-title-line h2{margin:0;font-size:36px;line-height:1.22;letter-spacing:-.045em;font-weight:900}
.job-dday{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 12px;border:2px solid #ef6c24;border-radius:999px;color:#ef6c24;font-weight:900;font-size:14px}
.job-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:11px;color:#555d67;font-size:14px;font-weight:700}
.job-header-actions{display:flex;gap:8px;align-items:stretch}
.header-btn,.header-apply{min-height:54px;border-radius:10px;font-size:15px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:7px}
.header-btn{padding:0 16px;border:1px solid #d9dde2;background:#fff;color:#2d3136}
.header-apply{min-width:148px;padding:0 20px;border:0;background:#ef6c24;color:#fff;flex-direction:column;line-height:1.15}
.header-apply span{font-size:11px;font-weight:800}
.header-apply:disabled,.sticky-apply:disabled{opacity:.62}

/* 공통 섹션 */
.ej-section{margin-top:28px}
.ej-section>h3{margin:0 0 12px;font-size:23px;font-weight:900;letter-spacing:-.035em}
.ej-section>h3 small{font-size:13px;color:#767d86;font-weight:700}

/* 2. 기업정보 */
.company-section{border:1px solid #dde1e5;border-radius:14px;padding:15px 17px 16px;background:#fff}
.company-head-row{display:grid;grid-template-columns:86px 1fr;gap:16px;align-items:center;padding:6px 0 12px}
.company-logo-box{width:82px;height:82px;border:1px solid #eadfd8;border-radius:10px;background:#fff4ec;color:#ef6c24;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:900}
.company-name-box>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.company-name-box h4{margin:0;font-size:25px;font-weight:900}
.company-name-box p{margin:4px 0 0;color:#626a74;font-size:14px}
.company-tag{display:inline-flex;height:26px;align-items:center;padding:0 9px;border:1px solid #6a9fe8;border-radius:999px;color:#3979d0;background:#f7fbff;font-size:12px;font-weight:900}
.company-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #e2e5e8;border-radius:10px;overflow:hidden}
.company-info-item{display:flex;align-items:center;gap:10px;min-height:70px;padding:10px 13px;border-right:1px solid #e7e9ec;border-bottom:1px solid #e7e9ec;background:#fff}
.company-info-item:nth-child(3n){border-right:0}
.company-info-item:nth-child(n+4){border-bottom:0}
.company-info-item small{display:block;color:#777e87;font-size:12px;margin-bottom:2px}
.company-info-item b{font-size:14px;line-height:1.4}
.company-intro-clip{max-height:72px;overflow:hidden;margin-top:12px;padding:10px 3px 0;transition:max-height .25s ease}
.company-intro-clip.expanded{max-height:600px}
.company-intro-clip strong{font-size:14px}
.company-intro-clip p{margin:5px 0 0;color:#4d545d;font-size:14px;line-height:1.65;white-space:pre-line}
.company-more-row{display:flex;justify-content:flex-end;margin-top:7px}
.company-more-row button{height:34px;padding:0 12px;border:1px solid #d9dde1;border-radius:8px;background:#fff;font-size:13px;font-weight:850;cursor:pointer}

/* 3. 모집직종 */
.job-position-card{margin-top:12px;border:1px solid #efdccf;border-radius:14px;overflow:hidden;background:#fff}
.job-position-title{display:flex;align-items:center;gap:9px;padding:10px 14px;background:#fffaf6}
.job-position-title span{color:#ef6c24;font-size:18px;font-weight:900}
.job-position-title h4{margin:0;font-size:21px;font-weight:900}
.job-position-keybar{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:#fff3e9;border-top:1px solid #efddcf;border-bottom:1px solid #efddcf}
.job-key{min-height:66px;padding:8px;display:flex;align-items:center;justify-content:center;gap:7px;border-right:1px solid #ead8cb}
.job-key:last-child{border-right:0}
.job-key small{display:block;font-size:11px;color:#786f69}
.job-key b{display:block;font-size:14px;line-height:1.35;font-weight:900}
.job-key.is-accent b{color:#ef6c24}
.job-position-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.job-detail-cell{min-height:116px;padding:12px 14px;border-right:1px solid #e6e8eb;border-bottom:1px solid #e6e8eb}
.job-detail-cell:nth-child(3n){border-right:0}
.job-detail-cell strong{display:block;margin-bottom:6px;font-size:15px;font-weight:900}
.job-detail-cell ul{margin:0;padding-left:18px}
.job-detail-cell li{margin:2px 0;color:#424850;font-size:14px;line-height:1.55}
.job-detail-cell p{font-size:14px;color:#626872}

/* 4. 상세 채용정보 */
.html-editor-section{border:1px solid #e0e3e6;border-radius:14px;padding:15px}
.html-editor-layout{display:grid;grid-template-columns:1.35fr .9fr;gap:14px}
.job-html-content{min-width:0;max-width:100%;overflow:hidden;font-size:16px!important;line-height:1.7!important;overflow-wrap:anywhere;word-break:break-word}
.job-html-content p,.job-html-content li,.job-html-content td,.job-html-content th{font-size:max(16px,1em)!important;line-height:1.7!important}
.job-html-content img,.job-html-content video,.job-html-content iframe{max-width:100%!important;height:auto!important}
.job-html-content table{display:block;width:100%!important;max-width:100%!important;overflow-x:auto;border-collapse:collapse}
.company-promo-card{display:grid;grid-template-rows:minmax(120px,1fr) auto;border:1px solid #e3e5e8;border-radius:12px;overflow:hidden;background:#fff}
.promo-visual{min-height:140px;background:linear-gradient(135deg,#e8eee9 0%,#f6f4ec 48%,#e7edf1 100%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.promo-visual:before,.promo-visual:after{content:"";position:absolute;border-radius:50%;background:rgba(43,102,83,.14)}
.promo-visual:before{width:180px;height:180px;left:-50px;bottom:-80px}
.promo-visual:after{width:130px;height:130px;right:-25px;top:-45px}
.promo-visual span{position:relative;z-index:1;font-size:30px;font-weight:900;color:#245e4d;letter-spacing:-.05em}
.promo-copy{padding:16px}
.promo-copy h4{margin:0 0 6px;font-size:20px;line-height:1.35}
.promo-copy p{margin:0 0 10px;color:#5f6670;font-size:13px}
.promo-copy span{display:inline-flex;color:#ef6c24;font-size:13px;font-weight:900}

/* 5. 근로조건 / 복리후생 / 보험 */
.work-benefit-layout{display:grid;grid-template-columns:1.35fr .95fr .7fr;border:1px solid #dfe2e5;border-radius:12px;overflow:hidden}
.work-condition-list{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;padding:13px 14px;border-right:1px solid #dfe2e5}
.work-condition-list>div{display:grid;grid-template-columns:24px 74px 1fr;gap:6px;align-items:center;min-width:0}
.work-condition-list span{color:#6c737c;font-size:12px}
.work-condition-list b{font-size:13px;line-height:1.4}
.benefit-column,.insurance-column{padding:14px}
.benefit-column{border-right:1px solid #dfe2e5}
.mini-title{display:flex;align-items:center;gap:7px;margin-bottom:9px}
.mini-title b{font-size:14px}
.benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.benefit-grid span{min-height:29px;padding:4px 7px;border:1px solid #e5e7e9;border-radius:8px;background:#fff;font-size:12px;display:flex;align-items:center}
.insurance-checks{display:flex;flex-direction:column;gap:6px;font-size:13px}

/* 채용절차 */
.process-layout{display:grid;grid-template-columns:1.25fr .95fr .85fr;border:1px solid #dfe2e5;border-radius:12px;overflow:hidden}
.process-flow{display:flex;align-items:center;justify-content:center;gap:6px;padding:14px 10px;border-right:1px solid #dfe2e5}
.process-stage{text-align:center;min-width:68px}
.process-stage span{display:flex;width:38px;height:38px;margin:0 auto 6px;border:1px solid #d9dde1;border-radius:50%;align-items:center;justify-content:center;font-size:13px;font-weight:900;background:#fff}
.process-stage b{font-size:12px}
.process-flow i{font-style:normal;color:#858b93}
.process-docs,.process-dates{padding:14px}
.process-docs{border-right:1px solid #dfe2e5}
.process-docs p{margin:5px 0 0;font-size:13px;line-height:1.55;white-space:pre-line}
.process-dates>div+div{margin-top:9px}
.process-dates small{display:block;color:#777e87;font-size:11px;margin-bottom:2px}
.process-dates b{font-size:12px}

/* 지원문의 */
.inquiry-layout{display:grid;grid-template-columns:1.1fr .75fr 1fr;gap:16px;align-items:center;padding:13px 14px;border:1px solid #e0e3e6;border-radius:12px}
.inquiry-person{display:flex;align-items:center;gap:9px}
.inquiry-layout small{display:block;color:#767d86;font-size:11px}
.inquiry-layout b{font-size:13px}
.inquiry-person span{display:block;color:#737a83;font-size:11px;margin-top:1px}
.job-list-bottom{padding:20px 0 2px}
.job-list-bottom a{color:#3b4047;font-weight:850}

/* 6. 하단 스티키 */
.ej-sticky-bar{position:fixed;left:0;right:0;bottom:0;z-index:900;background:rgba(255,255,255,.98);border-top:1px solid #d8dce0;box-shadow:0 -6px 20px rgba(0,0,0,.06)}
.ej-sticky-inner{max-width:1180px;height:64px;margin:0 auto;padding:7px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.sticky-deadline{display:flex;align-items:center;gap:12px}
.sticky-deadline strong{display:inline-flex;align-items:center;justify-content:center;min-width:68px;height:42px;border-radius:8px;background:#252b34;color:#fff;font-size:17px}
.sticky-deadline span{font-size:14px;font-weight:800;color:#343941}
.sticky-actions{display:flex;align-items:center;gap:7px}
.sticky-btn,.sticky-apply{height:48px;border-radius:9px;font-size:14px;font-weight:900}
.sticky-btn{min-width:102px;border:1px solid #d9dde1;background:#fff;display:flex;align-items:center;justify-content:center;gap:6px}
.sticky-apply{min-width:230px;border:0;background:#ef6c24;color:#fff}
.site-header{z-index:1000!important}
body{padding-bottom:78px!important}

/* 7. Breakpoints */
@media (max-width:1279px) and (min-width:768px){
  .company-info-grid{grid-template-columns:repeat(3,1fr)}
  .job-position-keybar{grid-template-columns:repeat(3,1fr)}
  .job-position-details{grid-template-columns:repeat(2,1fr)}
  .job-detail-cell:nth-child(3n){border-right:1px solid #e6e8eb}
  .job-detail-cell:nth-child(2n){border-right:0}
  .html-editor-layout{grid-template-columns:1fr}
  .company-promo-card{grid-template-columns:1fr 1fr;grid-template-rows:none}
  .work-benefit-layout{grid-template-columns:1fr 1fr}
  .work-condition-list{grid-column:1/-1;border-right:0;border-bottom:1px solid #dfe2e5}
  .process-layout{grid-template-columns:1fr 1fr}
  .process-flow{grid-column:1/-1;border-right:0;border-bottom:1px solid #dfe2e5}
}
@media (max-width:767px){
  .job-detail-shell{padding:12px 10px 72px!important}
  .ej-job-header{flex-direction:column;align-items:flex-start;padding:20px 2px}
  .job-title-line{align-items:flex-start;flex-direction:column;gap:8px}
  .job-title-line h2{font-size:29px}
  .job-header-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .header-apply{grid-column:1/-1}
  .company-head-row{grid-template-columns:64px 1fr}
  .company-logo-box{width:62px;height:62px;font-size:26px}
  .company-info-grid{grid-template-columns:1fr}
  .company-info-item,.company-info-item:nth-child(3n){border-right:0}
  .company-info-item:nth-child(n+4){border-bottom:1px solid #e7e9ec}
  .company-info-item:last-child{border-bottom:0}
  .job-position-keybar{grid-template-columns:1fr 1fr}
  .job-position-details{grid-template-columns:1fr}
  .job-detail-cell,.job-detail-cell:nth-child(2n),.job-detail-cell:nth-child(3n){min-height:0;border-right:0}
  .html-editor-layout,.work-benefit-layout,.process-layout,.inquiry-layout{grid-template-columns:1fr}
  .work-condition-list{grid-template-columns:1fr;border-right:0;border-bottom:1px solid #dfe2e5}
  .benefit-column{border-right:0;border-bottom:1px solid #dfe2e5}
  .process-flow{overflow-x:auto;justify-content:flex-start;border-right:0;border-bottom:1px solid #dfe2e5}
  .process-docs{border-right:0;border-bottom:1px solid #dfe2e5}
  .ej-sticky-inner{height:64px;padding:6px 8px;gap:8px}
  .sticky-deadline span{display:none}
  .sticky-deadline strong{min-width:56px;height:44px;font-size:15px}
  .sticky-btn{min-width:48px;padding:0 7px;font-size:0}
  .sticky-btn .ej-icon{margin:0}
  .sticky-apply{min-width:0;flex:1;padding:0 12px}
  .sticky-actions{flex:1}
  body{padding-bottom:70px!important}
}

/* =========================================================
   STEP 5-0F COMPLETE UI DETAIL
   사용자 최종 요청: 상단~지원문의 일관된 완성형 디자인 시스템
   ========================================================= */

/* 기업정보: 배지 삭제 */
.company-tag{display:none!important}
.company-name-box>div{gap:0!important}

/* 기업정보 6개 박스 */
.company-info-grid{
  gap:12px!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:transparent!important;
}
.company-info-item{
  min-height:86px!important;
  padding:14px 15px!important;
  border:1px solid #e2e8f0!important;
  border-radius:14px!important;
  background:#f8fafc!important;
  box-shadow:0 4px 12px rgba(15,23,42,.035)!important;
  gap:11px!important;
}
.company-mini-icon{
  display:inline-flex;
  width:38px;height:38px;
  align-items:center;justify-content:center;
  border-radius:11px;
  background:#fff;
  border:1px solid #e7edf3;
  box-shadow:0 2px 7px rgba(15,23,42,.04);
  font-size:19px;
  flex:0 0 38px;
}
.company-info-item small{font-size:12px!important;color:#64748b!important;font-weight:800!important}
.company-info-item b{font-size:15px!important;color:#111827!important}

/* 모집직종 상단 요약바: 아이콘 카드 */
.job-position-keybar{
  gap:8px!important;
  padding:10px!important;
  background:#fff7ed!important;
  border-top:1px solid #fed7aa!important;
  border-bottom:1px solid #fed7aa!important;
}
.job-key{
  min-height:72px!important;
  padding:10px!important;
  border:1px solid #fed7aa!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 3px 10px rgba(249,115,22,.045)!important;
  justify-content:flex-start!important;
}
.job-key-icon{
  display:inline-flex;
  width:36px;height:36px;
  align-items:center;justify-content:center;
  border-radius:10px;
  background:#fff4e6;
  font-size:18px;
  flex:0 0 36px;
}
.job-key small{font-size:12px!important;color:#78716c!important;font-weight:750!important}
.job-key b{font-size:14px!important;color:#292524!important}
.job-key.is-accent{
  border-color:#fdba74!important;
  background:#fffaf5!important;
}
.job-key.is-accent .job-key-icon{background:#ffedd5}
.job-key.is-accent b{color:#ea580c!important}

/* 모집직종 상세 6개 카드 */
.job-position-details{
  gap:12px!important;
  padding:12px!important;
  background:#fff!important;
}
.job-detail-cell{
  min-height:132px!important;
  padding:16px 17px!important;
  border:1px solid #e5e7eb!important;
  border-radius:13px!important;
  background:#f8f9fa!important;
  box-shadow:0 2px 8px rgba(17,24,39,.025)!important;
}
.job-detail-cell strong{
  font-size:15px!important;
  color:#111827!important;
  padding-bottom:7px;
  border-bottom:1px solid #e5e7eb;
}
.job-detail-cell li,.job-detail-cell p{font-size:14px!important;line-height:1.65!important;color:#4b5563!important}

/* 근로조건 3열 카드 강화 */
.work-benefit-layout{
  gap:14px!important;
  border:0!important;
  overflow:visible!important;
  background:transparent!important;
}
.work-condition-list,.benefit-column,.insurance-column{
  border:1px solid #e2e8f0!important;
  border-radius:14px!important;
  background:#f8fafc!important;
  box-shadow:0 4px 14px rgba(15,23,42,.035)!important;
}
.work-condition-list{
  padding:16px!important;
  gap:10px 14px!important;
}
.work-condition-list>div{
  grid-template-columns:34px 78px 1fr!important;
  min-height:42px;
  padding:4px 0;
}
.work-emoji{
  display:inline-flex;
  width:32px;height:32px;
  align-items:center;justify-content:center;
  border-radius:9px;
  background:#fff;
  border:1px solid #e7edf3;
  font-size:16px;
}
.work-condition-list span:not(.work-emoji){font-size:12px!important;font-weight:800!important;color:#64748b!important}
.work-condition-list b{font-size:14px!important;color:#1f2937!important}

.benefit-column,.insurance-column{padding:16px!important}
.mini-title{margin-bottom:12px!important}
.mini-title b{font-size:15px!important}
.benefit-grid{gap:8px!important}
.benefit-grid span{
  min-height:34px!important;
  padding:7px 10px!important;
  border:1px solid #fed7aa!important;
  border-radius:999px!important;
  background:#fff7ed!important;
  color:#9a3412!important;
  font-size:12px!important;
  font-weight:800!important;
  box-shadow:0 2px 7px rgba(249,115,22,.05)!important;
}
.insurance-checks{gap:9px!important}
.insurance-checks span{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:34px;
  padding:6px 10px;
  border:1px solid #dbeafe;
  border-radius:10px;
  background:#eff6ff;
  color:#1e3a8a;
  font-size:13px!important;
  font-weight:800;
}
.insurance-checks i{font-style:normal;font-size:15px}

/* 채용절차 */
.process-layout{
  gap:14px!important;
  border:0!important;
  overflow:visible!important;
}
.process-flow,.process-docs,.process-dates{
  border:1px solid #e2e8f0!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(15,23,42,.035)!important;
}
.process-flow{padding:18px 16px!important}
.process-stage{
  min-width:82px!important;
  padding:0 4px;
}
.process-stage span{
  width:44px!important;height:44px!important;
  border:0!important;
  background:linear-gradient(135deg,#fff7ed,#ffedd5)!important;
  color:#ea580c!important;
  box-shadow:inset 0 0 0 1px #fed7aa;
}
.process-stage b{font-size:13px!important;color:#111827!important}
.process-flow i{
  font-size:22px!important;
  color:#fb923c!important;
  font-weight:900;
}
.process-docs,.process-dates{padding:16px!important}
.process-docs strong{display:block;font-size:14px;margin-bottom:7px;color:#111827}
.process-docs p{font-size:13px!important;color:#4b5563!important}
.process-dates>div{
  padding:9px 0;
  border-bottom:1px solid #e5e7eb;
}
.process-dates>div:last-child{border-bottom:0}
.process-dates small{font-size:11px!important;font-weight:800!important;color:#64748b!important}
.process-dates b{font-size:13px!important;color:#111827!important}

/* 지원문의 카드 */
.inquiry-layout{
  gap:12px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
}
.inquiry-card-item{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:88px;
  padding:15px 16px;
  border:1px solid #dbeafe;
  border-radius:14px;
  background:linear-gradient(180deg,#f8fbff,#f3f8ff);
  box-shadow:0 4px 14px rgba(37,99,235,.04);
}
.inquiry-icon{
  display:inline-flex;
  width:42px;height:42px;
  align-items:center;justify-content:center;
  border-radius:12px;
  background:#fff;
  border:1px solid #dbeafe;
  font-size:19px;
  flex:0 0 42px;
}
.inquiry-card-item small{font-size:11px!important;font-weight:800!important;color:#64748b!important}
.inquiry-card-item b{font-size:14px!important;color:#111827!important}
.inquiry-card-item span:not(.inquiry-icon){display:block;margin-top:2px;font-size:11px;color:#64748b}

/* Tablet */
@media (max-width:1279px) and (min-width:768px){
  .job-position-keybar{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .job-position-details{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .company-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .work-benefit-layout{grid-template-columns:1fr 1fr!important}
  .work-condition-list{grid-column:1/-1!important}
  .process-layout{grid-template-columns:1fr 1fr!important}
  .process-flow{grid-column:1/-1!important}
}

/* Mobile */
@media (max-width:767px){
  .company-info-grid{grid-template-columns:1fr!important}
  .job-position-keybar{grid-template-columns:1fr!important}
  .job-position-details{grid-template-columns:1fr!important}
  .work-benefit-layout{grid-template-columns:1fr!important}
  .work-condition-list{grid-template-columns:1fr!important}
  .process-layout{grid-template-columns:1fr!important}
  .process-flow{overflow-x:auto!important;justify-content:flex-start!important}
  .inquiry-layout{grid-template-columns:1fr!important}
}

/* =========================================================
   STEP 5-0G STRICT SPEC UI
   사용자 CSS/HTML 명세를 그대로 반영한 완성형 상세페이지
   ========================================================= */
.job-detail-shell{max-width:1180px!important;margin:0 auto!important;padding:28px 20px 90px!important}
.detail-page-v2{color:#1e293b;font-size:17px;line-height:1.7}
.svg-icon{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;flex:0 0 22px}
.svg-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Header */
.detail-header-v2{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:24px 8px 24px;border-bottom:1px solid #e2e8f0}
.detail-kicker{font-size:13px;color:#f97316;font-weight:900;margin-bottom:8px}
.detail-title-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.detail-title-row h2{margin:0;font-size:36px;line-height:1.22;letter-spacing:-.045em;font-weight:900;color:#111827}
.dday-chip{height:34px;padding:0 12px;border:2px solid #f97316;border-radius:999px;display:inline-flex;align-items:center;color:#ea580c;font-size:14px;font-weight:900}
.detail-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:10px;font-size:14px;color:#475569;font-weight:700}
.detail-actions-v2{display:flex;gap:8px}
.outline-action,.apply-action{min-height:54px;border-radius:10px;font-size:15px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:7px}
.outline-action{padding:0 16px;border:1px solid #dbe1e8;background:#fff;color:#334155}
.apply-action{min-width:148px;padding:0 20px;border:0;background:#f97316;color:#fff;flex-direction:column;line-height:1.15}
.apply-action small{font-size:11px}

/* Sections */
.page-section{margin-top:28px}
.page-section>h3{margin:0 0 13px;font-size:23px;font-weight:900;color:#111827;letter-spacing:-.035em}
.page-section>h3 small{font-size:13px;color:#64748b;font-weight:700}

/* 1. Company info strict cards */
.company-section-v2{border:1px solid #e2e8f0;border-radius:14px;padding:16px;background:#fff}
.company-head-v2{display:grid;grid-template-columns:82px 1fr;gap:16px;align-items:center;padding:5px 0 14px}
.company-logo-v2{width:78px;height:78px;border:1px solid #fed7aa;border-radius:12px;background:#fff7ed;color:#ea580c;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:900}
.company-head-v2 h4{margin:0;font-size:25px;font-weight:900;color:#111827}
.company-head-v2 p{margin:4px 0 0;font-size:14px;color:#64748b}
.company-info-grid-v2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.info-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 16px;display:flex;align-items:center;gap:10px;min-height:78px;box-shadow:0 3px 10px rgba(15,23,42,.025)}
.info-card-icon{width:34px;height:34px;flex-basis:34px;color:#2563eb;background:#eff6ff;border-radius:9px}
.info-card-icon svg{width:18px;height:18px}
.info-card .label{font-size:12px;color:#64748b;margin-bottom:2px;font-weight:750}
.info-card .value{font-size:14px;font-weight:600;color:#1e293b}
.company-intro-v2{margin-top:13px;padding:9px 3px 0;overflow:hidden;transition:max-height .25s ease}
.company-intro-v2.clamped{max-height:68px}
.company-intro-v2.expanded{max-height:600px}
.company-intro-v2 strong{font-size:14px;color:#111827}
.company-intro-v2 p{margin:5px 0 0;color:#475569;font-size:14px;line-height:1.65;white-space:pre-line}
.company-more-v2{display:flex;justify-content:flex-end;margin-top:8px}
.company-more-v2 button{height:34px;padding:0 12px;border:1px solid #dbe1e8;border-radius:8px;background:#fff;font-size:13px;font-weight:850;cursor:pointer}

/* 2. Recruitment summary bar */
.position-card-v2{border:1px solid #fed7aa;border-radius:14px;overflow:hidden;background:#fff;margin-top:12px}
.position-card-title{display:flex;align-items:center;gap:9px;padding:11px 14px;background:#fffaf5}
.position-card-title span{color:#f97316;font-size:17px;font-weight:900}
.position-card-title h4{margin:0;font-size:21px;font-weight:900;color:#111827}
.summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:10px;background:#fff7ed;border-top:1px solid #fed7aa;border-bottom:1px solid #fed7aa}
.summary-item{background:#fff;border:1px solid #fed7aa;border-radius:8px;padding:10px;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px;min-height:68px}
.summary-icon{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:9px;flex:0 0 34px}
.summary-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.summary-icon.orange{background:#fff7ed;color:#ea580c}
.summary-icon.blue{background:#eff6ff;color:#2563eb}
.summary-item small{display:block;font-size:11px;color:#64748b;margin-bottom:2px;font-weight:750}
.summary-item b{display:block;font-size:14px;color:#1e293b;font-weight:800}
.summary-item:last-child b{color:#ea580c}

/* 3. Detail cards */
.detail-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px;background:#fff}
.detail-info-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 15px;min-height:126px}
.detail-card-title{display:flex;align-items:center;gap:8px;padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid #e2e8f0}
.detail-card-title>span{width:4px;height:17px;border-radius:4px;background:#f97316;flex:0 0 4px}
.detail-card-title strong{font-size:15px;color:#111827}
.detail-info-card ul{margin:0;padding-left:18px}
.detail-info-card li{margin:3px 0;font-size:14px;color:#475569;line-height:1.6}
.detail-info-card p{font-size:14px;color:#64748b}

/* HTML section */
.html-section-v2{border:1px solid #e2e8f0;border-radius:14px;padding:15px}
.html-layout-v2{display:block;width:100%}
.job-html-content{max-width:100%;min-width:0;overflow:hidden;font-size:16px!important;line-height:1.7!important;overflow-wrap:anywhere;word-break:break-word}
.job-html-content p,.job-html-content li,.job-html-content td,.job-html-content th{font-size:max(16px,1em)!important;line-height:1.7!important}
.job-html-content img,.job-html-content video,.job-html-content iframe{max-width:100%!important;height:auto!important}
.job-html-content table{display:block;width:100%!important;max-width:100%!important;overflow-x:auto}
.promo-card-v2{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}
.promo-top-v2{min-height:140px;background:linear-gradient(135deg,#e6eee9,#f7f3e8 50%,#e7edf1);display:flex;align-items:center;justify-content:center}
.promo-top-v2 span{font-size:29px;font-weight:900;color:#166534}
.promo-body-v2{padding:16px}
.promo-body-v2 h4{margin:0 0 6px;font-size:20px;line-height:1.35}
.promo-body-v2 p{margin:0 0 10px;font-size:13px;color:#64748b}
.promo-body-v2 span{color:#f97316;font-size:13px;font-weight:900}

/* 4. Work benefits insurance */
.work-grid-v2{display:grid;grid-template-columns:1.35fr .9fr .75fr;gap:14px}
.work-card-v2,.benefit-card-v2,.insurance-card-v2{border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;padding:15px}
.work-card-v2 h4,.benefit-card-v2 h4,.insurance-card-v2 h4{display:flex;align-items:center;gap:7px;margin:0 0 12px;font-size:15px;color:#111827}
.work-row{display:grid;grid-template-columns:24px 78px 1fr;gap:7px;align-items:center;min-height:41px}
.work-row .svg-icon{color:#2563eb}
.work-row span:not(.svg-icon){font-size:12px;color:#64748b;font-weight:750}
.work-row b{font-size:13px;color:#1e293b}
.benefit-pills{display:flex;flex-wrap:wrap;gap:8px}
.benefit-pills span{background:#eff6ff;color:#1d4ed8;border-radius:20px;padding:7px 11px;font-size:12px;font-weight:800;border:1px solid #dbeafe;box-shadow:0 2px 6px rgba(37,99,235,.05)}
.insurance-list-v2{display:flex;flex-direction:column;gap:8px}
.insurance-list-v2>span{display:flex;align-items:center;gap:7px;min-height:34px;padding:6px 9px;background:#ecfdf5;border:1px solid #d1fae5;border-radius:9px;color:#047857}
.insurance-list-v2 .svg-icon{color:#10b981}
.insurance-list-v2 b{font-size:13px}

/* 4. Process */
.process-card-v2{border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:15px}
.process-flow-v2{display:flex;align-items:center;justify-content:center;gap:9px;padding:5px 0 16px}
.process-step-v2{text-align:center;min-width:86px}
.process-step-v2 span{display:flex;width:44px;height:44px;margin:0 auto 6px;align-items:center;justify-content:center;border-radius:50%;background:#fff7ed;color:#ea580c;border:1px solid #fed7aa;font-size:14px;font-weight:900}
.process-step-v2 b{font-size:13px;color:#111827}
.process-flow-v2 i{font-style:normal;color:#f97316;font-size:22px;font-weight:900}
.process-info-v2{display:grid;grid-template-columns:1.1fr 1fr .85fr;gap:10px;border-top:1px solid #e2e8f0;padding-top:13px}
.process-info-card{display:flex;align-items:flex-start;gap:8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9px;padding:11px 12px}
.process-info-card .svg-icon{color:#2563eb}
.process-info-card small{display:block;font-size:11px;color:#64748b;margin-bottom:2px;font-weight:750}
.process-info-card b{font-size:13px;color:#1e293b;line-height:1.45}

/* 5. Inquiry */
.inquiry-grid-v2{display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:12px}
.inquiry-card-v2{display:flex;align-items:center;gap:11px;min-height:84px;padding:14px 15px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 3px 9px rgba(15,23,42,.025)}
.inquiry-card-v2>.svg-icon{width:38px;height:38px;flex-basis:38px;border-radius:10px;background:#eff6ff;color:#2563eb}
.inquiry-card-v2>.svg-icon svg{width:19px;height:19px}
.inquiry-card-v2 small{display:block;font-size:11px;color:#64748b;font-weight:750;margin-bottom:2px}
.inquiry-card-v2 b{display:block;font-size:14px;color:#111827}
.inquiry-card-v2 span:not(.svg-icon){display:block;margin-top:2px;font-size:11px;color:#64748b}
.list-back-v2{padding:20px 0 3px}
.list-back-v2 a{color:#334155;font-weight:850}

/* Sticky */
.sticky-v2{position:fixed;left:0;right:0;bottom:0;z-index:900;background:rgba(255,255,255,.98);border-top:1px solid #e2e8f0;box-shadow:0 -6px 20px rgba(15,23,42,.06)}
.sticky-inner-v2{max-width:1180px;height:64px;margin:0 auto;padding:7px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.sticky-deadline-v2{display:flex;align-items:center;gap:12px}
.sticky-deadline-v2 strong{display:flex;align-items:center;justify-content:center;min-width:66px;height:42px;border-radius:8px;background:#1e293b;color:#fff;font-size:16px}
.sticky-deadline-v2 span{font-size:14px;font-weight:800;color:#334155}
.sticky-buttons-v2{display:flex;align-items:center;gap:7px}
.sticky-outline-v2,.sticky-apply-v2{height:48px;border-radius:9px;font-size:14px;font-weight:900}
.sticky-outline-v2{min-width:102px;border:1px solid #dbe1e8;background:#fff;display:flex;align-items:center;justify-content:center;gap:6px}
.sticky-apply-v2{min-width:230px;border:0;background:#f97316;color:#fff}
.site-header{z-index:1000!important}
body{padding-bottom:78px!important}

/* Breakpoints */
@media (max-width:1279px) and (min-width:768px){
  .company-info-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .detail-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .html-layout-v2{grid-template-columns:1fr}
  .work-grid-v2{grid-template-columns:1fr 1fr}
  .work-card-v2{grid-column:1/-1}
  .process-info-v2{grid-template-columns:1fr 1fr}
  .inquiry-grid-v2{grid-template-columns:1fr 1fr}
}
@media (max-width:767px){
  .job-detail-shell{padding:12px 10px 72px!important}
  .detail-header-v2{flex-direction:column;align-items:flex-start;padding:20px 2px}
  .detail-title-row{flex-direction:column;align-items:flex-start;gap:8px}
  .detail-title-row h2{font-size:29px}
  .detail-actions-v2{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .apply-action{grid-column:1/-1}
  .company-head-v2{grid-template-columns:64px 1fr}
  .company-logo-v2{width:62px;height:62px;font-size:26px}
  .company-info-grid-v2,.summary-grid,.detail-card-grid,.html-layout-v2,.work-grid-v2,.process-info-v2,.inquiry-grid-v2{grid-template-columns:1fr}
  .summary-item{justify-content:flex-start;text-align:left}
  .process-flow-v2{overflow-x:auto;justify-content:flex-start}
  .sticky-inner-v2{height:64px;padding:6px 8px;gap:7px}
  .sticky-deadline-v2 span{display:none}
  .sticky-deadline-v2 strong{min-width:56px;height:44px;font-size:14px}
  .sticky-outline-v2{min-width:48px;font-size:0;padding:0 7px}
  .sticky-apply-v2{min-width:0;flex:1;padding:0 10px}
  .sticky-buttons-v2{flex:1}
  body{padding-bottom:70px!important}
}

/* STEP 5-0I FINAL: 급여 문구 한 줄 유지 (2026-08-20)
   기존 상세페이지 UI/JS/API에는 영향 없이 모집직종 요약의 마지막 급여값만 줄바꿈 방지 */
@media (min-width: 768px) {
  .summary-item:last-child b {
    white-space: nowrap;
    word-break: keep-all;
    font-size: 13px;
  }
}


/* =========================================================
   M4-2B 입사지원 모달 - 기존 상세 디자인 영향 최소화
   ========================================================= */
body.m42b-modal-open{overflow:hidden}
.m42b-overlay{position:fixed;inset:0;z-index:1200;background:rgba(17,24,39,.58);display:flex;align-items:center;justify-content:center;padding:20px}
.m42b-overlay[hidden]{display:none!important}
.m42b-dialog{width:min(720px,100%);max-height:min(88vh,820px);overflow:auto;background:#fff;border-radius:22px;box-shadow:0 26px 70px rgba(0,0,0,.24);border:1px solid #e5e7eb}
.m42b-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 26px 18px;background:#fff;border-bottom:1px solid #eee}
.m42b-eyebrow{color:#f97316;font-size:12px;font-weight:900;letter-spacing:.12em}.m42b-head h2{margin:4px 0 0;font-size:27px;letter-spacing:-.04em}.m42b-close{width:44px;height:44px;border:1px solid #ddd;border-radius:12px;background:#fff;font-size:26px;cursor:pointer;color:#555}
.m42b-body{padding:22px 26px 26px}.m42b-intro{margin:0 0 22px;color:#5f6670;font-size:16px;line-height:1.7}
.m42b-section-title{display:flex;align-items:center;gap:9px;margin:22px 0 11px}.m42b-section-title span{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:999px;background:#fff0e6;color:#f97316;font-weight:900;font-size:12px}.m42b-section-title strong{font-size:18px}
.m42b-position-list{display:grid;gap:9px}.m42b-position-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid #e5e7eb;border-radius:14px;padding:14px 15px;cursor:pointer;background:#fff}.m42b-position-row:has(input:checked){border-color:#f97316;background:#fffaf6}.m42b-position-row:has(input:disabled){cursor:default;background:#f8f8f8;color:#888}.m42b-position-row input{width:20px;height:20px;accent-color:#f97316}.m42b-position-text{display:flex;flex-direction:column;gap:4px}.m42b-position-text strong{font-size:17px}.m42b-position-text small{font-size:14px;color:#737983}.m42b-badge{font-style:normal;border-radius:999px;padding:6px 9px;background:#fff0e6;color:#d95d0a;font-size:12px;font-weight:900;white-space:nowrap}.m42b-badge.done{background:#eee;color:#777}
.m42b-resume-wrap{display:flex;gap:10px;align-items:center}.m42b-resume-select{width:100%;min-height:50px;border:1px solid #d9dde3;border-radius:12px;background:#fff;padding:0 13px;font-size:16px}.m42b-resume-link{white-space:nowrap;color:#f97316;font-weight:800;font-size:14px}
.m42b-consent{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;border:1px solid #eadfd7;background:#fffaf6;border-radius:14px;padding:16px;cursor:pointer}.m42b-consent input{width:21px;height:21px;margin-top:2px;accent-color:#f97316}.m42b-consent span{display:flex;flex-direction:column;gap:5px}.m42b-consent strong{font-size:16px}.m42b-consent small{color:#686f78;font-size:14px;line-height:1.65}
.m42b-message{min-height:22px;margin-top:14px;font-size:14px;font-weight:800}.m42b-message.success{color:#16803a}.m42b-message.notice{color:#a65c00}.m42b-message.error{color:#c53c3c}
.m42b-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:8px}.m42b-actions button{min-height:52px;border-radius:12px;padding:0 20px;font-size:16px;font-weight:900;cursor:pointer}.m42b-cancel{border:1px solid #d8dbe0;background:#fff;color:#555}.m42b-submit{border:0;background:#f97316;color:#fff;min-width:170px}.m42b-submit:disabled{background:#ddd;color:#888;cursor:not-allowed}
.apply-action:disabled,.sticky-apply-v2:disabled{background:#d7d7d7!important;color:#777!important;cursor:not-allowed!important}
@media(max-width:620px){.m42b-overlay{padding:8px;align-items:flex-end}.m42b-dialog{max-height:94vh;border-radius:18px 18px 10px 10px}.m42b-head{padding:18px 18px 14px}.m42b-head h2{font-size:23px}.m42b-body{padding:16px 16px 20px}.m42b-position-row{grid-template-columns:auto 1fr}.m42b-badge{grid-column:2}.m42b-resume-wrap{align-items:stretch;flex-direction:column}.m42b-actions{display:grid;grid-template-columns:1fr 1.5fr}.m42b-actions button{width:100%;padding:0 10px}}
