body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:#fff}html{scroll-behavior:smooth}.app{min-height:100vh;background:linear-gradient(135deg,#0f0f23,#1a0b2e,#16213e,#0f3460,#533483);position:relative;overflow-x:hidden}.nav{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;position:relative;z-index:10}.nav-brand{font-size:1.5rem;font-weight:700;color:#fff}.nav-menu{display:flex;gap:1rem}.nav-link{background:none;border:none;color:#fff;font-size:1rem;cursor:pointer;transition:color .3s ease;padding:.5rem 1rem;border-radius:.5rem}.nav-link:hover{color:#4ecdc4;background:#ffffff1a}.connection-status{display:flex;align-items:center}.status-indicator{font-size:.875rem;padding:.25rem .75rem;border-radius:1rem;font-weight:500;transition:all .3s ease}.status-indicator.connected{color:#4ecdc4;background:#4ecdc41a;border:1px solid rgba(78,205,196,.3)}.status-indicator.disconnected{color:#ff6b6b;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3)}.hero{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;padding:2rem}.hero-content{text-align:center;max-width:64rem;margin:0 auto}.hero-title{font-size:clamp(3rem,8vw,6rem);font-weight:900;margin-bottom:1.5rem;line-height:1.1}.gradient-text{background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#45b7d1,#96ceb4,#feca57);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 4s ease infinite}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.hero-subtitle{font-size:clamp(1.125rem,2.5vw,1.5rem);color:#d1d5db;margin-bottom:2rem;max-width:48rem;margin-left:auto;margin-right:auto}.action-buttons{display:flex;flex-direction:column;gap:1rem;justify-content:center;align-items:center;margin-bottom:3rem}@media (min-width: 640px){.action-buttons{flex-direction:row}}.btn-primary{background:linear-gradient(45deg,#ff6b6b,#4ecdc4);color:#fff;font-weight:600;padding:1rem 2rem;border-radius:9999px;font-size:1.125rem;border:none;cursor:pointer;transition:all .3s ease;transform:scale(1);box-shadow:0 10px 25px #ff6b6b4d}.btn-primary:hover{background:linear-gradient(45deg,#ff5252,#26a69a);transform:scale(1.05);box-shadow:0 15px 35px #ff6b6b66}.btn-secondary{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:#fff;font-weight:600;padding:1rem 2rem;border-radius:9999px;font-size:1.125rem;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#fff3}.features-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;max-width:64rem;margin:0 auto}@media (min-width: 768px){.features-grid{grid-template-columns:repeat(3,1fr)}}.feature-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:.75rem;padding:1.5rem;transition:all .3s ease;text-align:center}.feature-card:hover{background:#fff3;transform:translateY(-5px)}.feature-icon{font-size:3rem;margin-bottom:.75rem;display:block}.feature-title{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:.5rem}.feature-description{color:#d1d5db;line-height:1.6}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.modal{background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:1rem;padding:0;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:slideIn .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.modal-header h2{color:#fff;font-size:1.5rem;font-weight:600;margin:0}.modal-close{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:background .3s ease}.modal-close:hover{background:#ffffff1a}.modal-content{padding:1.5rem}.input-group{margin-bottom:1.5rem}.input-group label{display:block;color:#fff;font-weight:500;margin-bottom:.5rem}.input-group input{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.2);border-radius:.5rem;background:#ffffff1a;color:#fff;font-size:1rem;transition:all .3s ease}.input-group input:focus{outline:none;border-color:#4ecdc4;background:#ffffff26}.input-group input::placeholder{color:#fff9}.error-message{color:#ff6b6b;font-size:.875rem;margin-top:.5rem;padding:.5rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:.5rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.game-room{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#0f0f23,#1a0b2e,#16213e,#0f3460,#533483);display:flex;align-items:center;justify-content:center;z-index:100}.game-room-content{background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:1rem;padding:2rem;max-width:600px;width:90%;text-align:center}.room-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.room-header h2{color:#fff;font-size:2rem;font-weight:700;margin:0}.room-status{color:#4ecdc4;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.room-instructions{color:#d1d5db;font-size:1.125rem;margin-bottom:2rem}.room-instructions strong{color:#feca57;font-size:1.5rem;letter-spacing:.1em}.players-list{background:#ffffff0d;border-radius:.75rem;padding:1.5rem;margin-top:1rem}.players-list h3{color:#fff;font-size:1.25rem;margin-bottom:1rem}.players-list ul{list-style:none;padding:0;margin:0}.players-list li{color:#d1d5db;padding:.5rem;border-radius:.5rem;margin-bottom:.5rem;background:#ffffff0d}.players-list li.host{color:#4ecdc4;font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:float 3s ease-in-out infinite}@media (max-width: 768px){.nav{padding:1rem}.nav-menu{gap:.5rem}.nav-link{font-size:.875rem;padding:.25rem .5rem}.hero,.feature-card{padding:1rem}.modal{width:95%;margin:1rem}.modal-header,.modal-content{padding:1rem}.modal-actions{flex-direction:column}.room-header{flex-direction:column;gap:1rem}.room-header h2{font-size:1.5rem}}
