*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:linear-gradient(135deg,#1a1a2e,#16213e);min-height:100vh}.chat-container{max-width:800px;margin:0 auto;height:100vh;display:flex;flex-direction:column;padding:16px}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#ffffff1a;border-radius:16px 16px 0 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-header h1{color:#fff;font-size:1.5rem;font-weight:600}.clear-btn{background:#ffffff26;border:none;color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:background .2s}.clear-btn:hover{background:#ffffff40}.messages-container{flex:1;overflow-y:auto;padding:20px;background:#ffffff0d;display:flex;flex-direction:column;gap:16px}.empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:#ffffff80;font-size:1.1rem}.message{max-width:80%;padding:12px 16px;border-radius:16px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.message.assistant{align-self:flex-start;background:#ffffff1a;color:#fff}.message-role{font-size:.75rem;opacity:.7;margin-bottom:4px;font-weight:500}.message-content{font-size:1rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.message-content.loading{display:flex;gap:4px;padding:4px 0}.dot{width:8px;height:8px;background:#fff9;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.dot:nth-child(1){animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.input-form{display:flex;gap:12px;padding:16px 20px;background:#ffffff1a;border-radius:0 0 16px 16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.input-form input{flex:1;padding:14px 18px;border:none;border-radius:12px;background:#ffffff1a;color:#fff;font-size:1rem;outline:none;transition:background .2s}.input-form input::placeholder{color:#ffffff80}.input-form input:focus{background:#ffffff26}.input-form button{padding:14px 28px;border:none;border-radius:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,opacity .2s}.input-form button:hover:not(:disabled){transform:scale(1.02)}.input-form button:disabled{opacity:.5;cursor:not-allowed}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.app-container{min-height:100vh;display:flex;flex-direction:column;padding:20px}.main-header{text-align:center;padding:40px 20px}.main-header h1{color:#fff;font-size:3rem;font-weight:700;margin-bottom:12px;text-shadow:0 4px 20px rgba(102,126,234,.4)}.tagline{color:#ffffffb3;font-size:1.2rem}.games-section{flex:1;max-width:900px;margin:0 auto;width:100%;padding:20px}.games-section h2{color:#fff;font-size:1.5rem;margin-bottom:24px;text-align:center}.games-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.game-card{background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:30px 24px;cursor:pointer;transition:all .3s ease;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.game-card:hover{background:#ffffff1f;border-color:#667eea80;transform:translateY(-4px);box-shadow:0 12px 40px #667eea33}.game-image-wrapper{width:120px;height:120px;border-radius:16px;overflow:hidden;margin-bottom:8px;flex-shrink:0}.game-image{width:100%;height:100%;object-fit:cover;object-position:center}.game-card h3{color:#fff;font-size:1.4rem;font-weight:600}.game-card p{color:#fff9;font-size:.95rem;line-height:1.4}.main-footer{text-align:center;padding:30px 20px;color:#ffffff80;font-size:.95rem}.back-btn{background:#ffffff26;border:none;color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:background .2s}.back-btn:hover{background:#ffffff40}.empty-state{flex-direction:column;gap:8px;text-align:center}.empty-state .hint{font-size:.9rem;color:#fff6}
