/* 신규 41~45 전용. 색은 전역 변수만 사용 */
.p41-crumb{padding:14px 0 0;font-size:.85rem;color:var(--text-dim)}
.p41-crumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}
.p41-crumb li+li::before{content:"›";margin-right:6px}
.p41-crumb a{color:var(--steel)}
.p41-wrap{max-width:1040px;margin:0 auto;padding:0 20px}
.p41-svg{width:100%;height:auto;display:block;margin:24px 0;background:var(--white);border:1px solid var(--paper-dim);border-radius:var(--radius)}
.p41-svg text{font-family:var(--sans);fill:var(--ink)}
.p41-svg .n{fill:var(--paper);stroke:var(--steel);stroke-width:2}
.p41-svg .nr{fill:var(--paper);stroke:var(--red);stroke-width:2.5}
.p41-svg .ln{stroke:var(--steel);stroke-width:3;fill:none}
.p41-svg .lr{stroke:var(--red);stroke-width:3;fill:none}
.p41-svg .fl{fill:var(--steel)}
.p41-svg .fr{fill:var(--red)}
.p41-svg .t1{font-size:17px;font-weight:700}
.p41-svg .t2{font-size:13px;fill:var(--text-dim)}
.p41-svg .g{fill:var(--ink)}
.p41-svg .gw{fill:var(--white);stroke:var(--ink);stroke-width:3}
.p41-svg .gn{stroke:var(--red);stroke-width:4;stroke-linecap:round}
.p41-svg .tk{stroke:var(--steel);stroke-width:2}
.p41-cap{font-size:.85rem;color:var(--text-dim);margin:-12px 0 24px}
/* 표 모바일 카드화 */
.p41-table td,.p41-table th{vertical-align:top}
@media (max-width:640px){
 .p41-table thead{display:none}
 .p41-table,.p41-table tbody,.p41-table tr,.p41-table td{display:block;width:100%}
 .p41-table tr{margin-bottom:14px;border:1px solid var(--paper-dim);border-radius:var(--radius);background:var(--white);padding:6px 0}
 .p41-table td{border:0;padding:6px 14px}
 .p41-table td::before{content:attr(data-label);display:block;font-family:var(--mono);font-size:.74rem;letter-spacing:.05em;color:var(--red)}
}
/* 카드 그리드 */
.p41-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}
.p41-card{background:var(--white);border:1px solid var(--paper-dim);border-top:4px solid var(--red);border-radius:var(--radius);padding:18px}
.p41-card h3{font-size:1.05rem;margin:0 0 8px}
.p41-card p{font-size:.92rem;color:var(--steel);margin:0 0 8px}
.p41-card .tag{display:inline-block;font-family:var(--mono);font-size:.72rem;color:var(--red);margin-bottom:6px}
.p41-cards--2{grid-template-columns:repeat(2,1fr)}
/* 타임라인 */
.p41-tl{list-style:none;margin:24px 0;padding:0 0 0 22px;border-left:3px solid var(--red)}
.p41-tl li{position:relative;margin:0 0 22px;padding-left:18px}
.p41-tl li::before{content:"";position:absolute;left:-32px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--paper);border:3px solid var(--red)}
.p41-tl strong{display:block;font-size:1.02rem}
.p41-tl span{color:var(--steel);font-size:.94rem}
/* 체크리스트 */
.p41-chk{list-style:none;margin:20px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.p41-chk li{background:var(--white);border:1px solid var(--paper-dim);border-radius:var(--radius);padding:12px 14px 12px 42px;position:relative;font-size:.94rem}
.p41-chk li::before{content:"";position:absolute;left:14px;top:14px;width:16px;height:16px;border:2px solid var(--red);border-radius:3px}
/* 용어 */
.p41-dl{margin:20px 0}
.p41-dl dt{font-weight:700;margin-top:14px}
.p41-dl dd{margin:4px 0 0;color:var(--steel)}
.p41-split{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.p41-cta{background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:26px 24px;margin:32px 0;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.p41-cta h2{font-size:1.2rem;margin:0 0 4px;color:var(--paper)}
.p41-cta p{margin:0;color:var(--paper-dim)}
.p41-cta .btns{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:820px){
 .p41-cards,.p41-cards--2{grid-template-columns:1fr 1fr}
 .p41-split{grid-template-columns:1fr}
}
@media (max-width:560px){
 .p41-cards,.p41-cards--2,.p41-chk{grid-template-columns:1fr}
}
