*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0d0221;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}#root{width:100%;min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0;padding:0}button,input,textarea,select{font-family:inherit}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:#1a0033}::-webkit-scrollbar-thumb{background:#639;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#8a2be2}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#1a0033,#303,#4d0052);position:relative;overflow:hidden}.login-container:before{content:"🦇";position:absolute;font-size:3rem;opacity:.1;animation:float 6s ease-in-out infinite}.login-box{background:#000000b3;border:3px solid #ff6600;border-radius:20px;padding:40px;max-width:450px;width:100%;box-shadow:0 0 30px #ff660080,0 0 60px #8a2be24d;animation:glow 2s ease-in-out infinite alternate}.login-header{text-align:center;margin-bottom:30px}.login-header h1{color:#f60;font-size:2rem;margin-bottom:10px;text-shadow:0 0 10px rgba(255,102,0,.8)}.login-subtitle{color:#b19cd9;font-size:1rem;font-style:italic}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#f93;font-weight:600;font-size:.9rem}.form-group input{padding:12px 16px;border:2px solid #663399;border-radius:10px;background:#ffffff1a;color:#fff;font-size:1rem;transition:all .3s ease}.form-group input:focus{outline:none;border-color:#f60;background:#ffffff26;box-shadow:0 0 15px #ff66004d}.form-group input::placeholder{color:#fff6}.error-message{background:#f003;border:1px solid #ff0000;border-radius:8px;padding:10px;color:#f66;text-align:center;font-size:.9rem}.btn-primary{padding:14px 28px;background:linear-gradient(135deg,#f60,#ff8c00);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;box-shadow:0 4px 15px #f606}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 25px #f609;background:linear-gradient(135deg,#f70,#f90)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.login-footer{margin-top:20px;text-align:center}.login-footer p{color:#b19cd9;font-size:.85rem}@keyframes float{0%,to{transform:translateY(0) translate(0)}50%{transform:translateY(-20px) translate(10px)}}@keyframes glow{0%{box-shadow:0 0 20px #f606,0 0 40px #8a2be233}to{box-shadow:0 0 30px #f609,0 0 60px #8a2be266}}@media(max-width:480px){.login-box{padding:30px 20px}.login-header h1{font-size:1.5rem}.login-subtitle{font-size:.9rem}}.welcome-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#0d0221,#1a0033,#240046);position:relative;overflow:hidden}.welcome-container:before{content:"";position:absolute;width:300px;height:300px;background:radial-gradient(circle,rgba(255,102,0,.2) 0%,transparent 70%);border-radius:50%;top:-100px;right:-100px;animation:pulse 4s ease-in-out infinite}.welcome-container:after{content:"";position:absolute;width:200px;height:200px;background:radial-gradient(circle,rgba(138,43,226,.2) 0%,transparent 70%);border-radius:50%;bottom:-50px;left:-50px;animation:pulse 5s ease-in-out infinite}.welcome-content{background:#000c;border:3px solid #ff6600;border-radius:25px;padding:50px 40px;max-width:600px;width:100%;box-shadow:0 0 40px #f609,0 0 80px #8a2be266;position:relative;z-index:1;animation:fadeIn .8s ease-out}.welcome-header{text-align:center;margin-bottom:40px}.spooky-title{font-size:2.5rem;color:#f60;margin-bottom:20px;text-shadow:0 0 20px rgba(255,102,0,.8),0 0 40px rgba(255,102,0,.4);animation:flicker 3s ease-in-out infinite}.decorative-icons{display:flex;justify-content:center;gap:20px;font-size:2rem;animation:bounce 2s ease-in-out infinite}.decorative-icons span{display:inline-block;animation:float 3s ease-in-out infinite}.decorative-icons span:nth-child(2){animation-delay:.5s}.decorative-icons span:nth-child(3){animation-delay:1s}.decorative-icons span:nth-child(4){animation-delay:1.5s}.decorative-icons span:nth-child(5){animation-delay:2s}.welcome-description{background:#6393;border:2px solid #663399;border-radius:15px;padding:30px;margin-bottom:30px}.welcome-description h2{color:#f93;font-size:1.5rem;margin-bottom:20px;text-align:center}.welcome-description ul{list-style:none;padding:0;margin:0}.welcome-description li{color:#e0d0ff;font-size:1.1rem;padding:10px 0;border-bottom:1px solid rgba(102,51,153,.3)}.welcome-description li:last-child{border-bottom:none}.theme-selection{background:#8a2be233;border:2px solid #8a2be2;border-radius:15px;padding:25px;margin-bottom:20px}.theme-selection h3{color:#b19cd9;font-size:1.2rem;margin-bottom:15px;text-align:center}.theme-options{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.btn-theme{padding:12px 16px;background:#6633994d;color:#e0d0ff;border:2px solid #663399;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-theme:hover{transform:translateY(-2px);border-color:#8a2be2;background:#8a2be266}.btn-theme.active{background:linear-gradient(135deg,#8a2be2,#9d4edd);border-color:#b19cd9;color:#fff;transform:scale(1.05);box-shadow:0 4px 20px #8a2be299}.rounds-selection{background:#f603;border:2px solid #ff6600;border-radius:15px;padding:25px;margin-bottom:25px}.rounds-selection h3{color:#f93;font-size:1.2rem;margin-bottom:15px;text-align:center}.rounds-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.btn-rounds{padding:14px 20px;background:#6633994d;color:#e0d0ff;border:2px solid #663399;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-rounds:hover{transform:translateY(-2px);border-color:#8a2be2;background:#8a2be266}.btn-rounds.active{background:linear-gradient(135deg,#f60,#ff8c00);border-color:#f93;color:#fff;transform:scale(1.05);box-shadow:0 4px 20px #f609}.welcome-actions{text-align:center;margin-bottom:20px}.btn-start{padding:18px 50px;background:linear-gradient(135deg,#f60,#ff8c00);color:#fff;border:3px solid #ff9933;border-radius:15px;font-size:1.3rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;box-shadow:0 6px 20px #ff660080;display:inline-flex;align-items:center;gap:15px;position:relative;overflow:hidden}.btn-start:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-start:hover:before{width:300px;height:300px}.btn-start:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 30px #ff6600b3;border-color:#fa3}.btn-start:active{transform:translateY(-1px) scale(1.02)}.btn-icon{font-size:1.5rem;z-index:1}.welcome-footer{text-align:center}.spooky-quote{color:#b19cd9;font-size:1.2rem;font-style:italic;font-weight:600;text-shadow:0 0 10px rgba(177,156,217,.5)}@keyframes pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.2);opacity:.5}}@keyframes flicker{0%,to{opacity:1}50%{opacity:.8}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media(max-width:768px){.welcome-content{padding:40px 30px}.spooky-title{font-size:2rem}.theme-options,.rounds-options{grid-template-columns:repeat(2,1fr)}.decorative-icons{font-size:1.5rem;gap:15px}.welcome-description h2{font-size:1.3rem}.welcome-description li{font-size:1rem}.btn-start{padding:16px 40px;font-size:1.1rem}}@media(max-width:480px){.welcome-content{padding:30px 20px}.spooky-title{font-size:1.6rem}.decorative-icons{font-size:1.2rem;gap:10px}.welcome-description{padding:20px}.btn-start{padding:14px 30px;font-size:1rem;gap:10px}.btn-icon{font-size:1.2rem}.theme-selection{padding:20px 15px}.theme-selection h3{font-size:1.1rem}.btn-theme{padding:10px 12px;font-size:.9rem}.rounds-selection{padding:20px 15px}.rounds-selection h3{font-size:1.1rem}.btn-rounds{padding:12px 16px;font-size:1rem}}.player-setup-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#1a0033,#2d0052,#3d0066)}.player-setup-box{background:#000c;border:3px solid #8a2be2;border-radius:25px;padding:40px;max-width:650px;width:100%;box-shadow:0 0 40px #8a2be299,0 0 80px #ff66004d}.setup-header{text-align:center;margin-bottom:30px}.setup-header h1{color:#8a2be2;font-size:2.2rem;margin-bottom:10px;text-shadow:0 0 15px rgba(138,43,226,.8)}.setup-subtitle{color:#b19cd9;font-size:1rem}.add-player-section{margin-bottom:30px}.input-group{display:flex;gap:10px;margin-bottom:10px}.input-group input{flex:1;padding:14px 18px;border:2px solid #663399;border-radius:12px;background:#ffffff1a;color:#fff;font-size:1.1rem;transition:all .3s ease}.input-group input:focus{outline:none;border-color:#8a2be2;background:#ffffff26;box-shadow:0 0 15px #8a2be266}.input-group input::placeholder{color:#ffffff80}.btn-add{padding:14px 24px;background:linear-gradient(135deg,#8a2be2,#9d4edd);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;white-space:nowrap}.btn-add:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #8a2be280}.btn-add:disabled{opacity:.5;cursor:not-allowed}.players-list{margin-bottom:30px;min-height:200px}.players-list h3{color:#f93;font-size:1.2rem;margin-bottom:15px;text-align:center}.empty-list{background:#6393;border:2px dashed #663399;border-radius:15px;padding:40px 20px;text-align:center}.empty-list p{color:#b19cd9;font-size:1.1rem}.players-grid{display:flex;flex-direction:column;gap:12px}.player-card{display:flex;align-items:center;gap:15px;background:linear-gradient(135deg,#8a2be24d,#6633994d);border:2px solid #8a2be2;border-radius:12px;padding:15px 20px;transition:all .3s ease;animation:slideIn .4s ease-out}.player-card:hover{transform:translate(5px);box-shadow:0 4px 15px #8a2be266}.player-number{display:flex;align-items:center;justify-content:center;width:35px;height:35px;background:#8a2be2;color:#fff;border-radius:50%;font-weight:700;font-size:1.1rem;flex-shrink:0}.player-name{flex:1;color:#fff;font-size:1.2rem;font-weight:600}.btn-remove{background:transparent;border:none;cursor:pointer;font-size:1.2rem;transition:all .3s ease;padding:5px;opacity:.7}.btn-remove:hover{opacity:1;transform:scale(1.2) rotate(90deg)}.setup-actions{text-align:center}.btn-start-game{padding:16px 50px;background:linear-gradient(135deg,#f60,#ff8c00);color:#fff;border:3px solid #ff9933;border-radius:15px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;box-shadow:0 6px 20px #ff660080}.btn-start-game:hover:not(:disabled){transform:translateY(-3px) scale(1.05);box-shadow:0 8px 30px #ff6600b3}.btn-start-game:disabled{opacity:.5;cursor:not-allowed;transform:none}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@media(max-width:768px){.player-setup-box{padding:30px 25px}.setup-header h1{font-size:1.8rem}.input-group{flex-direction:column}.btn-add{width:100%}}@media(max-width:480px){.player-setup-box{padding:25px 20px}.setup-header h1{font-size:1.5rem}.player-card{padding:12px 15px}.player-name{font-size:1rem}.btn-start-game{padding:14px 40px;font-size:1rem}}.game-screen-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#0d0221,#1a0033,#240046,#3c096c,#5a189a)}.game-box{background:#000000d9;border:3px solid #ff6600;border-radius:25px;padding:30px;max-width:700px;width:100%;box-shadow:0 0 50px #f609,0 0 100px #8a2be266}.game-header{text-align:center;margin-bottom:25px}.game-header h1{color:#f60;font-size:2rem;margin-bottom:15px;text-shadow:0 0 20px rgba(255,102,0,.8)}.round-info{display:flex;justify-content:center}.round-badge{background:linear-gradient(135deg,#8a2be2,#9d4edd);color:#fff;padding:10px 25px;border-radius:25px;font-size:1.1rem;font-weight:700;box-shadow:0 4px 15px #8a2be280}.word-section{background:#6633994d;border:3px solid #663399;border-radius:20px;padding:40px;margin-bottom:30px;min-height:180px;display:flex;align-items:center;justify-content:center}.word-draw{width:100%;text-align:center}.btn-draw{padding:18px 50px;background:linear-gradient(135deg,#f60,#ff8c00);color:#fff;border:3px solid #ff9933;border-radius:15px;font-size:1.4rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;box-shadow:0 6px 25px #f609}.btn-draw:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 35px #f60c}.btn-draw:active{transform:translateY(-1px) scale(1.02)}.word-display{width:100%;text-align:center;animation:fadeIn .5s ease-out}.word-label{color:#b19cd9;font-size:1rem;margin-bottom:15px;text-transform:uppercase;letter-spacing:2px}.word-text{color:#f60;font-size:2rem;font-weight:700;text-shadow:0 0 20px rgba(255,102,0,.6);padding:20px;background:#00000080;border-radius:15px;animation:pulse 2s ease-in-out infinite}.players-section{margin-bottom:30px;animation:slideUp .5s ease-out}.players-section h2{color:#f93;font-size:1.3rem;text-align:center;margin-bottom:20px}.players-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.player-button{background:linear-gradient(135deg,#8a2be266,#6396);border:2px solid #8a2be2;border-radius:15px;padding:20px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:15px;color:#fff}.player-button:hover{transform:translateY(-5px);box-shadow:0 8px 25px #8a2be299;border-color:#f60;background:linear-gradient(135deg,#f606,#8a2be266)}.player-button:active{transform:translateY(-2px);animation:pointAdded .4s ease-out}.player-emoji{font-size:2.5rem}.player-info{flex:1;text-align:left}.player-button-name{font-size:1.2rem;font-weight:700;margin-bottom:5px}.player-score{color:#fc0;font-size:1rem;font-weight:600}.scoreboard{background:#0009;border:2px solid #663399;border-radius:15px;padding:20px}.scoreboard h3{color:#8a2be2;font-size:1.2rem;text-align:center;margin-bottom:15px}.scoreboard-list{display:flex;flex-direction:column;gap:10px}.scoreboard-item{display:flex;align-items:center;gap:15px;background:#6393;border:1px solid #663399;border-radius:10px;padding:12px 15px;transition:all .3s ease}.scoreboard-item:hover{background:#8a2be24d}.rank{display:flex;align-items:center;justify-content:center;width:35px;height:35px;background:#639;color:#fff;border-radius:50%;font-weight:700;font-size:.9rem;flex-shrink:0}.scoreboard-name{flex:1;color:#e0d0ff;font-size:1.1rem;font-weight:600}.scoreboard-score{color:#fc0;font-size:1.1rem;font-weight:700}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes pointAdded{0%{transform:translateY(-2px) scale(1)}50%{transform:translateY(-10px) scale(1.1);box-shadow:0 15px 40px #f60c}to{transform:translateY(-2px) scale(1)}}@media(max-width:768px){.game-box{padding:25px 20px}.game-header h1{font-size:1.6rem}.word-section{padding:30px 20px}.word-text{font-size:1.5rem}.players-buttons{grid-template-columns:1fr}}@media(max-width:480px){.game-box{padding:20px 15px}.game-header h1{font-size:1.4rem}.round-badge{font-size:1rem;padding:8px 20px}.word-text{font-size:1.3rem;padding:15px}.btn-draw{padding:16px 40px;font-size:1.2rem}.player-button{padding:15px}.player-emoji{font-size:2rem}.player-button-name{font-size:1rem}.player-score{font-size:.9rem}}.results-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#1a0033,#3c096c,#5a189a);position:relative;overflow:hidden}.results-box{background:#000000d9;border:3px solid #ffcc00;border-radius:25px;padding:40px;max-width:650px;width:100%;box-shadow:0 0 60px #fc09,0 0 120px #f606;position:relative;z-index:1;animation:fadeIn .8s ease-out}.results-header{text-align:center;margin-bottom:40px}.results-header h1{color:#fc0;font-size:2.5rem;margin-bottom:30px;text-shadow:0 0 25px rgba(255,204,0,.8);animation:bounce 2s ease-in-out infinite}.winner-announcement{background:linear-gradient(135deg,#fc03,#f603);border:3px solid #ff6600;border-radius:20px;padding:30px;display:flex;align-items:center;justify-content:center;gap:20px;animation:glow 2s ease-in-out infinite alternate}.winner-crown{font-size:3rem;animation:rotate 4s ease-in-out infinite}.winner-info{text-align:center}.winner-label{color:#f93;font-size:1rem;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}.winner-name{color:#fc0;font-size:2rem;font-weight:700;margin-bottom:10px;text-shadow:0 0 15px rgba(255,204,0,.6)}.winner-score{color:#fff;font-size:1.3rem;font-weight:600}.results-ranking{margin-bottom:30px}.results-ranking h2{color:#8a2be2;font-size:1.5rem;text-align:center;margin-bottom:20px}.ranking-list{display:flex;flex-direction:column;gap:12px}.ranking-item{display:flex;align-items:center;gap:15px;background:#6633994d;border:2px solid #663399;border-radius:15px;padding:20px;transition:all .3s ease;animation:slideIn .5s ease-out;position:relative}.ranking-item:hover{transform:translate(10px);box-shadow:0 6px 25px #8a2be280}.ranking-item.first-place{background:linear-gradient(135deg,#ffcc004d,#ff66004d);border-color:#fc0;border-width:3px}.ranking-item.first-place:hover{box-shadow:0 6px 30px #fc09}.ranking-position{display:flex;flex-direction:column;align-items:center;gap:5px;flex-shrink:0}.medal{font-size:2.5rem}.position-number{color:#b19cd9;font-size:.9rem;font-weight:600}.ranking-player{flex:1}.ranking-name{color:#fff;font-size:1.3rem;font-weight:700;margin-bottom:5px}.ranking-score{color:#fc0;font-size:1.1rem;font-weight:600}.winner-badge{background:linear-gradient(135deg,#fc0,#ff8c00);color:#000;padding:8px 16px;border-radius:20px;font-size:.9rem;font-weight:700;text-transform:uppercase;animation:pulse 1.5s ease-in-out infinite}.results-actions{text-align:center;margin-bottom:20px}.btn-play-again{padding:18px 50px;background:linear-gradient(135deg,#f60,#ff8c00);color:#fff;border:3px solid #ff9933;border-radius:15px;font-size:1.3rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;box-shadow:0 6px 25px #f609}.btn-play-again:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 35px #f60c}.btn-play-again:active{transform:translateY(-1px) scale(1.02)}.results-footer{text-align:center}.thank-you{color:#b19cd9;font-size:1.2rem;font-style:italic}.confetti{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.confetti-piece{position:absolute;width:10px;height:10px;background:#fc0;top:-10px;opacity:0;animation:confettiFall 5s linear infinite}.confetti-piece:nth-child(2n){background:#f60}.confetti-piece:nth-child(3n){background:#8a2be2}.confetti-piece:nth-child(4n){background:#f06}.confetti-piece:nth-child(5n){width:8px;height:8px;background:#0f8}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%{box-shadow:0 0 20px #f606}to{box-shadow:0 0 40px #fc09}}@keyframes rotate{0%,to{transform:rotate(-15deg)}50%{transform:rotate(15deg)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes confettiFall{0%{top:-10px;opacity:1}to{top:100%;opacity:0;transform:translate(100px) rotate(360deg)}}@media(max-width:768px){.results-box{padding:30px 25px}.results-header h1{font-size:2rem}.winner-announcement{padding:25px 20px}.winner-crown{font-size:2.5rem}.winner-name{font-size:1.6rem}.winner-score,.ranking-name{font-size:1.1rem}.medal{font-size:2rem}}@media(max-width:480px){.results-box{padding:25px 20px}.results-header h1{font-size:1.6rem}.winner-announcement{padding:20px 15px;gap:10px}.winner-crown{font-size:2rem}.winner-name{font-size:1.4rem}.winner-score{font-size:1rem}.ranking-item{padding:15px}.ranking-name,.ranking-score{font-size:1rem}.medal{font-size:1.8rem}.btn-play-again{padding:16px 40px;font-size:1.1rem}}.app{min-height:100vh;width:100%}
