.game-scroller{-webkit-user-select:none;user-select:none;flex-direction:column;height:100vh;display:flex;position:relative;overflow:hidden}.game-header{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#0003;padding:15px 20px;position:relative}.game-header h1{color:#fff;text-shadow:2px 2px 4px #0000004d;margin:0 0 15px;font-size:2.5rem;font-weight:700}.game-info{margin-bottom:15px}.game-title{color:#fff;margin-bottom:5px;font-size:1.5rem;font-weight:700}.game-description{color:#ffffffe6;margin-bottom:10px;font-size:1rem}.difficulty{text-transform:uppercase;letter-spacing:1px;border-radius:15px;padding:4px 12px;font-size:.8rem;font-weight:700;display:inline-block}.difficulty-easy{color:#fff;background:#4caf50}.difficulty-medium{color:#fff;background:#ff9800}.difficulty-hard{color:#fff;background:#f44336}.game-counter{color:#fffc;font-size:1rem}.game-container{flex:1;justify-content:center;align-items:flex-start;width:100%;height:100%;padding:0;transition:all .3s ease-in-out;display:flex;position:relative}.game-container.transitioning{opacity:.7;transform:scale(.95)}.navigation-hints{z-index:5;flex-direction:column;gap:20px;display:flex;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.hint{color:#ffffffb3;flex-direction:column;align-items:center;font-size:.8rem;animation:2s infinite pulse;display:flex}.arrow{margin-bottom:5px;font-size:1.5rem}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1;transform:scale(1.1)}}.game-dots{z-index:5;flex-direction:column;gap:15px;display:flex;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.dot{cursor:pointer;background:#ffffff4d;border-radius:50%;width:12px;height:12px;transition:all .3s}.dot.active{background:#fff;transform:scale(1.3);box-shadow:0 0 10px #ffffff80}.dot:hover{background:#ffffffb3;transform:scale(1.1)}@media (max-width:768px){.game-header h1{font-size:2rem}.game-title{font-size:1.3rem}.navigation-hints{font-size:.7rem;right:10px}.game-dots{left:10px}.dot{width:10px;height:10px}}@media (max-width:480px){.game-header{padding:15px}.game-header h1{font-size:1.8rem}.game-container{padding:15px}.navigation-hints{display:none}}.game-loading,.no-games{color:#fff;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:50vh;display:flex}.loading-spinner{border:4px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:50px;height:50px;margin-bottom:20px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.game-placeholder{color:#fff;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:40px;display:flex}.game-placeholder p{color:#fffc;margin:10px 0;font-size:1.2rem}@media (prefers-reduced-motion:no-preference){.game-container{transition:all .3s cubic-bezier(.4,0,.2,1)}}
.community{color:#fff;max-width:1200px;min-height:100vh;margin:0 auto;padding:30px}.community-header{text-align:center;margin-bottom:40px}.community-header h2{color:#fff;margin-bottom:10px;font-size:2.5rem}.community-header p{color:#ffffffe6;margin:0;font-size:1.2rem}.community-loading{color:#fff;flex-direction:column;justify-content:center;align-items:center;min-height:50vh;display:flex}.loading-spinner{border:4px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:50px;height:50px;margin-bottom:20px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.games-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px;margin-top:30px;display:grid}.no-games{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border-radius:20px;grid-column:1/-1;padding:60px 20px}.no-games h3{color:#fff;margin-bottom:15px;font-size:1.8rem}.no-games p{color:#fffc;margin:0;font-size:1.1rem}.game-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:20px;padding:25px;transition:all .3s}.game-card:hover{border-color:#ffffff4d;transform:translateY(-5px);box-shadow:0 10px 30px #0003}.game-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:15px;display:flex}.game-card-header h3{color:#fff;margin:0;font-size:1.3rem;line-height:1.3}.difficulty-badge{color:#fff;text-transform:uppercase;letter-spacing:1px;background:#4ecdc4cc;border-radius:15px;flex-shrink:0;margin-left:10px;padding:4px 12px;font-size:.8rem;font-weight:700}.game-description{color:#ffffffe6;margin-bottom:20px;font-size:.95rem;line-height:1.5}.game-meta{color:#ffffffb3;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:.9rem;display:flex}.game-type{background:#ffffff1a;border-radius:10px;padding:4px 10px;font-size:.8rem}.play-button{color:#fff;cursor:pointer;background:linear-gradient(45deg,#4ecdc4,#44a08d);border:1px solid #ffffff4d;border-radius:15px;width:100%;padding:12px 20px;font-size:1rem;font-weight:700;transition:all .3s}.play-button:hover{transform:translateY(-2px);box-shadow:0 4px 15px #4ecdc466}.game-modal{z-index:1000;background:#000c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.game-modal-content{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:20px;width:100%;max-width:800px;max-height:90vh;padding:30px;position:relative;overflow-y:auto}.game-modal-header{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.game-modal-header h2{color:#fff;margin:0;font-size:2rem}.close-button{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:2rem;transition:all .3s;display:flex}.close-button:hover{background:#ffffff1a}.game-display{color:#fff}.game-info{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:15px;margin-bottom:20px;padding:20px}.game-info p{margin:10px 0;line-height:1.5}.game-rules{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:15px;margin-bottom:20px;padding:20px}.game-rules h3{color:#fff;margin-bottom:15px;font-size:1.3rem}.game-rules ul{padding:0;list-style:none}.game-rules li{border-bottom:1px solid #ffffff1a;padding:8px 0}.game-rules li:before{content:"🎮 ";margin-right:10px}.game-prompt{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:15px;margin-bottom:20px;padding:20px}.game-prompt h3{color:#fff;margin-bottom:15px;font-size:1.3rem}.prompt-text{color:#ffffffe6;font-size:1.1rem;font-style:italic;line-height:1.5}.game-placeholder{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px dashed #ffffff4d;border-radius:15px;padding:40px 20px}.game-placeholder p{color:#fffc;margin:10px 0;font-size:1.2rem}@media (max-width:768px){.community{padding:20px}.games-grid{grid-template-columns:1fr;gap:20px}.game-modal-content{margin:10px;padding:20px}.game-modal-header h2{font-size:1.5rem}.community-header h2{font-size:2rem}}
.game-creator{color:#fff;max-width:800px;margin:0 auto;padding:30px}.game-creator h2{text-align:center;color:#fff;margin-bottom:10px;font-size:2.5rem}.game-creator p{text-align:center;color:#ffffffe6;margin-bottom:40px;font-size:1.2rem}.creator-form{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;margin-bottom:40px;padding:30px}.prompt-input{color:#fff;resize:vertical;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-sizing:border-box;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:15px;width:100%;min-height:120px;margin-bottom:20px;padding:15px 20px;font-family:inherit;font-size:1.1rem}.prompt-input::placeholder{color:#ffffffb3}.prompt-input:focus{border-color:#ffffff80;outline:none;box-shadow:0 0 15px #ffffff4d}.create-button{color:#000;cursor:pointer;background:linear-gradient(45deg,gold,orange);border:1px solid #ffffff4d;border-radius:15px;width:100%;padding:15px 30px;font-size:1.2rem;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #ffd7004d}.create-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ffd70066}.create-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.success-message{color:#fff;text-align:center;background:#4caf5033;border:1px solid #4caf50;border-radius:10px;margin-top:15px;padding:15px 20px;font-weight:700;animation:.5s ease-in fadeIn}.generating-state{text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin:20px 0;padding:40px 20px}.generating-icon{margin-bottom:20px;font-size:4rem;animation:2s infinite pulse}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.generating-state h3{color:#fff;margin-bottom:15px;font-size:1.8rem}.generating-state p{color:#fffc;margin-bottom:25px;font-size:1.1rem;line-height:1.6}.generating-tips{text-align:left;background:#ffffff0d;border-radius:8px;max-width:400px;margin:0 auto;padding:20px}.generating-tips h4{color:#fff;margin-bottom:15px;font-size:1.1rem}.generating-tips ul{margin:0;padding:0;list-style:none}.generating-tips li{color:#ffffffb3;margin-bottom:8px;padding-left:20px;position:relative}.generating-tips li:before{content:"→";color:#667eea;font-weight:700;position:absolute;left:0}.navigation-actions{flex-direction:column;gap:15px;max-width:400px;margin:20px auto 0;display:flex}.nav-button{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #ffffff4d;border-radius:12px;padding:15px 30px;font-size:1.1rem;font-weight:600;transition:all .3s}.nav-button:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 4px 15px #fff3}.game-ready-state{text-align:center;background:#4caf5026;border:2px solid #4caf5066;border-radius:12px;margin:20px 0;padding:40px 20px}.ready-icon{margin-bottom:20px;font-size:4rem;animation:1s ease-in-out celebrate}@keyframes celebrate{0%,to{transform:scale(1)rotate(0)}25%{transform:scale(1.2)rotate(-10deg)}75%{transform:scale(1.2)rotate(10deg)}}.game-ready-state h3{color:#fff;margin-bottom:15px;font-size:2rem}.game-ready-state p{color:#ffffffe6;margin-bottom:30px;font-size:1.1rem}.ready-actions{flex-direction:column;gap:15px;max-width:400px;margin:0 auto;display:flex}.play-now-button{color:#fff;cursor:pointer;background:linear-gradient(45deg,#4caf50,#45a049);border:none;border-radius:12px;padding:18px 40px;font-size:1.3rem;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #4caf5066}.play-now-button:hover{background:linear-gradient(45deg,#45a049,#4caf50);transform:translateY(-2px);box-shadow:0 6px 20px #4caf5080}.create-another-button{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #ffffff4d;border-radius:12px;padding:12px 30px;font-size:1.1rem;font-weight:600;transition:all .3s}.create-another-button:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.example-prompts{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;padding:25px}.example-prompts h3{color:#fff;margin-bottom:20px;font-size:1.3rem}.prompt-examples{flex-wrap:wrap;gap:10px;display:flex}.prompt-examples button{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff4d;border-radius:20px;padding:10px 15px;font-size:.9rem;transition:all .3s}.prompt-examples button:hover{background:#fff3;transform:translateY(-2px);box-shadow:0 4px 10px #0003}@media (max-width:768px){.game-creator{padding:20px}.game-creator h2{font-size:2rem}.creator-form{padding:20px}.prompt-examples{flex-direction:column}.prompt-examples button{text-align:left}.navigation-actions,.ready-actions{max-width:100%}.nav-button,.play-now-button,.create-another-button{padding:12px 20px;font-size:1rem}.play-now-button{padding:15px 25px;font-size:1.1rem}.game-ready-state h3{font-size:1.6rem}.generating-state h3{font-size:1.5rem}}
.profile{color:#fff;max-width:1200px;margin:0 auto;padding:20px}.profile-header{margin-bottom:40px}.profile-header h1{color:#fff;margin-bottom:20px;font-size:2.5rem}.profile-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px;display:grid}.stat-card{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;padding:24px;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0003}.stat-number{color:#fff;margin-bottom:8px;font-size:2.5rem;font-weight:700}.stat-label{color:#fffc;font-size:1rem;font-weight:500}.profile-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;padding:30px}.user-info{text-align:center;margin-bottom:30px}.user-info h2{color:#fff;margin-bottom:10px;font-size:1.8rem}.user-info p{color:#ffffffb3;font-size:1.1rem}.no-games{text-align:center;padding:60px 20px}.no-games h3{color:#fffc;margin-bottom:15px;font-size:1.5rem}.no-games p{color:#fff9;margin-bottom:25px}.no-games button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s}.no-games button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.games-section h2{color:#fff;margin-bottom:25px;font-size:1.8rem}.games-group{margin-bottom:40px}.games-group h3{color:#ffffffe6;border-bottom:2px solid #667eea4d;margin-bottom:15px;padding-bottom:8px;font-size:1.3rem;display:inline-block}.games-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.game-card{cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:12px;padding:20px;transition:all .2s;position:relative;overflow:hidden}.game-card.completed{background:#22c55e0d;border-color:#22c55e4d}.game-card.completed:hover{border-color:#22c55e80;transform:translateY(-3px);box-shadow:0 8px 25px #22c55e33}.game-card.pending{cursor:default;background:#fbbf240d;border-color:#fbbf244d}.game-card.failed{cursor:default;background:#ef44440d;border-color:#ef44444d}.game-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.game-header h4{color:#fff;flex:1;margin:0 10px 0 0;font-size:1.2rem}.status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;flex-shrink:0;padding:4px 12px;font-size:.8rem;font-weight:600}.status-completed{color:#22c55e;background:#22c55e33;border:1px solid #22c55e4d}.status-pending{color:#fbbf24;background:#fbbf2433;border:1px solid #fbbf244d}.status-processing{color:#3b82f6;background:#3b82f633;border:1px solid #3b82f64d}.status-failed{color:#ef4444;background:#ef444433;border:1px solid #ef44444d}.game-description{color:#ffffffb3;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:15px;font-size:.95rem;line-height:1.4;display:-webkit-box;overflow:hidden}.game-meta{flex-wrap:wrap;gap:12px;margin-bottom:10px;display:flex}.game-meta span{color:#fffc;background:#ffffff1a;border-radius:6px;padding:4px 8px;font-size:.85rem}.difficulty{text-transform:capitalize}.rating{color:#fbbf24}.game-date{color:#ffffff80;margin-top:8px;font-size:.8rem}.game-error{color:#ef4444;background:#ef44441a;border-left:3px solid #ef4444;border-radius:6px;margin-bottom:10px;padding:8px;font-size:.85rem}.loading{text-align:center;color:#ffffffb3;padding:60px 20px;font-size:1.2rem}.not-signed-in{text-align:center;padding:60px 20px}.not-signed-in h2{color:#fff;margin-bottom:20px;font-size:1.8rem}.not-signed-in button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s}.not-signed-in button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}@media (max-width:768px){.profile{padding:15px}.profile-header h1{font-size:2rem}.profile-stats{grid-template-columns:1fr;gap:15px}.stat-card{padding:20px}.stat-number{font-size:2rem}.games-grid{grid-template-columns:1fr}.game-card{padding:15px}.game-meta{gap:8px}}
