:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;overflow:hidden;background-color:#000;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#fff}.App{width:100vw;height:100vh;position:relative}.loading-screen{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000;z-index:9999;display:flex;justify-content:center;align-items:center;transition:opacity 1.5s ease-in-out,visibility 1.5s ease-in-out}.loading-screen.visible{opacity:1;visibility:visible}.loading-screen.hidden{opacity:0;visibility:hidden;pointer-events:none}.glowing-text{color:#fa0;font-family:Georgia,serif;font-size:2.5rem;letter-spacing:2px;animation:pulseGlow 2s infinite alternate}@keyframes pulseGlow{0%{text-shadow:0 0 10px rgba(255,170,0,.3);opacity:.6}to{text-shadow:0 0 20px rgba(255,170,0,.8),0 0 40px rgba(255,170,0,.6);opacity:1}}.ui-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:20px;z-index:10}.lantern-count{text-align:center;color:#fa0;font-family:Georgia,serif;font-size:1.8rem;text-shadow:0 0 15px rgba(255,170,0,.8);margin-top:2vh;letter-spacing:1px}.wish-form{pointer-events:auto;display:flex;gap:12px;background:#14141499;padding:15px 20px;border-radius:50px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,170,0,.2);max-width:700px;width:95%;margin:0 auto 3vh;box-shadow:0 10px 30px #00000080}.input-author,.input-message{padding:12px 20px;border-radius:25px;border:1px solid rgba(255,255,255,.2);background:#00000080;color:#fff;font-size:1rem;outline:none;transition:all .3s ease}.input-author::placeholder,.input-message::placeholder{color:#ffffff80}.input-author:focus,.input-message:focus{border-color:#fa0;box-shadow:0 0 15px #fa06;background:#000c}.input-author{width:30%}.input-message{width:50%;flex-grow:1}.submit-btn{padding:12px 25px;border-radius:25px;border:none;background:linear-gradient(135deg,#fa0,#f70);color:#000;font-weight:700;font-size:1rem;cursor:pointer;transition:transform .2s,box-shadow .2s;white-space:nowrap}.submit-btn:hover{transform:scale(1.05);box-shadow:0 0 20px #fa09}.popup-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease-out forwards}.popup-box{background:linear-gradient(145deg,#1a1a1a,#0a0a0a);border:1px solid rgba(255,170,0,.5);border-radius:20px;padding:40px 30px;max-width:450px;width:90%;text-align:center;box-shadow:0 0 40px #fa03,inset 0 0 20px #000c}.popup-box p{color:#fff;white-space:pre-wrap;font-family:Georgia,serif;font-size:1.3rem;line-height:1.6;text-shadow:0 2px 4px rgba(0,0,0,.8)}.close-btn{margin-top:25px;padding:10px 30px;border-radius:20px;border:1px solid #ffaa00;background:transparent;color:#fa0;font-size:1rem;cursor:pointer;transition:all .3s}.close-btn:hover{background:#fa0;color:#000;box-shadow:0 0 15px #fa06}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:768px){.wish-form{flex-direction:column;border-radius:20px;padding:20px;gap:15px}.input-author,.input-message,.submit-btn{width:100%;text-align:center}.lantern-count{font-size:1.4rem}}
