*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--background: #000;--text-primary: #e0e0e0;--text-secondary: #a0a0a0;--accent: #7cb342;--accent-glow: rgba(124, 179, 66, .3);--transition-smooth: cubic-bezier(.22, 1, .36, 1)}html,body{width:100%;height:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background);color:var(--text-primary)}#root{width:100%;height:100%}.app{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.name-entry-container{text-align:center;max-width:400px;padding:2rem;animation:fadeIn 1s var(--transition-smooth)}.title{font-size:3rem;font-weight:300;letter-spacing:.1em;margin-bottom:.5rem;color:var(--text-primary)}.subtitle{font-size:1rem;color:var(--text-secondary);margin-bottom:3rem;font-weight:300}.name-form{display:flex;flex-direction:column;gap:1.5rem}.name-label{font-size:1.1rem;color:var(--text-secondary);font-weight:300}.name-input{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1rem 1.5rem;font-size:1.1rem;color:var(--text-primary);text-align:center;transition:all .3s var(--transition-smooth);outline:none}.name-input:focus{border-color:var(--accent);background:#ffffff14;box-shadow:0 0 20px var(--accent-glow)}.name-input::placeholder{color:var(--text-secondary);opacity:.5}.start-button{background:var(--accent);border:none;border-radius:8px;padding:1rem 2rem;font-size:1.1rem;color:#000;font-weight:500;cursor:pointer;transition:all .3s var(--transition-smooth);outline:none}.start-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px var(--accent-glow)}.start-button:active:not(:disabled){transform:translateY(0)}.start-button:disabled{opacity:.3;cursor:not-allowed}.start-button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.flower-scene{position:relative;display:flex;align-items:center;justify-content:center;animation:fadeIn 1.5s var(--transition-smooth)}.instruction{position:absolute;bottom:3rem;left:50%;transform:translate(-50%);font-size:1.2rem;color:var(--text-secondary);font-weight:300;letter-spacing:.05em;animation:pulse 3s ease-in-out infinite}.completion-container{text-align:center;animation:fadeIn 2s var(--transition-smooth);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;max-width:600px;margin:0 auto}.completion-title{font-size:2rem;font-weight:300;margin-bottom:1rem;color:var(--text-primary);letter-spacing:.05em}.completion-message{font-size:1.2rem;color:var(--text-secondary);margin-bottom:3rem;font-style:italic;font-weight:300}.restart-button{background:var(--accent);border:none;border-radius:8px;padding:1rem 2rem;font-size:1.1rem;color:#000;font-weight:500;cursor:pointer;transition:all .3s var(--transition-smooth);outline:none;margin-top:2rem}.restart-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--accent-glow)}.restart-button:active{transform:translateY(0)}.restart-button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (max-width: 768px){.title{font-size:2.5rem}.subtitle{font-size:.9rem;margin-bottom:2rem}.name-entry-container{max-width:90%;padding:1.5rem}.completion-title{font-size:1.5rem}.completion-message{font-size:1rem;margin-bottom:2rem}.instruction{bottom:2rem;font-size:1rem}}@media (max-width: 480px){html,body{overflow:auto}.app{min-height:100vh;height:auto;padding:1rem}.title{font-size:2rem}.subtitle{font-size:.85rem}.name-input,.start-button,.restart-button{font-size:1rem;padding:.9rem 1.5rem}.completion-title{font-size:1.3rem;padding:0 1rem}.completion-message{font-size:.95rem;padding:0 1rem}.instruction{bottom:1rem;font-size:.9rem;padding:0 1rem}}@media (hover: none) and (pointer: coarse){.start-button,.restart-button{padding:1.2rem 2rem;font-size:1.1rem}.start-button:hover,.restart-button:hover{transform:none}.start-button:active:not(:disabled),.restart-button:active{transform:scale(.98);background:#6fa336}}@media (max-width: 896px) and (orientation: landscape){.app{overflow-y:auto}.flower-scene{transform:scale(.8)}.instruction{bottom:.5rem}}.flower-container{position:relative;width:300px;height:400px;display:flex;align-items:center;justify-content:center;z-index:2}.flower-svg{width:100%;height:100%;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));position:relative;z-index:2}.stage-seed{animation:seedPop .6s var(--transition-smooth)}.stage-sprout{animation:sproutGrow 1s var(--transition-smooth)}.stage-stem{animation:stemRise 1.2s var(--transition-smooth)}.stage-bud{animation:budForm 1s var(--transition-smooth)}.stage-bloom{animation:bloomOpen 2s var(--transition-smooth)}.water-drops{animation:waterFall .8s ease-in}.drop{opacity:0;animation:dropFall .8s ease-in forwards}.drop-1{animation-delay:0s}.drop-2{animation-delay:.1s}.drop-3{animation-delay:.05s}.bloomed .stage-bloom{animation:bloomPulse 3s ease-in-out infinite}.bloom-glow{animation:glowPulse 2s ease-in-out infinite}.petals{transform-origin:100px 110px;animation:tulipSway 4s ease-in-out infinite}.petal{animation:petalGentle 6s ease-in-out infinite}.petal-1{animation-delay:0s}.petal-2{animation-delay:.3s}.petal-3{animation-delay:.6s}.petal-4{animation-delay:.9s}.petal-back{animation-delay:.1s}.flower-center{animation:centerGlow 2s ease-in-out infinite}.progress-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:1}.progress-ring-progress{transition:stroke-dashoffset .8s var(--transition-smooth),opacity .3s ease;filter:drop-shadow(0 0 4px var(--accent))}@keyframes seedPop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes sproutGrow{0%{opacity:0;transform:translateY(10px) scale(.5)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes stemRise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes budForm{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes bloomOpen{0%{opacity:0;transform:scale(.2) rotate(-20deg)}60%{transform:scale(1.1) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes dropFall{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(220px)}}@keyframes waterFall{0%{opacity:0}20%{opacity:1}to{opacity:0}}@keyframes bloomPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes glowPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}}@keyframes tulipSway{0%,to{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}@keyframes petalGentle{0%,to{opacity:.9}50%{opacity:1}}@keyframes centerGlow{0%,to{filter:brightness(1)}50%{filter:brightness(1.3)}}@media (prefers-reduced-motion: reduce){.stage-seed,.stage-sprout,.stage-stem,.stage-bud,.stage-bloom{animation:fadeIn .3s ease-in}.bloomed .stage-bloom,.bloom-glow,.petals,.petal,.flower-center{animation:none}.drop{animation:none;opacity:0}}@media (max-width: 768px){.flower-container{width:250px;height:350px}.progress-ring{width:250px;height:250px}}@media (max-width: 480px){.flower-container{width:200px;height:300px}.progress-ring{width:200px;height:200px}}@media (max-width: 896px) and (orientation: landscape){.flower-container{width:220px;height:280px}.progress-ring{width:220px;height:220px}}.watering-can-button{width:80px;height:80px;background:transparent;border:none;cursor:pointer;padding:0;transition:all .3s var(--transition-smooth)}.watering-can-button:hover:not(.disabled){transform:scale(1.1) rotate(-5deg)}.watering-can-button:active:not(.disabled){transform:scale(.95) rotate(-10deg)}.watering-can-button.disabled{opacity:.3;cursor:not-allowed}.watering-can-button.watering{animation:wateringPour .8s var(--transition-smooth)}.watering-can-svg{width:100%;height:100%;filter:drop-shadow(0 2px 8px rgba(90,124,140,.4));transition:filter .3s var(--transition-smooth)}.watering-can-button:hover:not(.disabled) .watering-can-svg{filter:drop-shadow(0 4px 12px rgba(90,124,140,.6))}.watering-can-button.watering .watering-can-svg{filter:drop-shadow(0 4px 16px rgba(74,158,255,.8))}@keyframes wateringPour{0%{transform:rotate(0)}30%{transform:rotate(-15deg) translateY(-5px)}70%{transform:rotate(-15deg) translateY(-5px)}to{transform:rotate(0)}}.watering-can-button:focus-visible{outline:2px solid var(--accent);outline-offset:8px;border-radius:50%}.watering-can-button:focus-visible:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border:2px solid var(--accent);border-radius:50%;animation:focusPulse 2s ease-in-out infinite}@keyframes focusPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.watering-can-button.disabled:active{animation:shake .3s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.cooldown-timer{font-size:1.2rem;font-weight:500;color:var(--accent);background:#7cb3421a;padding:6px 12px;border-radius:20px;border:1px solid rgba(124,179,66,.3);min-width:50px;text-align:center;animation:timerPulse 1s ease-in-out infinite}@keyframes timerPulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@media (prefers-reduced-motion: reduce){.watering-can-button{transition:opacity .2s ease}.watering-can-button:hover:not(.disabled){transform:none}.watering-can-button:active:not(.disabled){transform:none}.watering-can-button.watering{animation:none}.watering-can-button:focus-visible:after{animation:none;opacity:1}.watering-can-button.disabled:active,.cooldown-timer{animation:none}}@media (max-width: 768px){.watering-can-container{top:30px;left:30px}.watering-can-button{width:70px;height:70px}.cooldown-timer{font-size:1rem;padding:5px 10px;min-width:45px}}@media (max-width: 480px){.watering-can-container{top:20px;left:20px}.watering-can-button{width:60px;height:60px}.cooldown-timer{font-size:.9rem;padding:4px 8px;min-width:40px}}@media (max-width: 896px) and (orientation: landscape){.watering-can-container{top:15px;left:15px}.watering-can-button{width:55px;height:55px}}@media (hover: none) and (pointer: coarse){.watering-can-button{width:90px;height:90px}.watering-can-button:hover:not(.disabled){transform:none}.watering-can-button:active:not(.disabled){transform:scale(.95)}}
