.header{background:#1e293bcc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(148,163,184,.1);padding:1rem 0;position:sticky;top:0;z-index:100}.nav{display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--text-primary)}.logo-icon{width:40px;height:40px;background:var(--gradient-primary);border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem}.logo-text{font-family:Space Grotesk,sans-serif;font-size:1.5rem;font-weight:700}.nav-links{display:flex;align-items:center;gap:1.5rem}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color .3s ease}.nav-link:hover{color:var(--text-primary)}.nav-user{display:flex;align-items:center;gap:1rem}.user-info{display:flex;align-items:center;gap:.5rem}.user-avatar{width:32px;height:32px;background:var(--gradient-accent);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;color:#fff}.user-score{color:var(--accent);font-weight:600}.btn-logout{background:transparent;border:1px solid var(--error);color:var(--error);padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s ease}.btn-logout:hover{background:var(--error);color:#fff}.btn-sm{padding:.5rem 1rem;font-size:.875rem}@media (max-width: 768px){.nav-links{gap:1rem}.logo-text,.user-score{display:none}}.home{padding:2rem 0}.hero{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;padding:4rem 0}.hero-title{font-size:3.5rem;line-height:1.1;margin-bottom:1.5rem}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.7}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-visual{display:flex;justify-content:center;align-items:center}.typography-showcase{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;transform:rotate(5deg)}.typo-card{width:120px;height:120px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:700;box-shadow:0 10px 40px #0000004d;animation:float 3s ease-in-out infinite}.typo-card.serif{background:var(--gradient-primary);font-family:Georgia,serif;animation-delay:0s}.typo-card.sans{background:var(--gradient-accent);font-family:Inter,sans-serif;animation-delay:.5s}.typo-card.script{background:linear-gradient(135deg,#f472b6,#fb923c);font-family:"cursive";animation-delay:1s}.typo-card.display{background:linear-gradient(135deg,#10b981,#3b82f6);font-family:Impact,sans-serif;animation-delay:1.5s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.features{padding:4rem 0}.section-title{text-align:center;font-size:2.5rem;margin-bottom:3rem}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.feature-card{background:var(--gradient-card);border-radius:20px;padding:2rem;text-align:center;border:1px solid rgba(148,163,184,.1);transition:transform .3s ease}.feature-card:hover{transform:translateY(-5px)}.feature-icon{width:60px;height:60px;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1.5rem}.feature-card h3{margin-bottom:.75rem;color:var(--text-primary)}.feature-card p{color:var(--text-secondary);font-size:.95rem}.cta{padding:4rem 0}.cta-card{background:var(--gradient-primary);border-radius:30px;padding:4rem;text-align:center}.cta-card h2{font-size:2.5rem;margin-bottom:1rem}.cta-card p{font-size:1.25rem;opacity:.9;margin-bottom:2rem}.cta-card .btn{background:#fff;color:var(--primary)}.cta-card .btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0000004d}@media (max-width: 1024px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.hero{grid-template-columns:1fr;text-align:center;gap:3rem}.hero-title{font-size:2.5rem}.hero-actions{justify-content:center}.hero-visual{order:-1}.typography-showcase{transform:none}.typo-card{width:100px;height:100px;font-size:2.5rem}.features-grid{grid-template-columns:1fr}.cta-card{padding:2.5rem 1.5rem}.cta-card h2{font-size:1.75rem}}.auth-page{min-height:calc(100vh - 80px);display:flex;align-items:center;padding:2rem 0}.auth-container{max-width:440px;margin:0 auto}.auth-card{padding:2.5rem}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h1{font-size:2rem;margin-bottom:.5rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-header p{color:var(--text-secondary)}.alert{padding:1rem;border-radius:12px;margin-bottom:1.5rem;font-size:.95rem}.alert-error{background:#f43f5e26;color:var(--error);border:1px solid rgba(244,63,94,.3)}.alert-success{background:#10b98126;color:var(--success);border:1px solid rgba(16,185,129,.3)}.auth-footer{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(148,163,184,.1)}.auth-footer p{color:var(--text-secondary)}.auth-footer a{color:var(--primary-light);text-decoration:none;font-weight:600}.auth-footer a:hover{text-decoration:underline}@media (max-width: 480px){.auth-card{padding:1.5rem}}.game-page{padding:2rem 0;min-height:calc(100vh - 100px)}.game-start{max-width:500px;margin:0 auto}.start-card{text-align:center;padding:3rem 2rem}.start-icon{width:100px;height:100px;background:var(--gradient-primary);border-radius:25px;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:800;margin:0 auto 1.5rem}.start-card h1{font-size:2.5rem;margin-bottom:.75rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.start-card>p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:1.5rem}.game-rules{list-style:none;margin-bottom:2rem;padding:1.5rem;background:var(--bg-primary);border-radius:15px;text-align:left}.game-rules li{padding:.5rem 0 .5rem 1.5rem;position:relative;color:var(--text-secondary)}.game-rules li:before{content:"✓";position:absolute;left:0;color:var(--success)}.game-playing{max-width:700px;margin:0 auto}.game-header{margin-bottom:2rem}.progress-info{display:flex;justify-content:space-between;margin-bottom:.75rem;color:var(--text-secondary)}.current-score{color:var(--accent);font-weight:600}.progress-bar{height:8px;background:var(--bg-card);border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:var(--gradient-primary);border-radius:10px;transition:width .5s ease}.question-card{text-align:center}.logo-container{background:#fff;border-radius:20px;padding:2rem;margin-bottom:2rem;min-height:200px;display:flex;align-items:center;justify-content:center}.logo-image{max-width:100%;max-height:180px;object-fit:contain}.question-card h2{font-size:1.5rem;margin-bottom:1.5rem}.options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.option-btn{padding:1.25rem 1.5rem;background:var(--bg-primary);border:2px solid var(--bg-card);border-radius:15px;color:var(--text-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.option-btn:hover:not(:disabled){border-color:var(--primary);background:#7c3aed1a}.option-btn.selected{border-color:var(--primary);background:#7c3aed33}.option-btn.correct{border-color:var(--success);background:#10b98133;animation:pulse .5s ease}.option-btn.incorrect{border-color:var(--error);background:#f43f5e33}.option-btn:disabled{cursor:not-allowed}.result-message{margin-top:1.5rem;padding:1rem;border-radius:12px;font-weight:600;font-size:1.1rem}.result-message.success{background:#10b98133;color:var(--success)}.result-message.error{background:#f43f5e33;color:var(--error)}.game-finished{max-width:500px;margin:0 auto}.finish-card{text-align:center;padding:3rem 2rem}.finish-icon{font-size:4rem;margin-bottom:1rem}.finish-card h1{font-size:2rem;margin-bottom:2rem}.final-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.stat-box{background:var(--bg-primary);padding:1.5rem;border-radius:15px;display:flex;flex-direction:column;align-items:center}.stat-value{font-size:2.5rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-box.success .stat-value{background:var(--gradient-success);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-box.error .stat-value{color:var(--error);background:none;-webkit-text-fill-color:var(--error)}.stat-label{color:var(--text-secondary);font-size:.875rem;margin-top:.25rem}.finish-message{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem}.finish-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media (max-width: 600px){.options-grid,.final-stats{grid-template-columns:1fr}.finish-actions{flex-direction:column}}.leaderboard-page{padding:2rem 0}.page-header{text-align:center;margin-bottom:3rem}.page-header h1{font-size:2.5rem;margin-bottom:.5rem}.page-header p{color:var(--text-secondary);font-size:1.1rem}.global-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}.stat-card{display:flex;flex-direction:column;align-items:center;padding:1.5rem;text-align:center}.stat-icon{font-size:2rem;margin-bottom:.5rem}.stat-card .stat-value{font-size:2rem;font-weight:700;color:var(--text-primary)}.stat-card .stat-label{color:var(--text-secondary);font-size:.875rem}.leaderboard-card{overflow:hidden;padding:0}.leaderboard-table{width:100%;border-collapse:collapse}.leaderboard-table th{background:var(--bg-primary);padding:1rem 1.5rem;text-align:left;font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.leaderboard-table td{padding:1rem 1.5rem;border-bottom:1px solid rgba(148,163,184,.1)}.leaderboard-table tr:last-child td{border-bottom:none}.leaderboard-table tr.top-player{background:#7c3aed0d}.position-cell{width:60px}.position{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;background:var(--bg-primary);border-radius:8px;font-weight:600;font-size:.875rem}.position.medal{background:transparent;font-size:1.5rem}.player-cell{display:flex;align-items:center;gap:.75rem}.player-avatar{width:36px;height:36px;background:var(--gradient-primary);border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.player-name{font-weight:500}.score-cell .score{font-weight:700;color:var(--primary-light)}.games-cell{color:var(--text-secondary)}.accuracy{display:inline-flex;padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.accuracy.high{background:#10b98133;color:var(--success)}.accuracy.medium{background:#f59e0b33;color:var(--warning)}.accuracy.low{background:#f43f5e33;color:var(--error)}.empty-state{text-align:center;padding:4rem 2rem}.empty-state p{font-size:1.1rem}.empty-state .text-muted{color:var(--text-muted);margin-top:.5rem}@media (max-width: 768px){.global-stats{grid-template-columns:1fr}.leaderboard-table th,.leaderboard-table td{padding:.75rem}.games-cell,.leaderboard-table th:nth-child(4){display:none}.player-cell{flex-direction:column;align-items:flex-start;gap:.25rem}}.profile-page{padding:2rem 0;max-width:800px;margin:0 auto}.profile-header{text-align:center;margin-bottom:3rem}.profile-avatar{width:100px;height:100px;background:var(--gradient-primary);border-radius:25px;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:700;margin:0 auto 1.5rem;box-shadow:0 10px 30px #7c3aed4d}.profile-header h1{font-size:2rem;margin-bottom:.5rem}.profile-email{color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2rem}.stat-card{display:flex;align-items:center;gap:1rem;padding:1.5rem}.stat-card .stat-icon{width:50px;height:50px;background:var(--bg-primary);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.stat-content{display:flex;flex-direction:column}.stat-content .stat-value{font-size:1.75rem;font-weight:700;color:var(--text-primary)}.stat-content .stat-value.success{color:var(--success)}.stat-content .stat-value.error{color:var(--error)}.stat-content .stat-label{color:var(--text-secondary);font-size:.875rem}.accuracy-card{margin-bottom:2rem}.accuracy-card h3{margin-bottom:1.5rem;text-align:center}.accuracy-display{display:flex;align-items:center;gap:2rem}.accuracy-circle{position:relative;width:150px;height:150px;flex-shrink:0}.accuracy-circle svg{width:100%;height:100%}.accuracy-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.accuracy-info{flex:1}.accuracy-info p{color:var(--text-secondary);line-height:1.7}.accuracy-info strong{color:var(--text-primary)}.accuracy-tip{margin-top:.75rem;color:var(--primary-light)!important}.profile-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media (max-width: 600px){.stats-grid{grid-template-columns:1fr}.accuracy-display{flex-direction:column;text-align:center}.profile-actions{flex-direction:column}}.admin-page{padding:2rem 0}.admin-grid{display:grid;grid-template-columns:400px 1fr;gap:2rem;align-items:start}.upload-section .card{position:sticky;top:100px}.upload-section h2,.logos-section h2{margin-bottom:1.5rem;font-size:1.25rem}.file-input{padding:.5rem}.file-input::file-selector-button{background:var(--gradient-primary);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-weight:500;cursor:pointer;margin-right:1rem}.logos-grid{display:grid;gap:1rem;max-height:600px;overflow-y:auto}.logo-card{display:grid;grid-template-columns:80px 1fr auto;gap:1rem;align-items:center;padding:1rem;background:var(--bg-primary);border-radius:12px;border:1px solid rgba(148,163,184,.1)}.logo-card.inactive{opacity:.5}.logo-preview{width:80px;height:60px;background:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.logo-info{display:flex;flex-direction:column;gap:.25rem}.logo-info h4{font-size:1rem;font-weight:600}.logo-type{font-size:.875rem;color:var(--primary-light)}.logo-difficulty{font-size:.75rem;color:var(--text-muted)}.btn-sm{padding:.5rem 1rem;font-size:.75rem}.btn-error{background:#f43f5e33;color:var(--error);border:1px solid var(--error)}.btn-success{background:#10b98133;color:var(--success);border:1px solid var(--success)}.empty-state{text-align:center;padding:2rem;color:var(--text-secondary)}.loading-state{text-align:center;padding:4rem 0}.spinner{width:50px;height:50px;border:3px solid var(--bg-card);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 900px){.admin-grid{grid-template-columns:1fr}.upload-section .card{position:static}.logo-card{grid-template-columns:60px 1fr}.logo-card .btn{grid-column:span 2;justify-self:stretch}}:root{--primary: #7C3AED;--primary-light: #A78BFA;--primary-dark: #5B21B6;--secondary: #F472B6;--secondary-light: #F9A8D4;--accent: #06B6D4;--accent-light: #67E8F9;--success: #10B981;--error: #F43F5E;--warning: #F59E0B;--bg-primary: #0F172A;--bg-secondary: #1E293B;--bg-card: #334155;--text-primary: #F8FAFC;--text-secondary: #94A3B8;--text-muted: #64748B;--gradient-primary: linear-gradient(135deg, #7C3AED 0%, #F472B6 100%);--gradient-accent: linear-gradient(135deg, #06B6D4 0%, #7C3AED 100%);--gradient-success: linear-gradient(135deg, #10B981 0%, #06B6D4 100%);--gradient-card: linear-gradient(145deg, #1E293B 0%, #334155 100%)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6}h1,h2,h3,h4{font-family:Space Grotesk,sans-serif;font-weight:700}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;border:none;gap:.5rem}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 15px #7c3aed66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #7c3aed80}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:2px solid var(--primary)}.btn-secondary:hover{background:var(--primary)}.btn-accent{background:var(--gradient-accent);color:#fff;box-shadow:0 4px 15px #06b6d466}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.btn-block{width:100%}.card{background:var(--gradient-card);border-radius:20px;padding:2rem;border:1px solid rgba(148,163,184,.1);box-shadow:0 10px 40px #0000004d}.input-group{margin-bottom:1.25rem}.input-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-secondary)}.input{width:100%;padding:.875rem 1rem;border-radius:12px;border:2px solid var(--bg-card);background:var(--bg-secondary);color:var(--text-primary);font-size:1rem;transition:all .3s ease}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #7c3aed33}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{animation:fadeIn .5s ease forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.page{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:2rem 0}.text-center{text-align:center}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.flex{display:flex}.flex-center{justify-content:center;align-items:center}.flex-between{justify-content:space-between}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.badge{display:inline-flex;padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.badge-success{background:#10b98133;color:var(--success)}.badge-error{background:#f43f5e33;color:var(--error)}@media (max-width: 768px){.card{padding:1.5rem}.btn-lg{padding:.875rem 1.5rem}}
