@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes bounce-in{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes rotateIn{0%{opacity:0;transform:rotate(-10deg)}to{opacity:1;transform:rotate(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #2d5fa84d}50%{box-shadow:0 0 0 10px #2d5fa800}}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-out fadeIn}.animate-fadeIn{animation:.5s ease-out forwards fadeIn}.animate-slide-up{animation:.4s ease-out slideUp}.animate-slideUp{animation:.5s ease-out forwards slideUp}.animate-scale-in{animation:.2s ease-out scaleIn}.animate-bounce-in{animation:.6s ease-out bounce-in}.animate-slide-in-left{animation:.3s ease-out slideInLeft}.animate-slide-in-right{animation:.3s ease-out slideInRight}.animate-slide-in-down{animation:.3s ease-out slideInDown}.animate-rotate-in{animation:.5s ease-out rotateIn}.animate-pulse-glow{animation:2s ease-in-out infinite pulse-glow}.animate-gradient-shift{animation:3s infinite gradient-shift}.animate-float{animation:3s ease-in-out infinite float}.animate-countUp{animation:.5s ease-out forwards countUp}
.sp-paper{--sp-text:30 27 24;--sp-surface:253 252 247;--sp-muted:120 113 108;--sp-ring:139 92 246;font-family:var(--font-courier-prime),"Courier Prime","Courier New",Courier,monospace;color:rgb(var(--sp-text));background-color:rgb(var(--sp-surface));border-radius:6px;max-width:68ch;margin-inline:auto;padding:3.5rem clamp(1.25rem,4vw,4rem);font-size:16px;line-height:1.5;box-shadow:0 1px 3px #0000001f,0 8px 30px #00000014}.dark .sp-paper{--sp-text:226 232 240;--sp-surface:23 27 38;--sp-muted:148 163 184;box-shadow:0 1px 3px #00000080,0 8px 30px #00000059}.sp-act-title{text-align:center;letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--sp-muted));margin:2.5rem 0 1.75rem;font-size:.95em;font-weight:700}.sp-act-title:first-child{margin-top:0}.sp-scene{cursor:pointer;border:1px solid #0000;border-radius:8px;margin:0 -1rem;padding:.85rem 1rem;scroll-margin-top:6rem;transition:background-color .16s,border-color .16s,box-shadow .16s;position:relative}.sp-scene:hover{background-color:rgb(var(--sp-ring)/.05)}.sp-scene--active{background-color:rgb(var(--sp-ring)/.06);border-color:rgb(var(--sp-ring)/.5);box-shadow:0 0 0 3px rgb(var(--sp-ring)/.18),0 0 22px rgb(var(--sp-ring)/.22)}.sp-scene-heading{text-transform:uppercase;letter-spacing:.02em;margin:1.4rem 0 .6rem;font-weight:700}.sp-scene>.sp-scene-heading:first-child{margin-top:0}.sp-action{white-space:pre-wrap;margin:0 0 .85rem}.sp-character{text-transform:uppercase;margin:.85rem 0 0;padding-left:21ch}.sp-parenthetical{max-width:32ch;color:rgb(var(--sp-muted));margin:0;padding-left:15ch;font-style:italic}.sp-dialogue{white-space:pre-wrap;max-width:45ch;margin:0 0 .2rem;padding-left:10ch}.sp-transition{text-transform:uppercase;text-align:right;margin:.85rem 0;font-weight:700}.sp-centered{text-align:center;text-transform:uppercase;margin:1.1rem 0}.sp-lyric{max-width:45ch;margin:0 0 .2rem;padding-left:10ch;font-style:italic}.sp-music{color:#be185d;background-color:#ec48990f;border-left:3px solid #ec4899b3;border-radius:0 4px 4px 0;margin:.6rem 0;padding:.35rem .75rem;font-style:italic}.dark .sp-music{color:#f472b6}.sp-blank{height:.75rem}.sp-stream-caret{background-color:rgb(var(--sp-ring));width:.6ch;margin-left:1px;animation:1s steps(2,start) infinite sp-caret-blink;display:inline-block}@keyframes sp-caret-blink{to{visibility:hidden}}@media (prefers-reduced-motion:reduce){.sp-scene,.sp-stream-caret{transition:none;animation:none}}@media (max-width:640px){.sp-paper{padding:2rem 1.1rem;font-size:14px}.sp-character{padding-left:10ch}.sp-parenthetical{max-width:none;padding-left:7ch}.sp-dialogue,.sp-lyric{max-width:none;padding-left:4ch}}
