.game-player{position:relative;width:100%;max-width:100%;margin:0 auto;background:var(--color-surface);border-radius:var(--card-radius);overflow:hidden;box-shadow:0 4px 24px #0000001a}.game-start-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;min-height:400px;background:linear-gradient(135deg,var(--color-surface),var(--color-background))}.game-thumbnail{width:100%;max-width:400px;height:auto;object-fit:cover;border-radius:var(--card-radius);margin-bottom:1.5rem}.game-start-content{text-align:center;max-width:500px}.game-start-title{font-size:2rem;font-weight:700;color:var(--color-text);margin:0 0 1rem}.game-start-info{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem}.game-support-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:var(--color-surface-hover);border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.game-support-badge.mobile{background:#10b981;color:#fff}.game-support-badge.desktop{background:#3b82f6;color:#fff}.game-support-badge.fullscreen{background:#8b5cf6;color:#fff}.game-start-button{width:100%;max-width:300px;padding:1rem 2rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;border:none;border-radius:var(--card-radius);font-size:1.125rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #00000026}.game-start-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0003}.game-start-button:active{transform:translateY(0)}.game-start-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.game-orientation-hint{margin-top:1rem;font-size:.875rem;color:var(--color-muted)}.game-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;min-height:400px;background:var(--color-surface)}.game-spinner{width:48px;height:48px;border:4px solid var(--color-surface-hover);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.game-loading p{margin-top:1rem;color:var(--color-muted);font-size:.875rem}.game-active{position:relative}.game-iframe{width:100%;height:100%;border:none;display:block}.game-toolbar{position:absolute;bottom:0;left:0;right:0;display:flex;gap:.5rem;padding:.75rem;background:#000000e6;backdrop-filter:blur(8px);border-radius:0 0 var(--card-radius) var(--card-radius);transform:translateY(100%);transition:transform .2s ease}.game-active:hover .game-toolbar{transform:translateY(0)}.game-toolbar-button{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem .75rem;background:#ffffff1a;border:none;border-radius:4px;color:#fff;font-size:.875rem;cursor:pointer;transition:background .2s ease;white-space:nowrap}.game-toolbar-button:hover{background:#fff3}.game-error{padding:2rem;min-height:300px;background:var(--color-surface);display:flex;align-items:center;justify-content:center}.game-error-content{text-align:center;max-width:500px}.game-error-content h3{font-size:1.5rem;color:var(--color-text);margin:0 0 .75rem}.game-error-content p{color:var(--color-muted);margin-bottom:1.5rem}.game-error-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.game-error-button{padding:.75rem 1.5rem;border:none;border-radius:var(--card-radius);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.game-error-button:not(.secondary){background:var(--color-primary);color:var(--color-background)}.game-error-button.secondary{background:var(--color-surface-hover);color:var(--color-text)}.game-error-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}@media(max-width:767px){.game-start-screen{padding:1rem;min-height:300px}.game-start-title{font-size:1.5rem}.game-start-button{font-size:1rem;padding:.875rem 1.5rem}.game-toolbar{position:relative;transform:none;background:#000000f2;border-radius:var(--card-radius)}.game-toolbar-button{flex:1;justify-content:center;font-size:.75rem;padding:.625rem}.game-error-actions{flex-direction:column}.game-error-button{width:100%}}
