/* 298 직무 영역별 묶음과 일정에 맞춘 1차 출시안 = 출시 계획판(2026-10-16 글마다 다른 레이아웃).
   진행 순서는 세 마디 자, 업무 묶음은 나뭇가지, 1차 분류는 위에서 아래로 내려가는 선반 네 칸, 2차 검토는 관문 질문,
   예산과 일정은 간트 막대와 한도선(넘는 묶음은 후속), 공동 검토는 둥근 탁자, 비교는 맞대결, 후속 항목은 색인 카드 */
.v-artd .sp-298 .prose{font-size:17px}
.v-artd .sp-298 .prose h2{margin:0 0 18px;padding:0;border:0;font-size:27px;letter-spacing:-.8px;display:block;min-height:0}
.v-artd .sp-298 .prose h2::before,.v-artd .sp-298 .prose h2::after{content:none}
.v-artd .sp-298 :where(.prose) .rp-s{padding:58px 0 6px}
.v-artd .sp-298 :where(.prose) .rp-s>p{margin:0 0 16px}
.v-artd .sp-298 :where(.prose) .rp-lead{font-size:20px;line-height:1.7;color:var(--ink);margin:0 0 24px}
.v-artd .sp-298 :where(.prose) .rp-lead b{color:var(--blue)}

/* 세 마디 자 */
.v-artd .sp-298 :where(.prose) .rp-order{display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;counter-reset:o;border-top:3px solid var(--ink)}
.v-artd .sp-298 :where(.prose) .rp-order li{counter-increment:o;position:relative;margin:0;padding:18px 14px 0 0;font-size:14.5px;line-height:1.5;color:var(--sub)}
.v-artd .sp-298 :where(.prose) .rp-order li::before{content:"";position:absolute;left:0;top:-9px;width:15px;height:15px;border-radius:50%;background:#fff;border:3px solid var(--ink)}
.v-artd .sp-298 :where(.prose) .rp-order b{display:block;font-size:16px;color:var(--ink)}
.v-artd .sp-298 :where(.prose) .rp-order b::before{content:counter(o) ". ";color:var(--blue)}

/* 나뭇가지 */
.v-artd .sp-298 :where(.prose) .rp-tree{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:0 24px;margin:6px 0 22px;padding:20px 22px;border-radius:14px;background:var(--soft)}
.v-artd .sp-298 :where(.prose) .rt-root{margin:0;padding:12px 16px;border-radius:10px;background:var(--navy);color:#fff;font-weight:800;font-size:15.5px;position:relative}
.v-artd .sp-298 :where(.prose) .rt-root::after{content:"";position:absolute;right:-24px;top:50%;width:24px;height:2px;background:#9aa1b5}
.v-artd .sp-298 :where(.prose) .rp-tree ul{margin:0;padding:0 0 0 18px;list-style:none;border-left:2px solid #9aa1b5}
.v-artd .sp-298 :where(.prose) .rp-tree li{position:relative;margin:6px 0;padding:8px 12px;border-radius:8px;background:#fff;border:1px solid var(--line);font-size:15px;font-weight:700;color:var(--ink)}
.v-artd .sp-298 :where(.prose) .rp-tree li::before{content:"";position:absolute;left:-19px;top:50%;width:18px;height:2px;background:#9aa1b5}
.v-artd .sp-298 :where(.prose) .rt-note{grid-column:2;margin:8px 0 0 18px;font-size:13.5px;font-weight:700;color:var(--sub)}

/* 선반 네 칸 */
.v-artd .sp-298 :where(.prose) .rp-shelf{margin:26px 0 18px;padding:10px 14px 14px;border-radius:16px;background:#dde3f2}
.v-artd .sp-298 :where(.prose) .rs-cap{margin:4px 4px 12px;font-size:15px;font-weight:800;color:var(--navy)}
.v-artd .sp-298 :where(.prose) .rs-cap span{margin-left:8px;font-size:13px;font-weight:600;color:var(--sub)}
.v-artd .sp-298 :where(.prose) .rs{display:grid;grid-template-columns:150px 1fr 190px;gap:16px;align-items:center;margin:0 0 10px;padding:14px 16px;border-radius:10px;background:#fff;box-shadow:0 5px 0 #c4cce3}
.v-artd .sp-298 :where(.prose) .rs p{margin:0}
.v-artd .sp-298 :where(.prose) .rs-l{font-size:18px;font-weight:800;color:var(--ink)}
.v-artd .sp-298 :where(.prose) .rs-l small{display:block;margin-top:2px;font-size:12.5px;font-weight:600;color:var(--sub)}
.v-artd .sp-298 :where(.prose) .rs-d{font-size:14.5px;line-height:1.55;color:#3a4152}
.v-artd .sp-298 :where(.prose) .rs-x{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.v-artd .sp-298 :where(.prose) .rs-x span{padding:5px 10px;border-radius:999px;font-size:12.5px;font-weight:700;background:var(--soft);color:var(--ink)}
.v-artd .sp-298 :where(.prose) .rs-must .rs-l{color:var(--blue)}
.v-artd .sp-298 :where(.prose) .rs-must .rs-x span{background:var(--blue);color:#fff}
.v-artd .sp-298 :where(.prose) .rs-should .rs-x span{background:var(--blue2);color:#1d3fc4}
.v-artd .sp-298 :where(.prose) .rs-wont{background:repeating-linear-gradient(-45deg,#fff 0 10px,#f6f7fb 10px 20px);box-shadow:0 5px 0 #c4cce3;opacity:.95}
.v-artd .sp-298 :where(.prose) .rs-wont .rs-l{color:#5b6475}
.v-artd .sp-298 :where(.prose) .rs-wont .rs-x span{text-decoration:line-through;color:#5b6475}
.v-artd .sp-298 :where(.prose) .rs:last-child{margin-bottom:0}

/* 관문 질문 */
.v-artd .sp-298 :where(.prose) .rp-gates{margin:6px 0 20px;display:grid;gap:0}
.v-artd .sp-298 :where(.prose) .rg{display:flex;align-items:center;gap:14px;margin:0;padding:14px 18px;border:2px solid var(--ink);font-size:16px;font-weight:700;color:var(--ink);background:#fff}
.v-artd .sp-298 :where(.prose) .rg+.rg{border-top:0}
.v-artd .sp-298 :where(.prose) .rg:first-child{border-radius:14px 14px 0 0}
.v-artd .sp-298 :where(.prose) .rg:last-child{border-radius:0 0 14px 14px}
.v-artd .sp-298 :where(.prose) .rg span{flex:none;padding:4px 10px;border-radius:6px;background:var(--ink);color:#fff;font-size:12.5px}
.v-artd .sp-298 :where(.prose) .rg::after{content:"예 / 아니오";margin-left:auto;flex:none;font-size:13px;font-weight:700;color:var(--sub)}
.v-artd .sp-298 :where(.prose) .rg-must{background:var(--blue2)}
.v-artd .sp-298 :where(.prose) .rg-must span{background:var(--blue)}

/* 간트 */
.v-artd .sp-298 :where(.prose) .rp-gantt{position:relative;margin:6px 0 20px;padding:16px 18px 14px;border-radius:14px;border:1px solid var(--line);background:linear-gradient(90deg,transparent 0 130px,#fff 130px),var(--soft);background:#fff}
.v-artd .sp-298 :where(.prose) .rgn-h{display:grid;grid-template-columns:120px 1fr;gap:10px;margin:0 0 6px;font-size:12.5px;font-weight:800;color:var(--sub)}
.v-artd .sp-298 :where(.prose) .rgn{display:grid;grid-template-columns:120px 1fr;gap:10px;align-items:center;height:40px;border-top:1px dashed var(--line)}
.v-artd .sp-298 :where(.prose) .rgn-n{font-size:15px;font-weight:700;color:var(--ink)}
.v-artd .sp-298 :where(.prose) .rgn-b{position:relative;height:100%}
.v-artd .sp-298 :where(.prose) .rgn-b i{position:absolute;top:10px;height:20px;width:var(--w);border-radius:6px;background:var(--blue)}
.v-artd .sp-298 :where(.prose) .rgn:nth-of-type(1) .rgn-b i{left:0}
.v-artd .sp-298 :where(.prose) .rgn:nth-of-type(2) .rgn-b i{left:34%}
.v-artd .sp-298 :where(.prose) .rgn:nth-of-type(3) .rgn-b i{left:52%}
.v-artd .sp-298 :where(.prose) .rgn:nth-of-type(4) .rgn-b i{left:76%;background:repeating-linear-gradient(-45deg,#9aa1b5 0 6px,#c3c8d6 6px 12px)}
.v-artd .sp-298 :where(.prose) .rgn-out .rgn-n{color:#5b6475}
.v-artd .sp-298 :where(.prose) .rgn-line{position:absolute;top:34px;bottom:40px;left:calc(18px + 130px + (100% - 166px)*.74);width:0;border-left:3px solid #e5484d}
.v-artd .sp-298 :where(.prose) .rgn-line b{position:absolute;left:-1px;top:-24px;transform:translateX(-50%);white-space:nowrap;padding:2px 8px;border-radius:6px;background:#e5484d;color:#fff;font-size:12px}
.v-artd .sp-298 :where(.prose) .rgn-f{margin:10px 0 0;font-size:12.5px;color:var(--sub)}
.v-artd .sp-298 :where(.prose) .rp-side{margin:0 0 16px;padding:16px 20px 16px 18px;border-left:5px solid var(--navy);border-radius:0 12px 12px 0;background:var(--soft);font-size:15.5px;line-height:1.65}
.v-artd .sp-298 :where(.prose) .rp-side b{display:block;color:var(--navy);margin-bottom:2px}

/* 둥근 탁자 */
.v-artd .sp-298 :where(.prose) .rp-table{position:relative;height:250px;margin:6px 0 20px}
.v-artd .sp-298 :where(.prose) .rt-c{position:absolute;left:50%;top:50%;width:150px;height:150px;margin:-75px 0 0 -75px;border-radius:50%;background:var(--blue2);display:grid;place-items:center;text-align:center;font-size:16px;font-weight:800;color:#1d3fc4;box-shadow:0 0 0 12px #eef1ff}
.v-artd .sp-298 :where(.prose) .rt-p{position:absolute;padding:9px 14px;border-radius:999px;background:var(--ink);color:#fff;font-size:14px;font-weight:800;white-space:nowrap;transform:translate(-50%,-50%)}
.v-artd .sp-298 :where(.prose) .rt-1{left:50%;top:14px;transform:translateX(-50%)}
.v-artd .sp-298 :where(.prose) .rt-2{left:calc(50% + 175px);top:50%}
.v-artd .sp-298 :where(.prose) .rt-3{left:50%;bottom:14px;top:auto;transform:translateX(-50%)}
.v-artd .sp-298 :where(.prose) .rt-4{left:calc(50% - 175px);top:50%;background:var(--blue)}

/* 맞대결 */
.v-artd .sp-298 :where(.prose) .rp-duel{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin:6px 0 20px}
.v-artd .sp-298 :where(.prose) .du-a,.v-artd .sp-298 :where(.prose) .du-b{margin:0;padding:26px 10px;border-radius:16px;text-align:center;font-size:18px;font-weight:800}
.v-artd .sp-298 :where(.prose) .du-a{background:var(--blue);color:#fff}
.v-artd .sp-298 :where(.prose) .du-b{background:var(--navy);color:#fff}
.v-artd .sp-298 :where(.prose) .rp-duel ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.v-artd .sp-298 :where(.prose) .rp-duel li{margin:0;padding:6px 16px;border-radius:999px;border:1.5px solid var(--ink);font-size:14px;font-weight:700;text-align:center;background:#fff;position:relative}
.v-artd .sp-298 :where(.prose) .rp-duel li::before,.v-artd .sp-298 :where(.prose) .rp-duel li::after{content:"";position:absolute;top:50%;width:16px;height:1.5px;background:var(--ink)}
.v-artd .sp-298 :where(.prose) .rp-duel li::before{left:-17px}
.v-artd .sp-298 :where(.prose) .rp-duel li::after{right:-17px}

/* 색인 카드 */
.v-artd .sp-298 :where(.prose) .rp-card{max-width:560px;margin:6px 0 20px;padding:18px 22px 14px;border-radius:4px;background:#fff;border:1px solid var(--line);box-shadow:4px 6px 0 var(--blue2);background-image:linear-gradient(transparent 46px,#e5484d 46px 48px,transparent 48px),repeating-linear-gradient(transparent 0 33px,#dfe6ff 33px 34px)}
.v-artd .sp-298 :where(.prose) .rc-t{margin:0 0 14px;font-size:16px;font-weight:800;color:var(--ink)}
.v-artd .sp-298 :where(.prose) .rc-f{display:grid;grid-template-columns:100px 1fr;gap:10px;margin:0;padding:6px 0;font-size:14.5px;line-height:1.55;color:#3a4152}
.v-artd .sp-298 :where(.prose) .rc-f span{font-weight:800;color:var(--blue)}

/* 먼저 확인할 결과 */
.v-artd .sp-298 :where(.prose) .rp-first{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 18px}
.v-artd .sp-298 :where(.prose) .rp-first p{margin:0 6px 0 0;font-size:14px;font-weight:800;color:var(--sub)}
.v-artd .sp-298 :where(.prose) .rp-first span{padding:9px 16px;border-radius:10px;border:2px solid var(--ink);font-size:15px;font-weight:800;color:var(--ink)}
.v-artd .sp-298 :where(.prose) .rp-first span:first-of-type{background:var(--ink);color:#fff}
.v-artd .sp-298 :where(.prose) .rp-sum{margin:6px 0 0;padding:18px 22px;border-radius:14px;background:var(--blue2);font-size:15.5px;line-height:1.7;color:#28305a}
.v-artd .sp-298 :where(.prose) .rp-sum b{display:block;color:#1d3fc4;margin-bottom:2px}

/* 진행 방식 = 문서 세 장 펼침 */
.v-artd .sp-298 :where(.prose) .rp-we{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:center;margin:36px 0 10px;padding:30px 30px;border-radius:20px;background:var(--navy);color:#fff}
.v-artd .sp-298 :where(.prose) .rw-fan{position:relative;height:170px}
.v-artd .sp-298 :where(.prose) .rw-fan span{position:absolute;left:20px;top:0;width:170px;height:110px;padding:10px 12px;border-radius:6px;background:#fff;color:var(--navy);font-size:13px;font-weight:800;line-height:1.35;box-shadow:0 10px 20px -10px rgba(0,0,0,.5)}
.v-artd .sp-298 :where(.prose) .rw-fan span:nth-child(1){transform:none}
.v-artd .sp-298 :where(.prose) .rw-fan span:nth-child(2){transform:translate(14px,32px)}
.v-artd .sp-298 :where(.prose) .rw-fan span:nth-child(3){transform:translate(28px,64px);background:var(--blue2)}
.v-artd .sp-298 :where(.prose) .rw-k{margin:0 0 6px;font-size:13px;font-weight:800;color:#9fb3ff}
.v-artd .sp-298 :where(.prose) .rw-t{margin:0 0 10px;font-size:20px;font-weight:800;line-height:1.45}
.v-artd .sp-298 :where(.prose) .rw-d{margin:0 0 20px;font-size:15.5px;color:#cfd6f2}
.v-artd .sp-298 :where(.prose) .rw-btn{display:inline-flex;padding:13px 24px;border-radius:999px;background:#fff;color:var(--navy)!important;font-weight:800;text-decoration:none!important}
.v-artd .sp-298 :where(.prose) .rw-btn:hover{background:var(--blue2)}

.v-artd .sp-298 :where(.prose) .rp-rel{margin:40px 0 18px;padding:18px 0 0;border-top:1px solid var(--line);list-style:none}
.v-artd .sp-298 :where(.prose) .rp-rel li{margin:0;padding:6px 0}
.v-artd .sp-298 :where(.prose) .rp-rel li::before{content:none}
.v-artd .sp-298 :where(.prose) .rp-rel a{font-weight:700;text-decoration:none}
.v-artd .sp-298 :where(.prose) .rp-rel a::before{content:"→ ";color:var(--sub)}

@media (max-width:720px){
  .v-artd .sp-298 :where(.prose) .rp-lead{font-size:18px}
  .v-artd .sp-298 .prose h2{font-size:23px}
  .v-artd .sp-298 :where(.prose) .rp-s{padding-top:46px}
  .v-artd .sp-298 :where(.prose) .rp-order{grid-template-columns:1fr;border-top:0;border-left:3px solid var(--ink);margin-left:8px}
  .v-artd .sp-298 :where(.prose) .rp-order li{padding:0 0 16px 20px}
  .v-artd .sp-298 :where(.prose) .rp-order li::before{left:-9px;top:2px}
  .v-artd .sp-298 :where(.prose) .rp-tree{grid-template-columns:1fr;gap:14px}
  .v-artd .sp-298 :where(.prose) .rt-root::after{display:none}
  .v-artd .sp-298 :where(.prose) .rt-note{grid-column:1;margin-left:0}
  .v-artd .sp-298 :where(.prose) .rs{grid-template-columns:1fr;gap:8px}
  .v-artd .sp-298 :where(.prose) .rs-x{justify-content:flex-start}
  .v-artd .sp-298 :where(.prose) .rg{flex-wrap:wrap;font-size:15px}
  .v-artd .sp-298 :where(.prose) .rg::after{margin-left:0;width:100%}
  .v-artd .sp-298 :where(.prose) .rgn-h,.v-artd .sp-298 :where(.prose) .rgn{grid-template-columns:80px 1fr}
  .v-artd .sp-298 :where(.prose) .rgn-n{font-size:13px}
  .v-artd .sp-298 :where(.prose) .rgn-line{left:calc(18px + 90px + (100% - 126px)*.74)}
  .v-artd .sp-298 :where(.prose) .rp-table{height:auto;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
  .v-artd .sp-298 :where(.prose) .rt-c{position:static;margin:0 0 10px;width:100%;height:auto;padding:14px;border-radius:14px;box-shadow:none}
  .v-artd .sp-298 :where(.prose) .rt-p{position:static;transform:none}
  .v-artd .sp-298 :where(.prose) .rp-duel{grid-template-columns:1fr;gap:10px}
  .v-artd .sp-298 :where(.prose) .rp-duel li::before,.v-artd .sp-298 :where(.prose) .rp-duel li::after{display:none}
  .v-artd .sp-298 :where(.prose) .du-a,.v-artd .sp-298 :where(.prose) .du-b{padding:14px}
  .v-artd .sp-298 :where(.prose) .rc-f{grid-template-columns:1fr;gap:0}
  .v-artd .sp-298 :where(.prose) .rp-we{grid-template-columns:1fr;padding:24px 22px}
  .v-artd .sp-298 :where(.prose) .rw-fan{height:150px;margin:0 auto;width:220px}
}
