@import"https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap";:root{--color-primary: #F25C7E;--color-secondary: #FFFFFF;--color-accent: #1E1E2F;--color-primary-hover: #e04a6b;--color-primary-light: #f87ea0;--color-accent-light: #2a2a3e;--color-text-light: #6b7280;--color-border: #e5e7eb;--color-shadow: rgba(30, 30, 47, .1);--font-family: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--border-radius: .5rem;--border-radius-lg: .75rem;--transition: all .2s ease-in-out;--shadow: 0 1px 3px 0 var(--color-shadow), 0 1px 2px 0 var(--color-shadow);--shadow-lg: 0 10px 15px -3px var(--color-shadow), 0 4px 6px -2px var(--color-shadow)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--color-accent);background-color:var(--color-secondary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative}body:before{content:"";position:fixed;bottom:-1px;right:-330px;transform:scale(4);width:600px;height:300px;background-image:url(/Hitreveal%20icon%20transparent.svg);background-size:contain;background-repeat:no-repeat;background-position:center;opacity:.1;z-index:-1;pointer-events:none}.app{min-height:100vh;display:flex;flex-direction:column}.header{background-color:var(--color-secondary);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100;box-shadow:var(--shadow)}.header-container{max-width:1200px;margin:0 auto;padding:var(--spacing-4) var(--spacing-6);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-6)}.logo{display:flex;align-items:center;gap:var(--spacing-3);background:none;border:none;cursor:pointer;transition:var(--transition);padding:0}.logo:hover{opacity:.8;transform:translateY(-1px)}.logo-image{height:36px;width:auto;-o-object-fit:contain;object-fit:contain;opacity:1}.logo-text{font-size:var(--font-size-xl);font-weight:700;color:var(--color-accent);letter-spacing:-.02em;line-height:1}.header-controls{display:flex;align-items:center}.language-switcher{display:flex;background-color:var(--color-border);border-radius:var(--border-radius);overflow:hidden}.language-button{display:flex;align-items:center;justify-content:center;padding:var(--spacing-2);background-color:transparent;border:none;font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:var(--transition);color:var(--color-text-light);width:40px;height:36px}.language-button:hover{background-color:var(--color-secondary);color:var(--color-accent)}.language-button.active{background-color:var(--color-primary);color:var(--color-secondary)}.language-button:focus{outline:2px solid var(--color-primary);outline-offset:-2px}.language-flag{width:24px;height:16px;-o-object-fit:cover;object-fit:cover;border-radius:2px;box-shadow:0 1px 2px #0000001a}.main-game{flex:1;padding:var(--spacing-8) 0}.game-container{max-width:800px;margin:0 auto;padding:0 var(--spacing-6)}.welcome-section{text-align:center;margin-bottom:var(--spacing-12)}.welcome-title{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-accent);margin-bottom:var(--spacing-4);letter-spacing:-.025em}.welcome-subtitle{font-size:var(--font-size-xl);color:var(--color-primary);font-weight:500;margin-bottom:var(--spacing-6)}.game-description{font-size:var(--font-size-lg);color:var(--color-text-light);line-height:1.7;max-width:600px;margin:0 auto;white-space:pre-line;text-align:left}.game-controls{display:flex;flex-wrap:wrap;gap:var(--spacing-4);justify-content:center;margin-bottom:var(--spacing-12)}.primary-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-4) var(--spacing-8);background-color:var(--color-primary);color:var(--color-secondary);border:none;border-radius:var(--border-radius-lg);font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}.primary-button:hover{background-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.primary-button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.secondary-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-4) var(--spacing-8);background-color:transparent;color:var(--color-accent);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:var(--transition)}.secondary-button:hover{background-color:var(--color-accent);color:var(--color-secondary);border-color:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.secondary-button:focus{outline:2px solid var(--color-accent);outline-offset:2px}.back-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-secondary);color:var(--color-accent);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:var(--transition);margin-bottom:var(--spacing-6);box-shadow:var(--shadow);height:40px}.back-button:hover{background-color:var(--color-accent);color:var(--color-secondary)}.footer{background-color:var(--color-accent);color:var(--color-secondary);padding:var(--spacing-8) 0;margin-top:auto}.footer-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-6);display:flex;flex-direction:column;gap:var(--spacing-6)}.footer-content{display:flex;justify-content:center;align-items:flex-start;gap:var(--spacing-12);flex-wrap:wrap}.footer-left{flex:2;display:flex;align-items:flex-start;justify-content:flex-start;text-align:left;min-width:300px}.footer-right{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--spacing-3);min-width:200px}.footer-disclaimer{font-size:var(--font-size-sm);line-height:1.6;opacity:.9;margin:0;text-align:left;white-space:pre-line;max-width:600px}.footer-disclaimer2{font-size:var(--font-size-sm);line-height:1.6;opacity:.8;margin:0 0 var(--spacing-4) 0;text-align:center;font-style:italic;color:var(--color-primary);font-weight:500}.footer-donation-text{font-size:var(--font-size-sm);line-height:1.6;opacity:.9;margin:0}.donate-button{background-color:var(--color-primary);color:var(--color-secondary);border:none;border-radius:var(--border-radius);padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}.donate-button:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.donate-button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.footer-copyright{font-size:var(--font-size-sm);opacity:.7;font-weight:500;border-top:1px solid rgba(255,255,255,.2);padding-top:var(--spacing-4);text-align:center;white-space:pre-line;line-height:1.5}.loading-message,.error-message{text-align:center;padding:var(--spacing-4);border-radius:var(--border-radius);margin-bottom:var(--spacing-4);font-weight:500}.loading-message{background-color:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}.error-message{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca}.game-session-title-button{opacity:.9;cursor:default;margin:0 auto}@media (max-width: 768px){.footer-content{flex-direction:column;gap:var(--spacing-6);align-items:center}.footer-left{text-align:center;align-items:center;justify-content:center}.footer-disclaimer{text-align:center}.footer-right{text-align:center;align-items:center}}@media (min-width: 768px){.header-container{padding:var(--spacing-6) var(--spacing-8)}.welcome-title{font-size:var(--font-size-4xl)}.game-container{padding:0 var(--spacing-8)}.game-controls{flex-wrap:nowrap}}@media (min-width: 1024px){.header-container{padding:var(--spacing-6) var(--spacing-12)}.logo-image{height:48px}.main-game{padding:var(--spacing-16) 0}.welcome-title{font-size:3.5rem}.game-container,.footer-container{padding:0 var(--spacing-12)}}@media (max-width: 480px){.header-container{padding:var(--spacing-4);gap:var(--spacing-4)}.logo-image{height:32px}.header-controls{gap:0}.language-button{padding:var(--spacing-1);width:36px;height:32px}.language-flag{width:20px;height:13px}.welcome-title{font-size:var(--font-size-3xl)}.welcome-subtitle{font-size:var(--font-size-lg)}.game-description{font-size:var(--font-size-base)}.game-controls{flex-direction:column;align-items:center}.primary-button,.secondary-button{width:100%;max-width:280px;justify-content:center}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){:root{--color-shadow: rgba(0, 0, 0, .3)}}.game-selection{flex:1;padding:var(--spacing-8) 0}.game-selection-container{max-width:800px;margin:0 auto;padding:0 var(--spacing-6)}.game-selection-header{margin-bottom:var(--spacing-8)}.game-selection-title{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-accent);text-align:center;margin-bottom:var(--spacing-2)}.game-types-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-4);margin-bottom:var(--spacing-12)}.game-type-card{background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-6);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}.game-type-card:hover:not(.coming-soon){border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.game-type-card.selected{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-secondary)}.game-type-card.selected .game-type-name{color:var(--color-secondary)}.game-type-card.selected .game-type-subtitle{color:#fffc}.game-type-card.coming-soon{opacity:.6;cursor:not-allowed}.game-type-content{text-align:center}.game-type-name{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin-bottom:var(--spacing-2)}.game-type-subtitle{font-size:var(--font-size-base);font-weight:400;color:var(--color-text-light);margin-bottom:var(--spacing-3)}.coming-soon-badge{display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);color:var(--color-text-light);font-size:var(--font-size-sm);font-weight:500}.hitster-options{background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-8);box-shadow:var(--shadow)}.options-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin-bottom:var(--spacing-6);text-align:center}.country-filter{margin-bottom:var(--spacing-6)}.filter-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-2);justify-content:center}.filter-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background-color:var(--color-secondary);color:var(--color-text-light);border:1px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:var(--transition);min-width:60px;justify-content:center}.filter-button:hover,.filter-button.active{background-color:var(--color-accent);color:var(--color-secondary);border-color:var(--color-accent)}.filter-flag{font-size:var(--font-size-base)}.filter-flag-image{width:16px;height:11px;-o-object-fit:cover;object-fit:cover;border-radius:2px;box-shadow:0 1px 2px #0000001a}.filter-flag-svg{width:20px;height:20px;flex-shrink:0}.custom-dropdown{position:relative;margin-bottom:var(--spacing-6)}.dropdown-trigger{width:100%;padding:var(--spacing-4);border:2px solid #e5e7eb;border-radius:var(--border-radius);font-size:var(--font-size-base);background-color:var(--color-secondary);color:var(--color-accent);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;text-align:left;min-height:60px;height:60px;line-height:1.2}.dropdown-trigger:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #f25c7e33}.selected-option{display:flex;align-items:center;gap:var(--spacing-2);min-height:20px}.placeholder-text{color:var(--color-text-light);min-height:20px;display:flex;align-items:center;line-height:1.2;height:20px;flex:1}.dropdown-arrow{color:var(--color-text-light);font-size:var(--font-size-sm);transition:var(--transition)}.dropdown-trigger[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--color-secondary);border:2px solid var(--color-primary);border-top:none;border-radius:0 0 var(--border-radius) var(--border-radius);box-shadow:var(--shadow-lg);z-index:1000;max-height:200px;overflow-y:auto}.dropdown-option{width:100%;padding:var(--spacing-3) var(--spacing-4);border:none;background-color:transparent;color:var(--color-accent);cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:var(--spacing-2);text-align:left;font-size:var(--font-size-base)}.dropdown-option:hover{background-color:var(--color-primary);color:var(--color-secondary)}.dropdown-flag{width:20px;height:13px;-o-object-fit:cover;object-fit:cover;border-radius:2px;box-shadow:0 1px 2px #0000001a;flex-shrink:0}.flag-placeholder{font-size:var(--font-size-base);width:20px;text-align:center;flex-shrink:0}.dropdown-flag-svg{width:20px;height:20px;flex-shrink:0}.selected-description{background-color:#f8fafc;border-radius:var(--border-radius);padding:var(--spacing-4);margin-top:var(--spacing-2);margin-bottom:var(--spacing-6);border:1px solid var(--color-border);text-align:center}.description-text{font-size:var(--font-size-base);color:var(--color-text-light);line-height:1.5;font-style:italic}.preview-section{margin-bottom:var(--spacing-4);text-align:center}.preview-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-secondary);color:var(--color-accent);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:var(--transition);margin:0 auto}.preview-button:hover{background-color:var(--color-accent);color:var(--color-secondary);border-color:var(--color-accent)}.start-hitster-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);width:100%;padding:calc(var(--spacing-4) + 5px) var(--spacing-6) var(--spacing-4) var(--spacing-6);background-color:var(--color-primary);color:var(--color-secondary);border:none;border-radius:var(--border-radius-lg);font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}.start-hitster-button:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.start-hitster-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-4)}.preview-popup{background-color:var(--color-secondary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);max-width:800px;width:100%;max-height:80vh;display:flex;flex-direction:column}.preview-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-6);border-bottom:1px solid var(--color-border)}.preview-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin:0}.preview-close{background:none;border:none;color:var(--color-text-light);cursor:pointer;padding:var(--spacing-2);border-radius:var(--border-radius);transition:var(--transition)}.preview-close:hover{background-color:var(--color-border);color:var(--color-accent)}.preview-content{flex:1;overflow-y:auto;padding:var(--spacing-6)}.preview-loading,.preview-error,.no-songs{text-align:center;padding:var(--spacing-8);color:var(--color-text-light)}.preview-error{color:#dc2626}.search-section{margin-bottom:var(--spacing-6);padding-bottom:var(--spacing-4);border-bottom:1px solid var(--color-border)}.search-input{width:100%;padding:var(--spacing-3) var(--spacing-4);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);background-color:var(--color-secondary);color:var(--color-accent);transition:var(--transition);margin-bottom:var(--spacing-3)}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #f25c7e33}.search-results-count{font-size:var(--font-size-sm);color:var(--color-text-light);text-align:center}.songs-list{border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.list-header{display:flex;background-color:var(--color-accent);color:var(--color-secondary);font-weight:600;font-size:var(--font-size-sm);padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--color-border)}.header-id{width:80px;flex-shrink:0}.header-title{flex:2;min-width:0}.header-artist{flex:1.5;min-width:0}.header-year{width:80px;flex-shrink:0;text-align:center}.list-body{max-height:400px;overflow-y:auto}.song-row{display:flex;padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--color-border);transition:var(--transition);align-items:center}.song-row:hover{background-color:#f8fafc}.song-row:last-child{border-bottom:none}.song-row.current-song{background-color:var(--color-primary);color:var(--color-secondary)}.song-row.current-song .row-id{color:var(--color-secondary);font-weight:700}.song-row.current-song .row-title{color:var(--color-secondary)}.song-row.current-song .row-artist,.song-row.current-song .row-year{color:#fffc}.row-id{width:80px;flex-shrink:0;font-size:var(--font-size-sm);font-weight:600;color:var(--color-primary)}.row-title{flex:2;min-width:0;font-size:var(--font-size-base);font-weight:600;color:var(--color-accent);padding-right:var(--spacing-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-artist{flex:1.5;min-width:0;font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:500;padding-right:var(--spacing-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-year{width:80px;flex-shrink:0;font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:400;text-align:center}.no-results{text-align:center;padding:var(--spacing-8);color:var(--color-text-light);font-style:italic}.game-session{flex:1;padding:var(--spacing-8) 0}.game-session-container{max-width:800px;margin:0 auto;padding:0 var(--spacing-6)}.game-session-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-8)}.game-session-header .quit-game-button{margin:0 auto}.game-session-title-button{opacity:.9;cursor:default}.qr-scanner-section{background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-8);margin-bottom:var(--spacing-8);box-shadow:var(--shadow)}.scanner-header{text-align:center;margin-bottom:var(--spacing-6)}.scanner-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin:var(--spacing-3) 0 var(--spacing-2) 0;display:flex;align-items:center;justify-content:center;gap:var(--spacing-3)}.scanner-subtitle{color:var(--color-text-light);font-size:var(--font-size-base)}.scanner-container{position:relative;max-width:500px;margin:0 auto;border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-lg);background-color:#000}.scanner-video{width:100%;height:400px;display:block;background-color:#000;-o-object-fit:cover;object-fit:cover;border-radius:var(--border-radius);max-width:100%;min-height:300px}.scanner-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.scanner-frame{width:250px;height:250px;border:3px solid var(--color-primary);border-radius:var(--border-radius);position:relative;background:transparent;box-shadow:0 0 0 2px #f25c7e4d}.scanner-hint{color:var(--color-secondary);font-size:var(--font-size-sm);font-weight:500;margin-top:var(--spacing-4);text-align:center;background-color:#000000b3;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--border-radius)}.scanner-error{max-width:500px;margin:0 auto;padding:var(--spacing-6);background-color:#fef2f2;border:2px solid #fecaca;border-radius:var(--border-radius);text-align:center;color:#dc2626}.scanner-placeholder{max-width:500px;margin:0 auto;border:2px dashed var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-8);text-align:center;background-color:#f8fafc}.scanner-placeholder-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-4);color:var(--color-text-light)}.scanner-placeholder-content svg{opacity:.5}.scanner-controls{display:flex;justify-content:center;margin-top:var(--spacing-6)}.scanner-button-row{display:flex;flex-wrap:wrap;gap:var(--spacing-4);justify-content:center;align-items:center}.scanner-controls .secondary-button{background-color:var(--color-accent);color:var(--color-secondary);border-color:var(--color-accent)}.scanner-controls .secondary-button:hover{background-color:var(--color-accent-light);border-color:var(--color-accent-light)}.simple-player-section{background-color:var(--color-secondary);border-radius:var(--border-radius-lg);padding:var(--spacing-8);margin-bottom:var(--spacing-8);box-shadow:var(--shadow)}.reveal-section-header{text-align:center;margin-bottom:var(--spacing-6)}.reveal-section-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin:0;display:flex;align-items:center;justify-content:center;gap:var(--spacing-3)}.reveal-section-title svg{color:var(--color-primary)}.revealed-song-info{text-align:center;margin-bottom:var(--spacing-8);padding:var(--spacing-6);background-color:#f8fafc;border-radius:var(--border-radius);border:1px solid var(--color-border)}.hitreveal-header{text-align:center;margin-bottom:var(--spacing-4)}.hitreveal-header h3{font-size:var(--font-size-lg);font-weight:700;color:var(--color-primary);margin:0;text-transform:uppercase;letter-spacing:.05em}.song-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-accent);margin-bottom:var(--spacing-2)}.song-artist{font-size:var(--font-size-lg);font-weight:500;color:var(--color-primary);margin-bottom:var(--spacing-2)}.song-year{font-size:var(--font-size-base);color:var(--color-text-light);font-weight:500}.simple-controls{display:flex;flex-wrap:wrap;gap:var(--spacing-3);justify-content:center;margin:var(--spacing-6) 0}.control-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:var(--transition);background-color:var(--color-secondary);color:var(--color-accent)}.control-button:hover:not(:disabled){background-color:var(--color-accent);color:var(--color-secondary);border-color:var(--color-accent)}.control-button:disabled{opacity:.5;cursor:not-allowed}.start-pause-button{background-color:var(--color-primary);color:var(--color-secondary);border-color:var(--color-primary)}.start-pause-button:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.secondary-blue{background-color:var(--color-accent);color:var(--color-secondary);border-color:var(--color-accent)}.secondary-blue:hover:not(:disabled){background-color:var(--color-accent-light);border-color:var(--color-accent-light)}.action-buttons{text-align:center;display:flex;flex-wrap:wrap;gap:var(--spacing-4);justify-content:center;align-items:center}.scan-another-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-4) var(--spacing-6);background-color:var(--color-secondary);color:var(--color-accent);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:var(--transition)}.scan-another-button:hover{background-color:var(--color-accent);color:var(--color-secondary);border-color:var(--color-accent)}.skip-with-cost{position:relative;padding-right:var(--spacing-8)!important}@keyframes pulse-cost{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.view-counter{color:var(--color-primary);font-weight:700;font-size:var(--font-size-sm)}.counter-explanation{margin-top:var(--spacing-4);text-align:center;padding:var(--spacing-3) var(--spacing-4);background-color:#f8fafc;border:1px solid var(--color-border);border-radius:var(--border-radius)}.counter-explanation-text{font-size:var(--font-size-sm);color:var(--color-text-light);font-style:italic;margin:0;line-height:1.5}.no-match-popover{background-color:var(--color-secondary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);max-width:500px;width:100%;margin:var(--spacing-4)}.no-match-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-6);border-bottom:1px solid var(--color-border)}.no-match-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin:0}.no-match-content{padding:var(--spacing-6)}.no-match-description,.no-match-help{font-size:var(--font-size-base);color:var(--color-text-light);line-height:1.6;margin-bottom:var(--spacing-4);text-align:center}.no-match-link-container{text-align:center;margin-bottom:var(--spacing-6)}.no-match-link-container .github-link{display:inline-block;color:var(--color-primary);text-decoration:none;font-weight:600;padding:var(--spacing-3) var(--spacing-4);border:2px solid var(--color-primary);border-radius:var(--border-radius);transition:var(--transition)}.no-match-link-container .github-link:hover{background-color:var(--color-primary);color:var(--color-secondary)}.no-match-actions{text-align:center;display:flex;justify-content:center}.no-match-actions .primary-button{min-width:120px}.quit-confirmation-modal{background-color:var(--color-secondary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);max-width:400px;width:100%;margin:var(--spacing-4)}.quit-modal-header{padding:var(--spacing-6);border-bottom:1px solid var(--color-border);text-align:center}.quit-modal-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin:0}.quit-modal-content{padding:var(--spacing-6)}.quit-warning-text{font-size:var(--font-size-base);color:var(--color-text-light);line-height:1.6;text-align:center;margin-bottom:var(--spacing-6)}.quit-modal-buttons{display:flex;gap:var(--spacing-4);justify-content:center}.cancel-quit-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);background-color:var(--color-secondary);color:var(--color-accent);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:var(--transition)}.cancel-quit-button:hover{background-color:var(--color-accent);color:var(--color-secondary);border-color:var(--color-accent)}.confirm-quit-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);background-color:var(--color-primary);color:var(--color-secondary);border:2px solid var(--color-primary);border-radius:var(--border-radius);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:var(--transition)}.confirm-quit-button:hover{background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.background-video-container{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}.youtube-video-container{margin-top:var(--spacing-6);border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);background-color:#000}.youtube-video-container iframe{width:100%;height:315px;border:none;display:block}@media (min-width: 768px){.game-types-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width: 480px){.game-selection-container{padding:0 var(--spacing-4)}.game-selection-title{font-size:var(--font-size-2xl)}.hitster-options{padding:var(--spacing-6)}.preview-popup{margin:var(--spacing-2);max-height:90vh}.preview-header,.preview-content{padding:var(--spacing-4)}.list-header,.song-row{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs)}.header-id,.row-id{width:50px;font-size:var(--font-size-xs)}.header-title,.row-title{flex:1.5;font-size:var(--font-size-xs);font-weight:500}.header-artist,.row-artist{flex:1;font-size:var(--font-size-xs);font-weight:400}.header-year,.row-year{width:50px;font-size:var(--font-size-xs)}.preview-title{font-size:var(--font-size-lg);line-height:1.3;word-break:break-word}.search-input{font-size:var(--font-size-sm);padding:var(--spacing-2) var(--spacing-3)}.search-results-count{font-size:var(--font-size-xs)}.scanner-container{max-width:100%;height:350px}.scanner-video{height:350px}.scanner-frame{width:200px;height:200px}}.competition-settings{max-width:800px;margin:0 auto;padding:var(--spacing-6)}.settings-title{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-accent);text-align:center;margin-bottom:var(--spacing-8)}.rules-section{background-color:#f8fafc;border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-6);margin-bottom:var(--spacing-8)}.rules-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin-bottom:var(--spacing-4)}.rules-description{font-size:var(--font-size-base);color:var(--color-text-light);line-height:1.6;margin:0}.game-indicators-section{margin-bottom:var(--spacing-6)}.game-indicator-card{background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-4);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:var(--spacing-3)}.indicator-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-2) 0;border-bottom:1px solid var(--color-border)}.indicator-item:last-child{border-bottom:none}.indicator-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.05em}.indicator-value{font-size:var(--font-size-base);font-weight:600;color:var(--color-accent)}.competition-game-info{display:flex;flex-direction:column;gap:var(--spacing-3)}.game-info-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-2) 0;border-bottom:1px solid var(--color-border)}.game-info-row:last-child{border-bottom:none}.info-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.05em}.info-value{font-size:var(--font-size-base);font-weight:600;color:var(--color-accent)}.competition-dashboard{max-width:1000px;margin:0 auto;padding:var(--spacing-6)}.competition-dashboard .game-session-header{justify-content:center;align-items:center}.game-status-section{margin-bottom:var(--spacing-8)}.status-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-4)}.status-card{background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-6);display:flex;align-items:center;gap:var(--spacing-4);box-shadow:var(--shadow)}.status-icon{color:var(--color-primary);flex-shrink:0}.status-content{flex:1}.status-title{font-size:var(--font-size-lg);font-weight:700;color:var(--color-accent);margin-bottom:var(--spacing-1)}.status-subtitle{font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:500}.current-player-section{margin-bottom:var(--spacing-8)}.current-player-card{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));border-radius:var(--border-radius-lg);padding:var(--spacing-6);color:var(--color-secondary);display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow-lg);gap:var(--spacing-4)}.player-indicator{display:flex;align-items:center;gap:var(--spacing-4)}.player-avatar{width:60px;height:60px;border-radius:50%;background-color:#fff3;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-2xl);font-weight:700;color:var(--color-secondary);border:3px solid rgba(255,255,255,.3)}.player-info{flex:1}.player-name{font-size:var(--font-size-xl);font-weight:700;margin:0 0 var(--spacing-1) 0;color:var(--color-secondary)}.player-status{font-size:var(--font-size-base);margin:0;opacity:.9;font-weight:500}.player-skips{font-size:var(--font-size-sm);margin:var(--spacing-1) 0 0 0;opacity:.8;font-weight:400;color:#ffffffe6}.player-go-button{background-color:#fff3;color:var(--color-secondary);border:2px solid rgba(255,255,255,.3);border-radius:var(--border-radius-lg);padding:var(--spacing-4) var(--spacing-6);font-size:var(--font-size-xl);font-weight:700;cursor:pointer;transition:var(--transition);min-width:80px;height:60px;display:flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.1em}.player-go-button:hover{background-color:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.player-go-button:active{transform:translateY(0)}.go-button-section{display:flex;justify-content:center;align-items:center;padding:var(--spacing-8) 0;margin:var(--spacing-6) 0}.player-score{text-align:right;flex-shrink:0}.score-value{display:block;font-size:var(--font-size-3xl);font-weight:700;line-height:1}.score-label{display:block;font-size:var(--font-size-sm);opacity:.8;font-weight:500}.leaderboard-section{background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-6);box-shadow:var(--shadow)}.leaderboard-title{font-size:var(--font-size-xl);font-weight:700;color:var(--color-accent);margin:0 0 var(--spacing-6) 0;text-align:center}.leaderboard{display:flex;flex-direction:column;gap:var(--spacing-3)}.leaderboard-row{display:flex;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4);background-color:#f8fafc;border:1px solid var(--color-border);border-radius:var(--border-radius);transition:var(--transition)}.leaderboard-row:hover{background-color:#f1f5f9}.leaderboard-row.current-player{background-color:#f25c7e1a;border-color:var(--color-primary)}.player-rank{width:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.crown-icon{color:#fbbf24}.rank-number{font-size:var(--font-size-base);font-weight:600;color:var(--color-text-light)}.player-details{flex:1;min-width:0}.leaderboard-row .player-name{font-size:var(--font-size-base);font-weight:600;color:var(--color-accent);margin:0 0 var(--spacing-1) 0;text-align:left}.score-breakdown{display:flex;gap:var(--spacing-2);flex-wrap:wrap}.score-part{font-size:var(--font-size-xs);font-weight:500;padding:var(--spacing-1) var(--spacing-2);border-radius:var(--border-radius);background-color:var(--color-border);color:var(--color-text-light)}.score-part.artist{background-color:#dbeafe;color:#1e40af}.score-part.title{background-color:#dcfce7;color:#166534}.score-part.year{background-color:#fef3c7;color:#92400e}.score-part.bonus{background-color:#fce7f3;color:#be185d}.score-part.no-points{background-color:#f3f4f6;color:#6b7280;font-style:italic}.player-total-score{font-size:var(--font-size-xl);font-weight:700;color:var(--color-accent);min-width:60px;text-align:right}.competition-scoring-section{display:flex;flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-6);background-color:#f8fafc;border-radius:var(--border-radius);border:1px solid var(--color-border)}.scoring-item{display:flex;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4);background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);min-height:60px}.scoring-item:hover{border-color:var(--color-primary);transform:translateY(-1px);box-shadow:var(--shadow)}.scoring-item.selected{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-secondary)}.scoring-item.selected .scoring-label,.scoring-item.selected .scoring-value,.scoring-item.selected .scoring-points{color:var(--color-secondary)}.scoring-checkbox{width:24px;height:24px;border:2px solid var(--color-border);border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;background-color:var(--color-secondary);flex-shrink:0;transition:var(--transition)}.scoring-item.selected .scoring-checkbox{background-color:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-primary)}.scoring-content{flex:1;min-width:0}.scoring-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-light);margin-bottom:var(--spacing-1);text-transform:uppercase;letter-spacing:.05em;line-height:1.2}.scoring-value{font-size:var(--font-size-lg);font-weight:600;color:var(--color-accent);line-height:1.2;word-break:break-word;overflow-wrap:break-word}.scoring-points{font-size:var(--font-size-lg);font-weight:700;color:var(--color-primary);flex-shrink:0;min-width:40px;text-align:right}.bonus-item{padding:var(--spacing-3) var(--spacing-4);background-color:#f3f4f6;border:2px dashed var(--color-border);border-radius:var(--border-radius);opacity:.5;transition:var(--transition)}.bonus-item.active{background-color:#10b981;border-color:#059669;border-style:solid;color:var(--color-secondary);opacity:1}.bonus-content{display:flex;align-items:center;justify-content:space-between}.bonus-label{font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.bonus-points{font-size:var(--font-size-lg);font-weight:700}.total-score{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4);background-color:var(--color-accent);color:var(--color-secondary);border-radius:var(--border-radius);margin-top:var(--spacing-3)}.total-label{font-size:var(--font-size-base);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.total-points{font-size:var(--font-size-xl);font-weight:700}.score-button{background-color:#10b981!important;color:var(--color-secondary)!important;border-color:#059669!important;font-weight:700;font-size:var(--font-size-lg);padding:var(--spacing-4) var(--spacing-8)}.score-button:hover{background-color:#059669!important;border-color:#047857!important;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.turn-complete-button{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-6);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:var(--color-secondary);border:none;border-radius:var(--border-radius-lg);font-size:var(--font-size-base);font-weight:700;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-lg);text-transform:uppercase;letter-spacing:.05em;min-height:48px}.turn-complete-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #f25c7e4d}.turn-complete-button:active{transform:translateY(0)}.error-reporting-section{margin-top:var(--spacing-4);text-align:center;padding-top:var(--spacing-3);border-top:1px solid var(--color-border)}.error-reporting-text{margin:0;font-size:var(--font-size-xs);color:var(--color-text-light)}.error-reporting-link{color:var(--color-primary);text-decoration:none;font-weight:500;transition:var(--transition)}.error-reporting-link:hover{color:var(--color-primary-hover);text-decoration:underline}.song-row.used-song{opacity:.5;background-color:#f3f4f6}.song-row.used-song .row-title,.song-row.used-song .row-artist,.song-row.used-song .row-year,.song-row.used-song .row-id{color:var(--color-text-light);text-decoration:line-through}.song-title.clickable,.song-artist.clickable,.song-year.clickable{cursor:pointer;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--border-radius);transition:var(--transition);border:2px solid transparent}.song-title.clickable:hover,.song-artist.clickable:hover,.song-year.clickable:hover{background-color:var(--color-primary);color:var(--color-secondary);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.song-title.guessed,.song-artist.guessed,.song-year.guessed{background-color:#10b981;color:var(--color-secondary);border-color:#059669;cursor:default}.song-title.guessed:hover,.song-artist.guessed:hover,.song-year.guessed:hover{background-color:#10b981;color:var(--color-secondary);transform:none;box-shadow:var(--shadow)}.reveal-section-title{font-size:var(--font-size-xl);color:var(--color-accent);margin:0;display:flex;align-items:center;justify-content:center;gap:var(--spacing-3);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:var(--color-secondary);padding:var(--spacing-4) var(--spacing-6);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);border:3px solid rgba(255,255,255,.2);text-transform:uppercase;letter-spacing:.05em;font-weight:700;font-size:var(--font-size-lg);transition:var(--transition);cursor:default;min-height:60px}.reveal-section-title:hover{transform:translateY(-1px);box-shadow:0 8px 16px #f25c7e4d}.reveal-section-title svg{color:var(--color-secondary);filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.settings-section{background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-6);margin-bottom:var(--spacing-6);box-shadow:var(--shadow)}.section-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin-bottom:var(--spacing-6);text-align:center}.setting-group{display:flex;flex-direction:column;gap:var(--spacing-3);margin-bottom:var(--spacing-6)}.setting-group:last-child{margin-bottom:0}.setting-label{font-size:var(--font-size-base);font-weight:600;color:var(--color-accent);text-align:center}.player-number-selection{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--spacing-3);justify-content:center;margin-top:var(--spacing-3)}.player-number-button{display:flex;align-items:center;justify-content:center;padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-secondary);color:var(--color-text-light);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:var(--transition);min-width:60px;height:48px}.player-number-button:hover{background-color:var(--color-primary-light);color:var(--color-secondary);border-color:var(--color-primary-light)}.player-number-button.active{background-color:var(--color-primary);color:var(--color-secondary);border-color:var(--color-primary)}.player-names-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-4);margin-top:var(--spacing-3)}.player-name-input{display:flex;flex-direction:column;gap:var(--spacing-2)}.player-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-accent)}.player-name-field{padding:var(--spacing-3);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);background-color:var(--color-secondary);color:var(--color-accent);transition:var(--transition)}.player-name-field:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #f25c7e33}.player-name-field::-moz-placeholder{color:var(--color-text-light);font-style:italic}.player-name-field::placeholder{color:var(--color-text-light);font-style:italic}.game-mode-selection{display:flex;gap:var(--spacing-3);justify-content:center;margin-bottom:var(--spacing-4);flex-wrap:wrap}.mode-button{display:flex;align-items:center;padding:var(--spacing-3) var(--spacing-6);background-color:var(--color-secondary);color:var(--color-text-light);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:var(--transition);min-width:120px;justify-content:center}.mode-button:hover{background-color:var(--color-primary-light);color:var(--color-secondary);border-color:var(--color-primary-light)}.mode-button.active{background-color:var(--color-primary);color:var(--color-secondary);border-color:var(--color-primary)}.mode-specific-settings{margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--color-border)}.mode-rules{font-size:var(--font-size-sm);color:var(--color-text-light);font-style:italic;text-align:center;margin-top:var(--spacing-3);line-height:1.5}.points-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-6)}.points-dropdown{width:100%;padding:var(--spacing-3);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);background-color:var(--color-secondary);color:var(--color-accent);cursor:pointer;transition:var(--transition)}.points-dropdown:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #f25c7e33}.points-dropdown:disabled{opacity:.5;cursor:not-allowed;background-color:#f9fafb;color:var(--color-text-light)}.skip-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-6)}.skip-dropdown{width:100%;padding:var(--spacing-3);border:2px solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-base);background-color:var(--color-secondary);color:var(--color-accent);cursor:pointer;transition:var(--transition)}.skip-dropdown:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #f25c7e33}.skip-with-cost{position:relative;padding-left:var(--spacing-8)!important;padding-right:var(--spacing-8)!important}.skip-count{position:absolute;top:-8px;left:-8px;background:linear-gradient(135deg,var(--color-accent),var(--color-accent-light));color:#fff;font-size:var(--font-size-xs);font-weight:700;padding:var(--spacing-1) var(--spacing-2);border-radius:50%;min-width:24px;height:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #1e1e2f4d;border:2px solid var(--color-secondary)}.skip-cost{position:absolute;top:-8px;right:-8px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:#fff;font-size:var(--font-size-xs);font-weight:700;padding:var(--spacing-1) var(--spacing-2);border-radius:50%;min-width:24px;height:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #f25c7e4d;border:2px solid var(--color-secondary);animation:pulse-cost 2s infinite}.skip-with-cost:disabled .skip-count{background:linear-gradient(135deg,#6b7280,#4b5563);box-shadow:0 2px 4px #6b72804d}.skip-with-cost:disabled{opacity:.5;cursor:not-allowed}.skip-with-cost:disabled:hover{background-color:var(--color-secondary)!important;color:var(--color-accent)!important;border-color:var(--color-border)!important;transform:none!important}@keyframes pulse-cost{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.setting-note{font-size:var(--font-size-sm);color:var(--color-text-light);font-style:italic;text-align:center;margin-top:var(--spacing-2)}.setting-warning{font-size:var(--font-size-sm);color:#dc2626;font-weight:500;text-align:center;margin-top:var(--spacing-2)}.start-game-section{text-align:center;margin-top:var(--spacing-8)}.start-competition-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-3);padding:var(--spacing-5) var(--spacing-8);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:var(--color-secondary);border:none;border-radius:var(--border-radius-lg);font-size:var(--font-size-xl);font-weight:700;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-lg);min-width:250px;margin:0 auto}.start-competition-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 15px 25px -5px #f25c7e66}.start-competition-button:disabled{opacity:.6;cursor:not-allowed;transform:none;background:var(--color-text-light)}.validation-warning{color:#f25c7e;font-size:var(--font-size-sm);font-weight:500;text-align:center;margin-top:var(--spacing-4);padding:var(--spacing-3);background-color:#fef7f9;border:1px solid #f8c2d0;border-radius:var(--border-radius)}.validation-warning ul{list-style:none;padding:0;margin:var(--spacing-2) 0 0 0}.validation-warning li{margin:var(--spacing-1) 0}@media (max-width: 768px){.competition-settings{padding:var(--spacing-4)}.settings-title{font-size:var(--font-size-2xl)}.player-names-grid,.points-grid,.skip-settings-grid{grid-template-columns:1fr;gap:var(--spacing-4)}.game-mode-selection{flex-direction:column;align-items:center}.mode-button{width:100%;max-width:200px}.player-number-selection{grid-template-columns:repeat(5,1fr);gap:var(--spacing-2)}.player-number-button{width:100%;height:40px;font-size:var(--font-size-sm);min-width:45px}.start-competition-button{width:100%;max-width:300px;font-size:var(--font-size-lg);padding:var(--spacing-4) var(--spacing-6)}.competition-dashboard{padding:var(--spacing-4)}.status-cards{grid-template-columns:1fr;gap:var(--spacing-3)}.status-card{padding:var(--spacing-4)}.current-player-card{flex-direction:column;text-align:center;gap:var(--spacing-4)}.player-indicator{flex-direction:column;text-align:center;gap:var(--spacing-3)}.player-go-button{order:2;width:100%;max-width:200px}.player-score{text-align:center;order:3}.leaderboard-row{padding:var(--spacing-3)}.score-breakdown{justify-content:flex-start}.competition-scoring-section{padding:var(--spacing-4);gap:var(--spacing-2)}.scoring-item{padding:var(--spacing-3);gap:var(--spacing-3);min-height:50px}.scoring-checkbox{width:20px;height:20px}.scoring-label{font-size:var(--font-size-xs);margin-bottom:var(--spacing-1)}.scoring-value{font-size:var(--font-size-base);line-height:1.3}.scoring-points{font-size:var(--font-size-base);min-width:35px}.bonus-item{padding:var(--spacing-2) var(--spacing-3)}.bonus-label{font-size:var(--font-size-xs)}.bonus-points{font-size:var(--font-size-base)}.total-score{padding:var(--spacing-3)}.total-label{font-size:var(--font-size-sm)}.total-points{font-size:var(--font-size-lg)}.turn-complete-button{padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-sm);min-height:44px}}.winner-page{min-height:100vh;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));display:flex;align-items:center;justify-content:center;padding:var(--spacing-6);position:relative;overflow:hidden}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000}.confetti-piece{position:absolute;width:10px;height:10px;top:-10px;animation:confetti-fall 3s linear infinite}@keyframes confetti-fall{0%{transform:translateY(-100vh) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.winner-content{background-color:var(--color-secondary);border-radius:var(--border-radius-lg);padding:var(--spacing-8);max-width:800px;width:100%;box-shadow:var(--shadow-lg);text-align:center;position:relative;z-index:10}.winner-announcement{margin-bottom:var(--spacing-8)}.winner-trophy{color:var(--color-primary);margin-bottom:var(--spacing-4);animation:trophy-bounce 2s ease-in-out infinite}@keyframes trophy-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.winner-title{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-accent);margin-bottom:var(--spacing-2)}.winner-subtitle{font-size:var(--font-size-xl);color:var(--color-primary);font-weight:600;margin-bottom:var(--spacing-6)}.winner-names{display:flex;flex-direction:column;gap:var(--spacing-4);align-items:center}.winner-card{display:flex;align-items:center;gap:var(--spacing-3);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:var(--color-secondary);padding:var(--spacing-4) var(--spacing-6);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);min-width:300px;justify-content:center}.winner-name{font-size:var(--font-size-xl);font-weight:700}.winner-score{font-size:var(--font-size-lg);font-weight:600;opacity:.9}.game-statistics{margin-bottom:var(--spacing-8)}.stats-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin-bottom:var(--spacing-6)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-4);margin-bottom:var(--spacing-6)}.stat-card{background-color:#f8fafc;border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-4);display:flex;align-items:center;gap:var(--spacing-3)}.stat-content{text-align:left}.stat-value{font-size:var(--font-size-xl);font-weight:700;color:var(--color-accent);line-height:1}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:500}.final-scores{margin-bottom:var(--spacing-8)}.scores-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-accent);margin-bottom:var(--spacing-6)}.scores-list{display:flex;flex-direction:column;gap:var(--spacing-3)}.score-row{display:flex;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4);background-color:#f8fafc;border:1px solid var(--color-border);border-radius:var(--border-radius)}.score-row.winner-row{background:linear-gradient(135deg,#fbbf241a,#f59e0b1a);border-color:#fbbf24}.winner-actions{display:flex;gap:var(--spacing-4);justify-content:center;flex-wrap:wrap}.play-again-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-4) var(--spacing-8);background-color:var(--color-primary);color:var(--color-secondary);border:none;border-radius:var(--border-radius-lg);font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}.play-again-button:hover{background-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.back-to-menu-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-4) var(--spacing-8);background-color:var(--color-accent);color:var(--color-secondary);border:none;border-radius:var(--border-radius-lg);font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}.back-to-menu-button:hover{background-color:var(--color-accent-light);transform:translateY(-2px);box-shadow:var(--shadow-lg)}@media (max-width: 768px){.winner-page{padding:var(--spacing-4)}.winner-content{padding:var(--spacing-6)}.winner-title{font-size:var(--font-size-3xl)}.winner-subtitle{font-size:var(--font-size-lg)}.winner-card{min-width:250px;flex-direction:column;gap:var(--spacing-2)}.stats-grid{grid-template-columns:1fr 1fr;gap:var(--spacing-3)}.winner-actions{flex-direction:column;align-items:center}.play-again-button,.back-to-menu-button{width:100%;max-width:300px;justify-content:center}}@media (max-width: 480px){.player-number-selection{grid-template-columns:repeat(5,1fr);gap:var(--spacing-1)}.player-number-button{height:36px;font-size:var(--font-size-xs);min-width:40px;padding:var(--spacing-2)}.player-names-grid{grid-template-columns:1fr;gap:var(--spacing-3)}.player-name-field{font-size:var(--font-size-sm);padding:var(--spacing-2) var(--spacing-3)}}
