:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh;background:#0a0a0a;color:#fafafa}.shell{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(ellipse at 50% 80%,#1a0a10,#0a0a0a 70%)}.rose-container{width:min(80vw,400px);animation:fadeIn 1.5s ease-out}.rose-svg{width:100%;filter:drop-shadow(0 0 20px rgba(180,30,60,.3))}.stem{stroke-dasharray:300;stroke-dashoffset:300;animation:drawLine 1s ease-out .2s forwards}.thorn{opacity:0;animation:fadeIn .3s ease-out 1s forwards}.leaf{transform-origin:center}.leaf-left{opacity:0;animation:leafGrowLeft .8s ease-out 1.2s forwards}.leaf-right{opacity:0;animation:leafGrowRight .8s ease-out 1.5s forwards}.petal{transform-origin:100px 120px}.petal-outer-1{opacity:0;animation:petalBloom .8s ease-out 1.6s forwards,petalSway 4s ease-in-out 2.4s infinite}.petal-outer-2{opacity:0;animation:petalBloom .8s ease-out 1.8s forwards,petalSway 4.5s ease-in-out 2.6s infinite}.petal-outer-3{opacity:0;animation:petalBloom .8s ease-out 2s forwards,petalSway 3.8s ease-in-out 2.8s infinite}.petal-outer-4{opacity:0;animation:petalBloom .8s ease-out 2.2s forwards,petalSway 4.2s ease-in-out 3s infinite}.petal-mid-1{opacity:0;animation:petalBloom .7s ease-out 2.4s forwards,petalSway 3.5s ease-in-out 3.1s infinite}.petal-mid-2{opacity:0;animation:petalBloom .7s ease-out 2.6s forwards,petalSway 4s ease-in-out 3.3s infinite}.petal-mid-3{opacity:0;animation:petalBloom .7s ease-out 2.8s forwards,petalSway 3.2s ease-in-out 3.5s infinite}.petal-inner-1{opacity:0;animation:petalBloom .6s ease-out 3s forwards}.petal-inner-2{opacity:0;animation:petalBloom .6s ease-out 3.1s forwards}.center{opacity:0;animation:fadeIn .5s ease-out 3.4s forwards}.spiral{opacity:0;animation:fadeIn .4s ease-out 3.6s forwards}@keyframes fadeIn{to{opacity:1}}@keyframes drawLine{to{stroke-dashoffset:0}}@keyframes leafGrowLeft{0%{opacity:0;transform:scale(.3) rotate(30deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes leafGrowRight{0%{opacity:0;transform:scale(.3) rotate(-30deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes petalBloom{0%{opacity:0;transform:scale(.2) rotate(-20deg)}60%{opacity:1;transform:scale(1.05) rotate(3deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes petalSway{0%,to{transform:rotate(0)}25%{transform:rotate(1.5deg)}75%{transform:rotate(-1.5deg)}}
