.progress-panel{margin-top:18px;padding:18px;border:1px solid #675071;border-radius:18px;background:#21182ddd;color:#eee4f4}.progress-label{display:flex;justify-content:space-between;gap:10px;font-size:.9rem}.progress-panel progress{width:100%;height:12px;accent-color:#c3a0ec;margin-top:12px}.progress-panel p{font-size:.9rem;line-height:1.5;color:#d2c3da}.progress-panel button{width:100%;min-height:46px;margin-top:8px}.quiet-button{background:transparent!important}.identity .refuge-prominent{display:block!important;min-height:48px!important;border:1px solid #c2a4e4!important;background:#503968!important;color:#fff!important;font-size:1rem!important;padding:12px 18px!important}.ambience-grid{display:grid;gap:14px}.ambience-grid button{min-height:64px}.ambience-grid [aria-pressed=true]{border-color:#bbecdb}#welcomeGuide ol{padding-left:24px;line-height:1.65}#welcomeGuide li{margin-bottom:12px}
body[data-ambience=mint] .round-stage{background:radial-gradient(ellipse at 50% 70%,#397b7666,transparent 65%),linear-gradient(#14282d,#231d35)}body[data-ambience=mint] .moon{box-shadow:0 0 60px #a7f4d9}body[data-ambience=ember] .round-stage{background:radial-gradient(ellipse at 50% 70%,#bb552e66,transparent 65%),linear-gradient(#30202a,#201522)}body[data-ambience=ember] .moon{box-shadow:0 0 60px #f6b47e}
.evolution-cinema{width:min(92vw,620px);max-height:90dvh;padding:24px;border:1px solid #ab86cd;border-radius:24px;background:radial-gradient(circle at 50% 44%,#402758,#18111f 65%);color:#f7efff;overflow:hidden}.evolution-cinema::backdrop{background:#0b0614e8}.evolution-theatre{position:relative;isolation:isolate;height:min(48vh,350px);display:grid;place-items:center}.evolution-theatre img{position:absolute;width:65%;height:80%;object-fit:contain;filter:drop-shadow(0 0 18px #d0a5fc66)}.evolution-after{opacity:0}.evolution-ring{position:absolute;width:220px;height:220px;border:2px solid #b4efda;border-radius:50%;box-shadow:0 0 28px #a5e7d755,inset 0 0 24px #ac80e755}.evolution-ring:after{content:'';position:absolute;inset:-18px;border:1px dashed #d7b4ef;border-radius:50%}.evolution-halo{position:absolute;width:90px;height:90px;border-radius:50%;background:#e4d2ff;filter:blur(14px);opacity:0}.evolution-sparks{position:absolute;inset:0;display:grid;place-items:center}.evolution-sparks i{position:absolute;width:5px;height:12px;border-radius:50%;background:#c1f4e3;box-shadow:0 0 12px #dcc5ff;transform:rotate(var(--angle)) translateY(-130px)}.evolution-caption{text-align:center;min-height:48px;line-height:1.5}.evolution-finish{width:100%;min-height:48px}
.evolution-playing .evolution-before{animation:form-gather 4.4s ease-in-out forwards}.evolution-playing .evolution-after{animation:form-reveal 4.4s ease-out forwards}.evolution-playing .evolution-ring{animation:ritual-ring 4.4s ease-in-out forwards}.evolution-playing .evolution-halo{animation:ritual-burst 4.4s ease-in-out forwards}.evolution-playing .evolution-sparks i{animation:ritual-spark 3.5s ease-in-out var(--wait) forwards}
@keyframes form-gather{0%,15%{opacity:1;transform:translateY(0) scale(1)}35%{transform:translateY(-14px) scale(1.05);filter:drop-shadow(0 0 30px #d8c0ff)}52%{opacity:1;transform:scale(.85);filter:brightness(4) drop-shadow(0 0 40px #fff)}62%,100%{opacity:0;transform:scale(.1)}}
@keyframes form-reveal{0%,60%{opacity:0;transform:scale(.12);filter:brightness(4)}73%{opacity:1;transform:scale(1.12);filter:brightness(1.8)}86%{transform:scale(.97)}100%{opacity:1;transform:scale(1);filter:drop-shadow(0 0 22px #c8a2ef)}}
@keyframes ritual-ring{0%{opacity:.3;transform:rotate(0) scale(.8)}50%{opacity:1;transform:rotate(130deg) scale(1.2)}65%{opacity:1;transform:rotate(180deg) scale(.15)}80%{opacity:.8;transform:rotate(210deg) scale(1.45)}100%{opacity:.35;transform:rotate(240deg) scale(1)}}
@keyframes ritual-burst{0%,40%{opacity:0;transform:scale(.2)}61%{opacity:.85;transform:scale(1)}70%{opacity:.7;transform:scale(4)}90%,100%{opacity:0;transform:scale(5)}}
@keyframes ritual-spark{0%{opacity:0;transform:rotate(var(--angle)) translateY(-150px)}20%{opacity:1}75%{opacity:1;transform:rotate(calc(var(--angle) + 100deg)) translateY(-20px)}100%{opacity:0;transform:rotate(calc(var(--angle) + 130deg)) translateY(-180px)}}
.evolution-complete .evolution-before{opacity:0}.evolution-complete .evolution-after{opacity:1}
.evolution-cinema[data-reduced=true] .evolution-theatre *{animation:none!important}.evolution-cinema[data-reduced=true] .evolution-before{opacity:0}.evolution-cinema[data-reduced=true] .evolution-after{opacity:1}.evolution-cinema[data-reduced=true] .evolution-sparks{display:none}
@media(max-width:600px){.evolution-cinema{padding:18px}.evolution-ring{width:180px;height:180px}.progress-panel{padding:14px}}
