.py{--py-ease:cubic-bezier(0.16,1,0.3,1);--py-gold:#ffd68c}.py-stage{position:relative;min-height:min(90svh,880px);margin-top:calc(-1 * clamp(32px, 5vw, 64px));display:grid;place-items:center;padding:120px 24px 90px;overflow:hidden;isolation:isolate;color:#fff;background:radial-gradient(110% 80% at 50% 100%,#3a1470 0,#170433 45%,#07010f 100%)}.py-glow{position:absolute;left:50%;bottom:-30%;width:min(1100px,140vw);aspect-ratio:1;translate:-50% 0;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(255,170,70,.28),rgba(160,80,255,.12) 50%,transparent 72%);animation:py-breathe 7s ease-in-out infinite;pointer-events:none}@keyframes py-breathe{0%,to{scale:.94;opacity:.8}50%{scale:1.04;opacity:1}}.py-ask{width:min(760px,100%);text-align:center}.py-title{margin:0 0 clamp(30px,4vw,48px);font:600 clamp(40px,6.4vw,84px)/1.02 var(--pk-font-display);letter-spacing:-.03em;animation:py-rise 1.1s var(--py-ease) both}@keyframes py-rise{0%{opacity:0;transform:translateY(22px)}}.py-field{position:relative;animation:py-rise 1.1s var(--py-ease) .12s both}.py-field textarea{display:block;width:100%;min-height:3.6em;padding:0 0 18px;border:0;border-bottom:1.5px solid hsla(0,0%,100%,.22);background:none;color:#fff;font:400 clamp(24px,2.8vw,34px)/1.4 var(--pk-font-display);text-align:center;resize:none;outline:none;caret-color:var(--py-gold);transition:border-color .3s ease,opacity .6s ease}.py-field textarea:focus{border-bottom-color:var(--py-gold)}.py-example{position:absolute;inset:0 0 auto;font:italic 400 clamp(24px,2.8vw,34px)/1.4 var(--pk-font-display);color:hsla(0,0%,100%,.34);pointer-events:none;animation:py-example 3.6s ease both}@keyframes py-example{0%{opacity:0;transform:translateY(8px);filter:blur(4px)}12%,82%{opacity:1;transform:none;filter:blur(0)}to{opacity:0;transform:translateY(-6px);filter:blur(3px)}}.py-ask.is-rising .py-field textarea{color:transparent}.py-lift{position:absolute;inset:0;pointer-events:none}.py-lift p{margin:0;font:400 clamp(24px,2.8vw,34px)/1.4 var(--pk-font-display);color:var(--py-gold);text-shadow:0 0 24px rgba(255,190,90,.8);animation:py-carry 1.25s cubic-bezier(.5,0,.6,1) both}@keyframes py-carry{0%{color:#fff;text-shadow:none;transform:none;opacity:1;filter:blur(0)}30%{color:var(--py-gold);text-shadow:0 0 24px rgba(255,190,90,.9)}to{transform:translateY(-160px) scale(1.04);opacity:0;filter:blur(10px)}}.py-lift i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);border-radius:50%;background:var(--py-gold);box-shadow:0 0 10px 2px rgba(255,190,90,.8);opacity:0;animation:py-spark 1.3s ease-out both;animation-delay:var(--d)}@keyframes py-spark{0%{opacity:0;transform:translate(0) scale(.4)}20%{opacity:1}to{opacity:0;transform:translate(var(--dx),-220px) scale(1)}}.py-ask.is-rising .py-go,.py-ask.is-rising .py-moods{opacity:.25;transition:opacity .4s ease}.py-moods{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:28px 0 0;animation:py-rise 1.1s var(--py-ease) .22s both}.py-moods button{height:36px;padding:0 15px;border:0;border-radius:999px;background:hsla(0,0%,100%,.08);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.14);color:hsla(0,0%,100%,.72);font:500 14px/1 var(--pk-font-sans);transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s var(--pk-spring,ease)}.py-moods button:hover{color:#fff}.py-moods button.is-on{background:var(--py-gold);color:#2a1200;box-shadow:none;transform:scale(1.04)}.py-go{margin-top:36px;height:58px;padding:0 44px;border:0;border-radius:999px;background:#fff;color:#23064a;font:600 18px/1 var(--pk-font-sans);box-shadow:0 20px 50px -18px rgba(255,190,90,.55);transition:transform .2s var(--pk-spring,ease),opacity .3s ease,box-shadow .3s ease;animation:py-rise 1.1s var(--py-ease) .3s both}.py-go:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 26px 60px -18px rgba(255,190,90,.7)}.py-go:disabled{opacity:.35;cursor:default}.py-result{max-width:760px;margin:0 auto;padding:clamp(50px,7vw,90px) 0 0;scroll-margin-top:80px}.py-page{position:relative;padding:clamp(32px,5vw,64px) clamp(26px,5vw,64px);border-radius:28px;background:#fbf7ef;color:#2a1d10;box-shadow:0 0 0 1px rgba(176,124,31,.18),0 40px 80px -40px rgba(60,20,0,.45);animation:py-unfold .9s var(--py-ease) both}[data-theme=dark] .py-page{background:#1c1426;color:#f4ecdf;box-shadow:0 0 0 1px rgba(255,214,140,.16),0 40px 80px -40px rgba(0,0,0,.8)}@keyframes py-unfold{0%{opacity:0;transform:translateY(30px) scale(.98)}}.py-page__kicker{margin:0 0 26px;font:700 12px/1.3 var(--pk-font-sans);letter-spacing:.16em;text-transform:uppercase;color:#b07c1f}.py-words p{margin:0 0 1.1em;font:400 clamp(21px,2.3vw,27px)/1.65 var(--pk-font-display)}.py-words span{display:inline;opacity:0;animation:py-word .7s ease both}@keyframes py-word{0%{opacity:0;filter:blur(5px)}to{opacity:1;filter:blur(0)}}.py-verses{margin:34px 0 0;padding:30px 0 0;list-style:none;border-top:1px solid rgba(176,124,31,.25);display:grid;gap:20px}.py-verses li{animation:py-rise .9s var(--py-ease) both;animation-delay:calc(var(--after) + var(--i) * .15s)}.py-verses p{margin:0 0 8px;font:400 18px/1.55 var(--pk-font-display)}.py-verses span{font:700 12px/1 var(--pk-font-sans);letter-spacing:.14em;text-transform:uppercase;color:#b07c1f}.py-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:28px 0 0;opacity:0;transform:translateY(12px);transition:opacity .6s ease,transform .8s var(--py-ease);pointer-events:none}.py-actions.is-on{opacity:1;transform:none;pointer-events:auto}.py-actions button{height:46px;padding:0 22px;border:0;border-radius:999px;background:var(--pk-card,#fff);color:var(--pk-text);font:600 15px/1 var(--pk-font-sans);box-shadow:0 0 0 1px var(--pk-border),0 10px 24px -16px rgba(40,0,100,.35);transition:transform .2s var(--pk-spring,ease)}.py-actions button:hover{transform:translateY(-2px)}.py-actions .py-actions__main{background:var(--pk-violet);color:#fff;box-shadow:0 14px 30px -14px rgba(98,0,237,.7)}@media (max-width:820px){.py-stage{margin-top:-32px;padding:110px 20px 70px;min-height:88svh}.py-moods button{height:34px;font-size:13px}}@media (prefers-reduced-motion:reduce){.py-example,.py-field,.py-glow,.py-go,.py-moods,.py-page,.py-title,.py-verses li{animation:none}.py-words span{animation:none;opacity:1}}