/* detail */
body[data-page="job"]{background:#f5f7f7}
.detail-hero{background:#fff;border-bottom:1px solid #e2e9ed}
.detail-photo{position:relative;min-height:290px;background:#d7e1e5 center/cover no-repeat;isolation:isolate}
.detail-photo:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,31,48,.02),rgba(10,31,48,.12))}
.detail-photo-tools{position:absolute;left:max(20px,calc((100% - 1220px)/2));top:18px;display:flex;gap:8px;z-index:2}
.photo-tool{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.82);border-radius:var(--pqc-r-sm);background:rgba(255,255,255,.94);box-shadow:0 6px 20px rgba(16,39,56,.12);color:var(--pqc-navy);font-weight:850;cursor:pointer}
.photo-count{position:absolute;right:max(20px,calc((100% - 1220px)/2));bottom:16px;background:rgba(18,42,60,.75);color:#fff;border-radius:999px;padding:5px 9px;font-size:9px}
.detail-title-row{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:18px 0 17px}
.detail-title-main{min-width:0}
.detail-title-top{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.detail-title-top h1{margin:0;color:var(--pqc-navy);font-family:Lora,Georgia,"Times New Roman",serif;font-size:32px;line-height:1.05;letter-spacing:-.025em}
.hiring-badge{padding:5px 8px;border-radius:999px;background:var(--pqc-green-bg);border:1px solid var(--pqc-green-line);color:var(--pqc-green);font-size:9px;font-weight:830}
.detail-employer-row{display:flex;gap:10px;align-items:center;margin-top:11px}
.employer-mark{width:48px;height:48px;border:1px solid #e1e7ea;border-radius:var(--pqc-r-sm);display:grid;place-items:center;background:#fffaf3;color:#a45c16;font-family:Georgia,serif;font-size:12px;font-weight:850}
.detail-employer-row strong{color:#244861;font-size:12px}
.detail-actions{display:flex;gap:8px;flex:0 0 auto}.detail-actions .btn{min-width:112px;height:43px}
.detail-shell{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:16px;padding-top:18px;padding-bottom:78px;align-items:start}
.detail-main{display:grid;gap:13px;min-width:0}
.detail-card,.side-card{background:#fff;border:1px solid #e0e8ec;border-radius:var(--pqc-r);box-shadow:0 5px 15px rgba(22,50,70,.035)}
.detail-card{padding:16px}
.side-card{padding:14px}
.detail-card-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:12px}
.detail-card-head h2,.detail-card-head h3{margin:2px 0 0;color:var(--pqc-navy);font-size:17px;line-height:1.2}
.truth-caption{color:#718492;font-size:9px}
.package-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.package-box{min-height:82px;border:1px solid #e5ecef;border-radius:var(--pqc-r);background:#f9fbfc;padding:12px 9px;display:flex;flex-direction:column;justify-content:center;gap:6px;text-align:center}
.package-box small{color:#627789;font-size:9px}.package-box strong{color:#1b405d;font-size:12px;line-height:1.2}
.package-box.yes{background:linear-gradient(180deg,#eff9f3,#f7fcf9);border-color:#d6ebdf}.package-box.yes strong{color:#176a4c}
.package-box.unknown{background:linear-gradient(180deg,#fff7e9,#fffaf2);border-color:#f1deb9}.package-box.unknown strong{color:#8d5b18}
.package-box.no{background:#fff5f2;border-color:#eed9d4}.package-box.no strong{color:#86504c}
.location-card{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:14px;padding:0;overflow:hidden}
.location-copy{padding:16px}.location-copy h3{margin:0 0 11px;color:var(--pqc-navy)}
.location-line{display:flex;gap:8px;align-items:flex-start;margin-top:8px;color:#536b7d;font-size:10.5px}.location-line b{color:var(--pqc-blue)}
.map-visual{min-height:160px;position:relative;overflow:hidden;background:linear-gradient(145deg,#d8f0e1 0 35%,#badce9 35% 60%,#eef1d7 60%);border-left:1px solid #e1e8ec;display:grid;place-items:center;color:#4f7786;font-weight:800}
.map-visual:before,.map-visual:after{content:"";position:absolute;border:1px solid rgba(75,125,139,.24);border-radius:55% 45% 62% 38%;width:120px;height:200px;transform:rotate(14deg)}
.map-visual:after{width:80px;height:160px;transform:rotate(25deg);border-color:rgba(255,255,255,.62)}
.map-visual span{position:absolute;top:12px;left:12px;font-size:9px;letter-spacing:.08em}.map-visual i{font-style:normal;color:#f04e43;font-size:25px;z-index:2}.map-visual small{position:absolute;right:10px;bottom:10px;background:rgba(255,255,255,.9);border-radius:4px;padding:5px 7px;color:var(--pqc-blue);font-size:9px}
.decision-card{padding:0;background:transparent;border:0;box-shadow:none}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.decision-panel{border:1px solid;padding:14px;border-radius:var(--pqc-r)}
.decision-panel h3{margin:0 0 9px;font-size:13px;color:var(--pqc-navy)}
.decision-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.decision-panel li{position:relative;padding-left:20px;color:#405d72;font-size:10.5px;line-height:1.35}
.decision-panel.good{background:linear-gradient(90deg,#ebf8ef,#f3fbf6);border-color:#d7edde}.decision-panel.good li:before{content:"✓";position:absolute;left:0;top:0;width:14px;height:14px;border-radius:50%;display:grid;place-items:center;background:#23a469;color:#fff;font-size:8px;font-weight:900}
.decision-panel.watch{background:linear-gradient(90deg,#fff4df,#fff8e9);border-color:#f3deb8}.decision-panel.watch li:before{content:"!";position:absolute;left:0;top:0;width:14px;height:14px;border-radius:50%;display:grid;place-items:center;background:#ef941f;color:#fff;font-size:8px;font-weight:900}
.questions{background:linear-gradient(90deg,#fff1ef,#fff7f6);border-color:#f2dcda}
.question-list{display:grid;gap:7px}.question{position:relative;padding-left:27px;color:#455f72;font-size:10.5px;line-height:1.4}.question:before{content:"?";position:absolute;left:0;top:-1px;width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#dc4d48;color:#fff;font-size:9px;font-weight:900}
.detail-tabs{display:flex;gap:18px;border-bottom:1px solid #e6ecef;overflow-x:auto}.detail-tab{height:38px;border:0;background:transparent;color:#536b7d;font-size:10px;font-weight:750;border-bottom:2px solid transparent;white-space:nowrap}.detail-tab.active{color:var(--pqc-navy);border-color:var(--pqc-blue)}
.content-block{padding:13px 0 5px;color:#536a7c;font-size:11px;line-height:1.65}.content-block p{margin:0}
.content-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-top:8px}.content-columns h3{margin:0 0 6px;color:var(--pqc-navy);font-size:11px}.content-columns ul{margin:0;padding-left:18px;color:#536a7c;font-size:10.5px;line-height:1.65}
.detail-aside{display:grid;gap:12px;position:sticky;top:86px}.side-card h3{margin:0 0 10px;color:var(--pqc-navy);font-size:12px}.side-fact{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #edf1f3;font-size:9.8px}.side-fact span{color:#718492}.side-fact strong{text-align:right;color:#3c5a70;font-size:9.8px}.source-link{display:inline-flex;margin-top:10px;color:var(--pqc-blue);font-weight:780;font-size:10px}
.sticky-mobile-actions{display:none}

/* modals */
.modal{position:fixed;inset:0;z-index:300;background:rgba(9,30,45,.48);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;padding:20px}.modal.show{display:flex}.modal-card{width:min(460px,100%);max-height:90dvh;overflow:auto;background:#fff;border-radius:8px;border:1px solid #dfe7eb;box-shadow:0 26px 70px rgba(10,32,48,.28);padding:20px;position:relative}.modal-close{position:absolute;right:10px;top:10px;width:34px;height:34px;border:0;background:#f3f6f7;border-radius:4px;color:#456174;font-size:18px;cursor:pointer}.modal-card h3{margin:0 36px 6px 0;color:var(--pqc-navy);font-family:Lora,Georgia,serif;font-size:22px}.modal-card>p{margin:0 0 14px;color:#667b8c;font-size:11px}.intent-options{display:grid;gap:8px;margin:12px 0}.intent-option{border:1px solid #dfe7eb;border-radius:var(--pqc-r-sm);background:#fff;padding:12px;text-align:left;cursor:pointer}.intent-option.selected{border-color:#86b3c8;background:#edf7fc;color:var(--pqc-navy)}.field{display:grid;gap:5px;margin:11px 0}.field label{font-size:10px;font-weight:750;color:#526a7c}.field input,.field select{height:42px;border:1px solid #d7e1e6;border-radius:var(--pqc-r-sm);padding:0 10px;background:#fff}.consent{display:flex;gap:8px;align-items:flex-start;color:#607687;font-size:10px;margin:12px 0}.apply-success{font-size:10px;color:var(--pqc-green);margin-bottom:8px}

@media(max-width:760px){
  /* detail mobile */
  body[data-page="job"]{padding-bottom:78px;background:#fff}
  body[data-page="job"] .topbar{display:none}
  .detail-photo{min-height:225px;height:225px}.detail-photo-tools{left:12px;right:12px;top:12px;width:auto}.photo-tool{width:38px;height:38px;border-radius:50%}.detail-photo-tools .photo-tool:nth-child(2){margin-left:auto}.photo-count{right:12px;bottom:10px}
  .detail-title-row{width:100%;padding:14px 14px 12px;display:block}.detail-title-top{display:block}.detail-title-top h1{font-size:26px;line-height:1.05}.hiring-badge{display:inline-flex;margin-top:7px}.detail-employer-row{margin-top:10px}.employer-mark{width:42px;height:42px}.detail-employer-row .job-meta{font-size:8.8px}.detail-actions{display:none}
  .detail-shell{width:100%;display:block;padding:0 12px 20px}.detail-main{gap:10px}.detail-aside{display:none}.detail-card{padding:13px;border-radius:5px;box-shadow:none}
  .detail-card-head{align-items:flex-start}.detail-card-head h2,.detail-card-head h3{font-size:15px}.truth-caption{display:none}
  .package-grid{grid-template-columns:repeat(2,1fr);gap:7px}.package-box{min-height:72px;padding:9px 7px}.package-box small{font-size:8.8px}.package-box strong{font-size:11.5px}
  .location-card{display:block;padding:0}.location-copy{padding:13px}.map-visual{display:none}
  .decision-grid{grid-template-columns:1fr;gap:8px}.decision-panel{padding:12px}.decision-panel h3{font-size:12.5px}.decision-panel li{font-size:10px}
  .questions .detail-card-head{display:block}.questions .detail-card-head .btn{margin-top:8px}.question{font-size:10px}
  .detail-tabs{gap:14px}.detail-tab{font-size:9px}.content-columns{grid-template-columns:1fr;gap:12px}
  .sticky-mobile-actions{position:fixed;left:0;right:0;bottom:0;z-index:220;display:grid;grid-template-columns:1fr 1.2fr;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid #e0e7eb;box-shadow:0 -8px 25px rgba(20,45,64,.08)}.sticky-mobile-actions .btn{height:46px}
  .compare-drawer{display:none!important}
  .modal{padding:12px;align-items:end}.modal-card{max-height:86dvh;border-radius:12px 12px 6px 6px;padding:18px 16px calc(18px + env(safe-area-inset-bottom))}
}

@media(min-width:761px) and (max-width:1040px){
  .detail-shell{grid-template-columns:1fr}.detail-aside{position:static;grid-template-columns:1fr 1fr}.package-grid{grid-template-columns:repeat(3,1fr)}
}
