/* Each stage is a different operating story. Static markup shows its outcome. */
.cm-program-pages>article{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:3.5vw;padding:38px 0}
.cm-supporter-scene{width:100%;max-width:420px;margin:auto;min-width:0}
.cm-supporter-canvas{position:relative;aspect-ratio:400/340;background:#f6e3e9;border:1px solid #a8879a;overflow:hidden}
.cm-supporter-canvas>svg{display:block;width:100%;height:100%;font-family:Syne,Pretendard,sans-serif;fill:#402838}
.cm-supporter-grid{fill:none;stroke:#a8879a;stroke-opacity:.14;stroke-width:.7}
.cm-supporter-example{position:absolute;top:10px;left:12px;font-size:9px;line-height:1;color:#795769}
.cm-supporter-scene>p{margin:13px 0 0;color:#ddc8d3;font-size:12px;line-height:1.7;text-align:center;word-break:keep-all}
.cm-supporter-guide .cm-supporter-canvas{background:#e6dfee}
.cm-supporter-mission .cm-supporter-canvas{background:#e6ebd7}
.cm-supporter-review .cm-supporter-canvas{background:#f3e8d7}
.cm-supporter-finish .cm-supporter-canvas{background:#ead9e8}
.cm-spr-heading{font-family:Pretendard,sans-serif;font-size:20px;font-weight:750;letter-spacing:-.5px}
.cm-spr-label{font-family:Pretendard,sans-serif;font-size:15px;font-weight:600}
.cm-spr-small{font-size:10px;font-weight:600;letter-spacing:.4px}
.cm-spr-motion{transform-box:fill-box;transform-origin:center}
.cm-program.cm-enhanced .is-active .cm-spr-motion{animation:var(--spr-action) 8s ease-in-out infinite both paused;animation-delay:var(--spr-delay,0s)}
.cm-program[data-cm-motion-running=true] .is-active .cm-spr-motion{animation-play-state:running}
.cm-spr-application{--spr-action:spr-application}
.cm-spr-select-check{--spr-action:spr-select-check;stroke-dasharray:1;stroke-dashoffset:0}
.cm-spr-recruit-tag{--spr-action:spr-recruit-tag;transform-origin:top center}
.cm-spr-result{--spr-action:spr-result}
.cm-spr-welcome{--spr-action:spr-welcome;transform-origin:center bottom}
@keyframes spr-application{0%,5%{opacity:0;transform:translate(-48px,16px) rotate(-4deg)}20%,95%{opacity:1;transform:translate(0) rotate(0)}100%{opacity:0;transform:translate(0)}}
@keyframes spr-select-check{0%,30%{stroke-dashoffset:1}44%,95%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}
@keyframes spr-recruit-tag{0%,5%{transform:rotate(-4deg)}12%{transform:rotate(4deg)}18%,100%{transform:rotate(0)}}
@keyframes spr-result{0%,53%{opacity:0;transform:translateY(14px)}67%,95%{opacity:1;transform:translateY(0)}100%{opacity:0}}
@keyframes spr-welcome{0%,54%,64%,74%,100%{transform:translateY(0)}59%,69%{transform:translateY(-7px)}}
.cm-spr-guide-lines{--spr-action:spr-guide-lines;transform-origin:left center}
.cm-spr-guide-date{--spr-action:spr-guide-date}
.cm-spr-guide-check{--spr-action:spr-guide-check;stroke-dasharray:1;stroke-dashoffset:0}
.cm-spr-guide-message{--spr-action:spr-guide-message}
.cm-spr-guide-person{--spr-action:spr-welcome}
@keyframes spr-guide-lines{0%,7%{transform:scaleX(.1);opacity:.1}24%,95%{transform:scaleX(1);opacity:1}100%{opacity:.1}}
@keyframes spr-guide-date{0%,17%{opacity:0;transform:scale(.6)}28%{opacity:1;transform:scale(1.15)}33%,95%{opacity:1;transform:scale(1)}100%{opacity:0}}
@keyframes spr-guide-check{0%,30%{stroke-dashoffset:1}57%,95%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}
@keyframes spr-guide-message{0%,56%{opacity:0;transform:translateY(10px)}66%,95%{opacity:1;transform:translateY(0)}100%{opacity:0}}
.cm-spr-mission-card{--spr-action:spr-mission-card}
.cm-spr-mission-cursor{--spr-action:spr-mission-cursor;opacity:0}
.cm-spr-mission-reminder{--spr-action:spr-mission-reminder;opacity:0}
.cm-spr-mission-done{--spr-action:spr-mission-done}
.cm-spr-mission-check{--spr-action:spr-mission-check}
.cm-spr-mission-person{--spr-action:spr-mission-person}
@keyframes spr-mission-card{0%,13%{transform:translateX(-220px)}24%,46%{transform:translateX(-110px)}62%,95%{transform:translateX(0);opacity:1}100%{transform:translateX(0);opacity:0}}
@keyframes spr-mission-cursor{0%{opacity:0;transform:translate(122px,247px)}8%,13%{opacity:1;transform:translate(122px,207px)}24%,46%{opacity:1;transform:translate(232px,207px)}62%,68%{opacity:1;transform:translate(342px,207px)}74%,100%{opacity:0;transform:translate(352px,245px)}}
@keyframes spr-mission-reminder{0%,29%{opacity:0;transform:translateY(7px)}36%,43%{opacity:1;transform:translateY(0)}50%,100%{opacity:0;transform:translateY(-4px)}}
@keyframes spr-mission-done{0%,65%{opacity:0;transform:translateY(12px)}73%,95%{opacity:1;transform:translateY(0)}100%{opacity:0}}
@keyframes spr-mission-check{0%,62%{opacity:0}70%,95%{opacity:1}100%{opacity:0}}
@keyframes spr-mission-person{0%,65%,74%,83%,100%{transform:translateY(0)}69%,79%{transform:translateY(-7px)}}
.cm-spr-review-underline{--spr-action:spr-review-underline;stroke-dasharray:1;stroke-dashoffset:0;opacity:0}
.cm-spr-review-note{--spr-action:spr-review-note;opacity:0}
.cm-spr-review-fixed{--spr-action:spr-review-fixed}
.cm-spr-review-pencil{--spr-action:spr-review-pencil;opacity:0}
.cm-spr-review-approved{--spr-action:spr-review-approved}
@keyframes spr-review-underline{0%,9%{stroke-dashoffset:1;opacity:0}13%{stroke-dashoffset:1;opacity:1}31%,46%{stroke-dashoffset:0;opacity:1}56%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes spr-review-note{0%,30%{opacity:0;transform:translateY(8px) rotate(3deg)}38%,47%{opacity:1;transform:translateY(0) rotate(-3deg)}57%,100%{opacity:0;transform:translateY(-5px)}}
@keyframes spr-review-fixed{0%,51%{opacity:0;clip-path:inset(0 100% 0 0)}64%,95%{opacity:1;clip-path:inset(0)}100%{opacity:0}}
@keyframes spr-review-pencil{0%,7%{opacity:0;transform:translate(88px,226px)}13%{opacity:1;transform:translate(88px,226px)}31%,41%{opacity:1;transform:translate(242px,226px)}49%{opacity:1;transform:translate(89px,221px)}64%{opacity:1;transform:translate(246px,221px)}70%,100%{opacity:0;transform:translate(258px,234px)}}
@keyframes spr-review-approved{0%,66%{opacity:0;transform:scale(1.15)}73%{opacity:1;transform:scale(.96)}77%,95%{opacity:1;transform:scale(1)}100%{opacity:0}}
.cm-spr-report{--spr-action:spr-report}
.cm-spr-certificate{--spr-action:spr-certificate;transform-origin:center bottom}
.cm-spr-gift{--spr-action:spr-gift;transform-origin:center bottom}
.cm-spr-finish-person{--spr-action:spr-mission-person}
.cm-spr-finish-spark{--spr-action:spr-finish-spark;opacity:0}
@keyframes spr-report{0%,6%{opacity:0;transform:translateY(14px)}22%,95%{opacity:1;transform:translateY(0)}100%{opacity:0}}
@keyframes spr-certificate{0%,22%{opacity:0;transform:translateY(35px) rotate(-8deg)}41%,95%{opacity:1;transform:translateY(0) rotate(0)}100%{opacity:0}}
@keyframes spr-gift{0%,45%{opacity:0;transform:scale(.6) translateY(-20px)}57%{opacity:1;transform:scale(1.06) translateY(0)}63%,95%{opacity:1;transform:scale(1)}100%{opacity:0}}
@keyframes spr-finish-spark{0%,58%{opacity:0;transform:scale(.6)}65%,74%{opacity:1;transform:scale(1)}83%,100%{opacity:0;transform:scale(1.1)}}
@media(min-width:761px) and (max-width:1050px){.cm-program-pages>article{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:26px}.cm-program-tasks>div{gap:5px}.cm-program-copy>h3{font-size:26px}}
@media(max-width:760px){.cm-program-pages>article{grid-template-columns:1fr;gap:22px;padding:24px 0}.cm-supporter-scene{max-width:230px}.cm-supporter-scene>p{font-size:11px;margin-top:9px}.cm-supporter-example{font-size:8px;left:9px;top:9px}}
@media(prefers-reduced-motion:reduce){.cm-program.cm-enhanced .cm-spr-motion{animation:none!important}}
