.pnmp-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}.pnmp-heading p:last-child{margin-top:10px;color:var(--pn-muted,#606f78)}.pnmp-heading>.text-link{flex-shrink:0}.pnmp-section{scroll-margin-top:100px}
.pnmp-states{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.pnmp-state{display:flex;align-items:center;gap:10px;min-height:86px;padding:18px 24px;border:1px solid var(--pn-border,#e2e8eb);border-radius:12px;background:#fff;color:var(--pn-page-ink,#1c3029);font-size:var(--pn-type-ui,16px);font-weight:600}.pnmp-state strong{margin-left:auto;font-size:var(--pn-type-lg,32px);line-height:1.25}.pnmp-unit{font-size:var(--pn-type-xs,14px);color:var(--pn-muted,#606f78)}.pnmp-state[aria-current],.pnmp-state:hover{border-color:var(--pn-accent,#08774f);background:#f3f8f5}.pnmp-state:focus-visible{outline:3px solid var(--pn-accent,#08774f);outline-offset:3px}
.pnmp-dot{width:9px;height:9px;flex-shrink:0;border-radius:50%;background:#967122}.is-in_progress .pnmp-dot{background:#3164ab}.is-completed .pnmp-dot{background:#08774f}.pnmp-badge{display:inline-flex;align-items:center;border-radius:6px;padding:5px 10px;background:#fbf3df;color:#785719;font-size:var(--pn-type-xs,14px);font-weight:600;line-height:1.6}.pnmp-badge.is-in_progress{background:#edf3ff;color:#2f5793}.pnmp-badge.is-completed{background:#eaf5ee;color:#176640}
.pnmp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.pnmp-card{min-width:0;border:1px solid var(--pn-border,#e2e8eb);border-radius:14px;background:#fff;padding:26px;display:flex;flex-direction:column}.pnmp-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.pnmp-example-label{font-size:var(--pn-type-xs,14px);color:var(--pn-muted,#606f78)}.pnmp-card h3{margin:0 0 8px;overflow-wrap:anywhere}.pnmp-card-note{flex:1;margin-top:12px!important;color:var(--pn-muted,#606f78)}
body.pn-service-theme :is(#main,#pn-main) :is(.pnmp-region,.pnmp-example-note){font-size:var(--pn-type-xs,14px)!important;line-height:1.65!important;color:var(--pn-muted,#606f78)}.pnmp-example-note{margin:0 0 18px}.pnmp-example-note>span{display:inline-block;border:1px solid var(--pn-border,#e2e8eb);padding:2px 7px;border-radius:4px;margin-right:6px}
.pnmp-steps{list-style:none;display:flex;padding:24px 0 0!important;margin:24px 0 0!important;border-top:1px solid var(--pn-border,#e2e8eb);gap:0}.pnmp-steps>li{position:relative;flex:1;display:flex;align-items:center;flex-direction:column;gap:8px;text-align:center}.pnmp-step-mark{display:block;position:relative;z-index:1;width:10px;height:10px;border-radius:50%;background:#dbe3df}.pnmp-steps>li:not(:last-child):before{content:'';position:absolute;left:50%;right:-50%;top:4px;height:2px;background:#e7ece9}.pnmp-steps>.is-reached .pnmp-step-mark{background:var(--pn-accent,#08774f)}.pnmp-steps>li[aria-current=step] .pnmp-step-mark{box-shadow:0 0 0 4px #e7f2eb}.pnmp-steps>li[aria-current=step]{font-weight:600!important;color:var(--pn-accent,#08774f)}body.pn-service-theme :is(#pn-main,#main) .pnmp-steps>li{font-size:var(--pn-type-xs,14px)!important;line-height:1.5!important;color:#64746f}.pnmp-updated{margin-top:20px;color:var(--pn-muted,#606f78)}
.pnmp-result{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.pnmp-empty{padding:36px;border:1px dashed var(--pn-border,#e2e8eb);border-radius:12px;text-align:center}.pnmp-empty p{margin-top:10px;color:var(--pn-muted,#606f78)}.pnmp-course-link{margin-top:24px;display:inline-flex;align-items:center;gap:18px;padding:12px 18px;border:1px solid var(--pn-border,#e2e8eb);border-radius:8px;font-size:16px;font-weight:600;background:#fff;color:var(--pn-accent,#08774f)}
@media(max-width:1000px){.pnmp-grid{gap:14px}.pnmp-card{padding:20px}.pnmp-state{padding:16px;gap:7px}}
@media(max-width:767px){.pnmp-section{scroll-margin-top:80px}.pnmp-heading{align-items:flex-start;flex-direction:column;gap:14px}.pnmp-heading>.text-link{min-height:44px}.pnmp-states{gap:8px}.pnmp-state{min-height:96px;display:grid;grid-template-columns:auto 1fr;gap:5px;padding:14px 10px;font-size:14px}.pnmp-state>strong{margin:0;grid-column:1/2;font-size:28px}.pnmp-dot{display:none}.pnmp-state>span:nth-child(2){grid-column:1/-1;white-space:nowrap}.pnmp-unit{align-self:center}.pnmp-grid{grid-template-columns:1fr;gap:16px}.pnmp-card{padding:22px}.pnmp-steps{margin-top:20px!important}.pnmp-empty{padding:26px 18px}}

body.pn-service-theme :is(#main,#pn-main) .pnmp-example-note{margin:0 0 18px!important}.pnmp-manage{margin-bottom:20px}

.pnmp-card{padding:0;overflow:hidden}.pnmp-card-body{padding:26px;display:flex;flex-direction:column;flex:1;min-width:0}.pnmp-image{position:relative;aspect-ratio:16/9;width:100%;flex-shrink:0;background:#edf3ee;overflow:hidden}.pnmp-image>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}.pnmp-image>span{position:absolute;right:12px;bottom:12px;padding:4px 8px;border-radius:5px;background:#ffffffed;color:#334d42;font-size:14px;line-height:1.6}.pnmp-image-empty{display:flex;align-items:center;justify-content:center;height:100%;font-size:14px;color:#64746f}
@media(max-width:1000px){.pnmp-card-body{padding:20px}}@media(max-width:767px){.pnmp-card-body{padding:22px}}

.pnmp-card-link{display:inline-flex;align-items:center;min-height:44px;margin-top:16px;color:var(--pn-accent,#08774f);font-size:var(--pn-type-ui,16px);font-weight:600}.pnmp-card-link:focus-visible{outline:3px solid var(--pn-accent,#08774f);outline-offset:3px}

/* 현재 제작 단계: 중심점은 고정하고 두 겹의 잔잔한 파장만 바깥으로 확장한다. */
@media (prefers-reduced-motion: no-preference) {
  body.pn-service-theme .pnmp-steps>li[aria-current="step"] .pnmp-step-mark::before,
  body.pn-service-theme .pnmp-steps>li[aria-current="step"] .pnmp-step-mark::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: var(--pn-accent, #08774f);
    pointer-events: none;
    animation: pnmp-status-ripple 3s cubic-bezier(.2,.55,.4,1) infinite;
  }
  body.pn-service-theme .pnmp-steps>li[aria-current="step"] .pnmp-step-mark::after {
    animation-delay: -1.5s;
  }
}
@keyframes pnmp-status-ripple {
  0% { transform: scale(.8); opacity: 0; }
  18% { opacity: .26; }
  65% { opacity: .08; }
  100% { transform: scale(3.2); opacity: 0; }
}
@media print {
  .pnmp-step-mark::before, .pnmp-step-mark::after { display: none !important; }
}

/* Reviewed environment progress: uses the existing site's palette and type. */
.pnmp-priority{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.45fr);gap:20px;padding:22px;margin:0 0 24px;border:1px solid var(--pn-border,#e2e8eb);border-radius:12px;background:#f5f9f6}
.pnmp-priority h3{margin:12px 0 8px;font-size:20px;line-height:1.5;overflow-wrap:anywhere}
.pnmp-priority p{color:var(--pn-muted,#606f78);line-height:1.7;margin:8px 0}
.pnmp-priority .pnmp-updated{display:block;margin-top:12px;font-size:12px}
.pnmp-priority-media{margin:0;min-width:0;align-self:start}
.pnmp-priority-media img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
.pnmp-priority-media figcaption{font-size:12px;line-height:1.6;margin-top:6px;color:var(--pn-muted,#606f78)}
.pnmp-priority-empty{display:flex;align-items:center;justify-content:center;text-align:center;min-height:100px;background:#eaf0ec;border-radius:8px;padding:12px;font-size:14px;color:#52665c}
.pnmp-next{padding-top:12px;margin-top:16px;border-top:1px solid var(--pn-border,#e2e8eb);font-size:14px}
.pnmp-next strong{display:block;margin-bottom:4px}.pnmp-next .pnmp-updated{margin-top:6px}
.pnmp-course-progress{margin-top:32px;margin-bottom:32px}.pnmp-preview-copy .pnmp-updated{display:block;font-size:11px;line-height:1.5;margin-top:5px}
.pnmp-work-counts{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.pnmp-work-counts a{padding:6px 10px;border:1px solid #dae6de;border-radius:6px;font-size:13px;color:#294d3c;background:#fff}.pnmp-work-counts strong{margin-left:5px}
.pnmp-work-badge{display:inline-block!important;font-size:12px!important;color:#405d50!important;background:#edf4ee;padding:3px 7px;border-radius:4px;margin:5px 0}
.pnmp-catalog-note{font-size:13px;color:#53665a;margin:0 0 18px}.pnmp-environment-meta{font-size:13px;color:#607066;margin:8px 0}
.pnmp-environment .pnmp-priority{grid-template-columns:1fr;padding:0;margin:0 0 16px;border:0;background:transparent}.pnmp-environment .pnmp-priority-empty{min-height:110px}.pnmp-environment .pnmp-priority h3{font-size:18px}.pnmp-environment .pnmp-grid{margin-top:24px}.pnmp-environment .pnmp-card-body>.text-link{margin:8px 0}
@media(max-width:767px){.pnmp-priority{grid-template-columns:1fr;padding:18px;gap:14px}.pnmp-priority h3{font-size:18px}.pnmp-priority-media{max-width:100%}}

/* The homepage stays bounded while every record remains inside its own list. */
.pnmp-columns-section .pnmp-preview-list{height:var(--pnmp-list-height,auto);max-height:var(--pnmp-list-height,600px);flex-shrink:0;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#9ab3a6 transparent;overscroll-behavior-y:contain;overflow-anchor:none;min-height:0}
.pnmp-columns-section .pnmp-preview-list::-webkit-scrollbar{width:6px}
.pnmp-columns-section .pnmp-preview-list::-webkit-scrollbar-thumb{background:#9ab3a6;border-radius:3px}
.pnmp-columns-section .pnmp-preview-list:focus-visible{outline:2px solid var(--pn-accent,#08774f);outline-offset:3px}

/* Attribution is visible outside card links, including the homepage list. */
.pnmp-onsite-credit{display:flex;flex-direction:column;gap:3px;margin:0 0 14px;color:#53665a;font-size:12px;line-height:1.65;overflow-wrap:anywhere}
.pnmp-onsite-credit a{color:#08774f;text-decoration:underline;text-underline-offset:3px}
.pnmp-onsite-credit a:focus-visible{outline:2px solid #08774f;outline-offset:3px}
.pnmp-priority-media .pnmp-onsite-credit{margin:6px 0 0}
.pnmp-onsite-media img{max-width:966px;aspect-ratio:auto;object-fit:contain}
