/* 381 동시 처리와 취소를 포함한 기획안 누락 지점 = 순서도(시퀀스 다이어그램)와 검토 작업지(2026-10-16 글마다 다른 레이아웃).
   처음은 세 단계 띠와 검토 렌즈 셋, 계약 전 핀, 검토 범위는 세 칸, 예시는 사용자 둘과 예약 자료의 순서도(물음표 = 확인할 규칙),
   확인 목록은 기록 작업지 표, 실제 요구는 대비 둘, 기술과 사업은 겹친 원, 보완 근거는 판단 근거 대 아닌 것,
   역량은 톱니 셋, 기록은 한 줄 양식, 기관 질의는 방송형 안내 */
.v-artd .sp-381 .prose{font-size:17px}
.v-artd .sp-381 :where(.prose) .sq-lead{font-size:20px;line-height:1.7;color:var(--ink);margin:0 0 24px}
.v-artd .sp-381 .prose h2{margin:0 0 18px;padding:0;border:0;font-size:27px;letter-spacing:-.8px;display:block;min-height:0}
.v-artd .sp-381 .prose h2::before,.v-artd .sp-381 .prose h2::after{content:none}
.v-artd .sp-381 :where(.prose) .sq-s{padding:60px 0 4px}
.v-artd .sp-381 :where(.prose) .sq-s>p{margin:0 0 16px}
.v-artd .sp-381 .prose ul,.v-artd .sp-381 .prose ol{margin:0;padding:0;list-style:none}
.v-artd .sp-381 .prose li{margin:0}
.v-artd .sp-381 .prose li::before{content:none}

/* 세 단계 띠 */
.v-artd .sp-381 :where(.prose) .sq-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:0 0 16px}
.v-artd .sp-381 :where(.prose) .sq-steps li{padding:16px 22px 16px 18px;background:var(--navy);color:#dfe4f7;font-size:14.5px;line-height:1.6;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%,14px 50%)}
.v-artd .sp-381 :where(.prose) .sq-steps li:first-child{clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%);border-radius:12px 0 0 12px}
.v-artd .sp-381 :where(.prose) .sq-steps li+li{padding-left:28px}
.v-artd .sp-381 :where(.prose) .sq-steps b{display:block;margin-bottom:4px;color:var(--yellow);font-size:14px}
.v-artd .sp-381 :where(.prose) .sq-lens{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 16px}
.v-artd .sp-381 :where(.prose) .sq-lens div{padding:18px;border-radius:14px;border:1px solid var(--line);font-size:14.5px;line-height:1.6;color:#4a5060}
.v-artd .sp-381 :where(.prose) .sq-lens b{display:block;margin:10px 0 4px;font-size:16.5px;color:var(--ink)}
.v-artd .sp-381 :where(.prose) .ln-ic{display:block;width:38px;height:38px;border-radius:10px;background:var(--blue2) center/22px no-repeat}
.v-artd .sp-381 :where(.prose) .ln-a{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232e5bff' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='10' cy='10' r='6'/%3E%3Cpath d='M15 15l5 5'/%3E%3C/svg%3E")}
.v-artd .sp-381 :where(.prose) .ln-b{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232e5bff' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 3v18M5 7h14M5 7l-3 7h6zM19 7l-3 7h6z'/%3E%3C/svg%3E")}
.v-artd .sp-381 :where(.prose) .ln-c{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232e5bff' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 12l5 5L20 6'/%3E%3C/svg%3E")}
.v-artd .sp-381 :where(.prose) .sq-pin{position:relative;padding:16px 20px 16px 52px;border-radius:12px;background:#fff8d6;font-size:15.5px;line-height:1.65;color:#3b3f4e}
.v-artd .sp-381 :where(.prose) .sq-pin::before{content:"";position:absolute;left:18px;top:18px;width:18px;height:18px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#c4282d}
.v-artd .sp-381 :where(.prose) .sq-pin b{display:block;color:#8a6d00}

/* 검토 범위 세 칸 */
.v-artd .sp-381 :where(.prose) .sq-scope{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:4px 0 18px;border:2px solid var(--ink);border-radius:14px;overflow:hidden}
.v-artd .sp-381 :where(.prose) .sc{padding:18px}
.v-artd .sp-381 :where(.prose) .sc+.sc{border-left:1px solid var(--line)}
.v-artd .sp-381 :where(.prose) .sc p{margin:0;font-size:14.5px;line-height:1.6;color:#4a5060}
.v-artd .sp-381 :where(.prose) .sc-k{margin:0 0 8px!important;font-size:17px!important;font-weight:800;color:var(--ink)!important}
.v-artd .sp-381 :where(.prose) .sc:last-child{background:#f6f8ff}
.v-artd .sp-381 :where(.prose) .sc:last-child .sc-k{color:var(--blue)!important}

/* 순서도 */
.v-artd .sp-381 :where(.prose) .sq-seq{margin:4px 0 18px;padding:18px;border-radius:18px;background:#fbfcff;border:1px solid var(--line)}
.v-artd .sp-381 :where(.prose) .sq-seq svg{display:block;width:100%;height:auto;font-family:inherit}
.v-artd .sp-381 :where(.prose) .sq-seq .hd{fill:#fff;stroke:#1b1f3a;stroke-width:2}
.v-artd .sp-381 :where(.prose) .sq-seq .hd-b{stroke:#2e5bff}
.v-artd .sp-381 :where(.prose) .sq-seq .hd-s{fill:#1b1f3a}
.v-artd .sp-381 :where(.prose) .sq-seq .ht{fill:#141827;font-size:15px;font-weight:800;text-anchor:middle}
.v-artd .sp-381 :where(.prose) .sq-seq .ht-w{fill:#fff}
.v-artd .sp-381 :where(.prose) .sq-seq .ll{stroke:#c9cfdd;stroke-width:2;stroke-dasharray:4 5}
.v-artd .sp-381 :where(.prose) .sq-seq .m{stroke:#1b1f3a;stroke-width:2;fill:none}
.v-artd .sp-381 :where(.prose) .sq-seq .m-b{stroke:#2e5bff}
.v-artd .sp-381 :where(.prose) .sq-seq .mt{fill:#141827;font-size:13.5px;font-weight:700}
.v-artd .sp-381 :where(.prose) .sq-seq .mt-b{fill:#1d3fc4}
.v-artd .sp-381 :where(.prose) .sq-seq .q circle{fill:#f5b400}
.v-artd .sp-381 :where(.prose) .sq-seq .q text{fill:#1b1f3a;font-size:16px;font-weight:800;text-anchor:middle}
.v-artd .sp-381 :where(.prose) .sq-seq .x{stroke:#c4282d;stroke-width:4;stroke-linecap:round}
.v-artd .sp-381 :where(.prose) .sq-seq .nt{fill:#b1262b;font-size:13px;font-weight:800}
.v-artd .sp-381 :where(.prose) .sq-seq .nb{fill:#dfe6ff}
.v-artd .sp-381 :where(.prose) .sq-seq .nbt{fill:#1d3fc4;font-size:12.5px;font-weight:800;text-anchor:middle}
.v-artd .sp-381 :where(.prose) .sq-seq .pc{stroke:#1b1f3a;stroke-width:2;stroke-dasharray:10 6}
.v-artd .sp-381 :where(.prose) .sq-seq .pct{fill:#1b1f3a;font-size:13.5px;font-weight:800}
.v-artd .sp-381 :where(.prose) .sq-seq .pct2{fill:#5b6475;font-size:13px;font-weight:700}
.v-artd .sp-381 :where(.prose) .sq-seq .qt{fill:#5a4500;font-size:13.5px;font-weight:800}
.v-artd .sp-381 :where(.prose) .sq-seq figcaption{margin-top:12px;font-size:15px;line-height:1.65;color:#4a5060;text-align:left}
.v-artd .sp-381 :where(.prose) .qk{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:6px;border-radius:50%;background:var(--yellow);color:var(--navy);font-weight:800;font-size:13px}

/* 확인 목록 작업지 */
.v-artd .sp-381 :where(.prose) .sq-sheet{margin:4px 0 18px;overflow-x:auto}
.v-artd .sp-381 :where(.prose) .sq-sheet table{margin:0;min-width:720px;font-size:14px;border:1px solid var(--line);border-radius:0;background:repeating-linear-gradient(90deg,transparent 0 0)}
.v-artd .sp-381 :where(.prose) .sq-sheet th{background:var(--ink);color:#fff;border:0;font-size:13px;padding:10px}
.v-artd .sp-381 :where(.prose) .sq-sheet td{border-right:1px solid var(--line);vertical-align:top;line-height:1.5}
.v-artd .sp-381 :where(.prose) .sq-sheet td:nth-child(n+3){background:#fcfcfe;min-width:70px}
.v-artd .sp-381 :where(.prose) .sq-sheet td:nth-child(2){color:#4a5060;font-weight:400}

/* 대비 둘 */
.v-artd .sp-381 :where(.prose) .sq-vs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:4px 0 16px}
.v-artd .sp-381 :where(.prose) .sq-vs>div{padding:18px 20px;border-radius:14px;font-size:15px;line-height:1.6}
.v-artd .sp-381 :where(.prose) .sq-vs p{margin:0 0 6px;font-size:16.5px;font-weight:800}
.v-artd .sp-381 :where(.prose) .vs-x{background:var(--soft);color:#4a5060}
.v-artd .sp-381 :where(.prose) .vs-x p{color:#5b6475;text-decoration:line-through;text-decoration-color:#c4282d;text-decoration-thickness:2px}
.v-artd .sp-381 :where(.prose) .vs-o{background:var(--blue);color:#eef1ff}
.v-artd .sp-381 :where(.prose) .vs-o p{color:#fff}

/* 겹친 원 */
.v-artd .sp-381 :where(.prose) .sq-venn{position:relative;height:300px;margin:4px 0 18px}
.v-artd .sp-381 :where(.prose) .vn{position:absolute;top:0;width:300px;height:300px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:0 56px;font-size:15px;font-weight:700}
.v-artd .sp-381 :where(.prose) .vn b{font-size:17px}
.v-artd .sp-381 :where(.prose) .vn span{padding:6px 12px;border-radius:999px;background:#fff;width:max-content;font-size:14.5px}
.v-artd .sp-381 :where(.prose) .vn-t{left:calc(50% - 230px);background:rgba(46,91,255,.14);border:2px solid var(--blue);color:#1d3fc4;align-items:flex-start}
.v-artd .sp-381 :where(.prose) .vn-b{left:calc(50% - 70px);background:rgba(245,180,0,.16);border:2px solid #d9a200;color:#5a4500;align-items:flex-end;text-align:right}
.v-artd .sp-381 :where(.prose) .vn-m{position:absolute;left:50%;top:50%;width:140px;margin:0;transform:translate(-50%,-50%);font-size:13px!important;font-weight:800;line-height:1.45;color:var(--ink);text-align:center}

/* 판단 근거 대 아닌 것 */
.v-artd .sp-381 :where(.prose) .sq-proof{display:grid;grid-template-columns:3fr 2fr;gap:12px;margin:4px 0 16px}
.v-artd .sp-381 :where(.prose) .sq-proof>div{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;padding:16px 18px;border-radius:14px}
.v-artd .sp-381 :where(.prose) .sq-proof p{width:100%;margin:0;font-size:13.5px;font-weight:800}
.v-artd .sp-381 :where(.prose) .pf-y{background:var(--blue2)}
.v-artd .sp-381 :where(.prose) .pf-y p{color:#1d3fc4}
.v-artd .sp-381 :where(.prose) .pf-y span{padding:7px 12px;border-radius:8px;background:#fff;font-size:15px;font-weight:700;color:var(--ink)}
.v-artd .sp-381 :where(.prose) .pf-n{border:1.5px dashed #9aa1b2}
.v-artd .sp-381 :where(.prose) .pf-n p{color:#5b6475}
.v-artd .sp-381 :where(.prose) .pf-n span{font-size:14.5px;font-weight:700;color:#5b6475}
.v-artd .sp-381 :where(.prose) .pf-n span::before{content:"✕ ";color:#c4282d}

/* 톱니 셋 */
.v-artd .sp-381 :where(.prose) .sq-gear{display:flex;justify-content:center;gap:0;margin:6px 0 18px}
.v-artd .sp-381 :where(.prose) .sq-gear span{display:grid;place-items:center;width:150px;height:150px;margin:0 -8px;border-radius:50%;border:12px dotted var(--ink);background:#fff;background-clip:padding-box;text-align:center;font-size:15.5px;font-weight:800;color:var(--ink);padding:10px}
.v-artd .sp-381 :where(.prose) .sq-gear span:nth-child(2){border-color:var(--blue);color:var(--blue);margin-top:40px}

/* 한 줄 양식 */
.v-artd .sp-381 :where(.prose) .sq-log{display:grid;grid-template-columns:repeat(5,1fr);margin:4px 0 16px;border:2px solid var(--ink);border-radius:10px;overflow:hidden}
.v-artd .sp-381 :where(.prose) .sq-log span{padding:12px 8px 34px;font-size:14px;font-weight:800;color:var(--ink);background:#fff}
.v-artd .sp-381 :where(.prose) .sq-log span+span{border-left:1px solid var(--line)}

/* 방송형 안내 */
.v-artd .sp-381 :where(.prose) .sq-cast{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:30px;align-items:center;margin:4px 0 18px}
.v-artd .sp-381 :where(.prose) .sq-cast>span{position:relative;padding:16px 12px;border-radius:12px;text-align:center;font-size:15px;font-weight:800}
.v-artd .sp-381 :where(.prose) .cs-q{background:var(--soft);color:var(--ink)}
.v-artd .sp-381 :where(.prose) .cs-c{background:var(--navy);color:#fff}
.v-artd .sp-381 :where(.prose) .cs-q::after,.v-artd .sp-381 :where(.prose) .cs-c::after{content:"";position:absolute;right:-30px;top:50%;width:28px;border-top:2px solid var(--ink)}
.v-artd .sp-381 :where(.prose) .cs-to{display:grid;gap:8px}
.v-artd .sp-381 :where(.prose) .cs-to span{padding:12px 14px;border-radius:999px;border:2px solid var(--blue);font-size:14.5px;font-weight:800;color:#1d3fc4;text-align:center}

/* 진행 방식 */
.v-artd .sp-381 :where(.prose) .sq-we{margin:56px 0 12px;padding:26px 28px;border-radius:20px;background:var(--blue2)}
.v-artd .sp-381 :where(.prose) .we-k{margin:0 0 4px;font-size:13px;font-weight:800;color:#1d3fc4}
.v-artd .sp-381 :where(.prose) .we-t{margin:0 0 18px;font-size:20px;font-weight:800;color:var(--ink)}
.v-artd .sp-381 :where(.prose) .we-flow{display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:repeat(3,auto);gap:8px 22px;align-items:center;margin-bottom:20px}
.v-artd .sp-381 :where(.prose) .w-in{grid-row:1/4;padding:26px 14px;border-radius:6px 18px 6px 6px;background:#fff;border:2px dashed #9aa1b2;text-align:center;font-size:15.5px;font-weight:800;color:#4a5060}
.v-artd .sp-381 :where(.prose) .w-fix{grid-row:1/4;padding:10px 16px;border-radius:999px;background:var(--yellow);font-size:14.5px;font-weight:800;color:var(--navy)}
.v-artd .sp-381 :where(.prose) .w-out{padding:10px 14px;border-radius:10px;background:#fff;border:2px solid var(--blue);font-size:15px;font-weight:800;color:var(--ink)}
.v-artd .sp-381 :where(.prose) .we-btn{display:inline-flex;padding:13px 24px;border-radius:999px;background:var(--navy);color:#fff!important;font-weight:800;text-decoration:none!important}
.v-artd .sp-381 :where(.prose) .we-btn:hover{background:var(--blue)}

.v-artd .sp-381 :where(.prose) .sq-rel{margin:36px 0 10px!important;padding:16px 0 0!important;border-top:1px solid var(--line)}
.v-artd .sp-381 :where(.prose) .sq-rel li{padding:6px 0}
.v-artd .sp-381 :where(.prose) .sq-rel a{font-weight:700;text-decoration:none}
.v-artd .sp-381 :where(.prose) .sq-rel a::before{content:"→ ";color:var(--sub)}

@media (max-width:720px){
  .v-artd .sp-381 :where(.prose) .sq-lead{font-size:18px}
  .v-artd .sp-381 .prose h2{font-size:23px}
  .v-artd .sp-381 :where(.prose) .sq-s{padding-top:46px}
  .v-artd .sp-381 :where(.prose) .sq-steps{grid-template-columns:1fr}
  .v-artd .sp-381 :where(.prose) .sq-steps li,.v-artd .sp-381 :where(.prose) .sq-steps li:first-child{clip-path:none;border-radius:10px;padding:14px 18px}
  .v-artd .sp-381 :where(.prose) .sq-lens{grid-template-columns:1fr}
  .v-artd .sp-381 :where(.prose) .sq-scope{grid-template-columns:1fr}
  .v-artd .sp-381 :where(.prose) .sc+.sc{border-left:0;border-top:1px solid var(--line)}
  .v-artd .sp-381 :where(.prose) .sq-seq{padding:8px;overflow-x:auto}
  .v-artd .sp-381 :where(.prose) .sq-seq svg{min-width:520px}
  .v-artd .sp-381 :where(.prose) .sq-vs{grid-template-columns:1fr}
  .v-artd .sp-381 :where(.prose) .sq-venn{height:auto;display:grid;gap:10px}
  .v-artd .sp-381 :where(.prose) .vn{position:static;width:auto;height:auto;border-radius:18px;padding:18px;align-items:flex-start!important;text-align:left!important}
  .v-artd .sp-381 :where(.prose) .vn-m{position:static;transform:none;width:auto;padding:12px;border-radius:12px;background:var(--soft)}
  .v-artd .sp-381 :where(.prose) .sq-proof{grid-template-columns:1fr}
  .v-artd .sp-381 :where(.prose) .sq-gear span{width:110px;height:110px;border-width:9px;font-size:13.5px}
  .v-artd .sp-381 :where(.prose) .sq-gear span:nth-child(2){margin-top:30px}
  .v-artd .sp-381 :where(.prose) .sq-log{grid-template-columns:1fr 1fr}
  .v-artd .sp-381 :where(.prose) .sq-log span+span{border-left:0}
  .v-artd .sp-381 :where(.prose) .sq-log span{border-bottom:1px solid var(--line);padding-bottom:22px}
  .v-artd .sp-381 :where(.prose) .sq-cast{grid-template-columns:1fr;gap:14px}
  .v-artd .sp-381 :where(.prose) .sq-cast>span::after{display:none}
  .v-artd .sp-381 :where(.prose) .sq-we{padding:22px 18px}
  .v-artd .sp-381 :where(.prose) .we-flow{grid-template-columns:1fr;grid-template-rows:none}
  .v-artd .sp-381 :where(.prose) .w-in,.v-artd .sp-381 :where(.prose) .w-fix{grid-row:auto;justify-self:start}
}
