*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;color:#e2e8f0;background:linear-gradient(135deg,#1e293b,#334155,#475569);min-height:100vh;overflow-x:hidden}:root{--primary-color: #38bdf8;--primary-hover: #0ea5e9;--secondary-color: #10b981;--secondary-hover: #059669;--accent-color: #f59e0b;--accent-hover: #d97706;--danger-color: #ef4444;--danger-hover: #dc2626;--success-color: #22c55e;--warning-color: #f59e0b;--info-color: #3b82f6;--streak-color: #14b8a6;--correct-color: #22c55e;--incorrect-color: #ef4444;--difficulty-easy: #22c55e;--difficulty-medium: #f59e0b;--difficulty-hard: #ef4444;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #e2e8f0;--border-color: #e2e8f0;--text-primary: #1a202c;--text-secondary: #4a5568;--text-muted: #718096;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--border-radius: .5rem;--border-radius-lg: .75rem;--border-radius-xl: 1rem;--transition: all .2s ease-in-out;--transition-slow: all .3s ease-in-out}#app{min-height:100vh;display:flex;flex-direction:column}.main-container{display:flex;min-height:100vh;width:100%}.sidebar{width:320px;background:#0f172af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid rgba(148,163,184,.1);display:flex;flex-direction:column;padding:1.5rem;position:sticky;top:0;height:100vh;overflow-y:auto}.app-title{margin-bottom:2rem;text-align:center}.app-title h1{font-size:1.5rem;font-weight:700;color:#f1f5f9;text-shadow:0 2px 4px rgba(0,0,0,.3)}.challenges-list{flex:1;display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.challenge-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#1e293b99;border:1px solid rgba(148,163,184,.1);border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:left;color:#e2e8f0;font-size:.95rem;will-change:transform}.challenge-item:hover{background:#1e293bcc;border-color:#f1f5f94d;transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.challenge-item:active{transform:translateY(0)}.challenge-icon{font-size:1.5rem;flex-shrink:0}.challenge-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.challenge-name{font-weight:600;color:#f1f5f9}.challenge-desc{font-size:.85rem;color:#94a3b8;line-height:1.4}.difficulty-selector-bottom{display:flex;flex-direction:column;gap:.5rem;padding-top:1rem;border-top:1px solid rgba(148,163,184,.1)}.difficulty-selector-bottom label{font-size:.9rem;color:#94a3b8;font-weight:500}.current-difficulty{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#1e293b99;border:1px solid rgba(148,163,184,.1);border-radius:8px;cursor:pointer;transition:all .3s ease;color:#e2e8f0;font-size:.9rem}.current-difficulty:hover{background:#1e293bcc;border-color:#f1f5f94d}.difficulty-icon{font-size:1rem}.difficulty-text{font-weight:500}.difficulty-menu{background:#0f172af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.2);border-radius:8px;padding:.5rem;display:flex;flex-direction:column;gap:.25rem;box-shadow:0 10px 25px #0000004d;z-index:1000}.difficulty-option{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;color:#e2e8f0;font-size:.9rem}.difficulty-option:hover{background:#f1f5f91a}.difficulty-name{font-weight:500}.main-content{flex:1;padding:2rem;display:flex;flex-direction:column;overflow-y:auto}.home-content{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.welcome-section{text-align:center;margin-bottom:2rem}.welcome-section h2{font-size:2.5rem;font-weight:700;color:#f1f5f9;margin-bottom:1rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}.welcome-section p{font-size:1.1rem;color:#94a3b8}.session-info{font-size:1rem!important;color:#8b5cf6!important;font-weight:500;margin-top:.5rem}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#1e293b99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.1);border-radius:16px;padding:1.5rem;text-align:center;transition:all .3s ease}.stat-card:hover{background:#1e293bcc;border-color:#8b5cf64d;transform:translateY(-2px)}.stat-value{font-size:2rem;font-weight:700;color:#8b5cf6;display:block;margin-bottom:.5rem}.action-buttons{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem}.action-btn{padding:.75rem 1.5rem;background:#1e293b99;border:1px solid rgba(148,163,184,.2);border-radius:12px;color:#e2e8f0;font-size:.95rem;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.action-btn:hover{background:#8b5cf633;border-color:#8b5cf666;transform:translateY(-1px)}.game-screen{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.game-header{display:flex;justify-content:between;align-items:center;gap:1rem;padding:1rem;background:#1e293b99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.1);border-radius:16px}.back-btn{padding:.75rem 1rem;background:#47556999;border:1px solid rgba(148,163,184,.2);border-radius:8px;color:#e2e8f0;font-size:.9rem;cursor:pointer;transition:all .3s ease}.back-btn:hover{background:#475569cc;transform:translateY(-1px)}.game-info{flex:1;display:flex;align-items:center;gap:1rem}.challenge-name{font-size:1.2rem;font-weight:600;color:#f1f5f9}.difficulty-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;text-transform:capitalize}.difficulty-badge.difficulty-easy{background:#22c55e33;border:1px solid rgba(34,197,94,.3);color:var(--difficulty-easy)}.difficulty-badge.difficulty-medium{background:#f59e0b33;border:1px solid rgba(245,158,11,.3);color:var(--difficulty-medium)}.difficulty-badge.difficulty-hard{background:#ef444433;border:1px solid rgba(239,68,68,.3);color:var(--difficulty-hard)}.session-timer{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#47556999;border:1px solid rgba(148,163,184,.2);border-radius:8px}.timer-label{font-size:.9rem;color:#94a3b8;font-weight:500}.session-timer-value{font-size:1.25rem;font-weight:700;color:#f1f5f9;background:#1e293b99;padding:.5rem 0;border-radius:8px;width:60px;text-align:center;transition:all .3s ease;font-variant-numeric:tabular-nums;display:flex;align-items:center;justify-content:center;border:1px solid rgba(148,163,184,.1)}.session-timer-value.warning{color:var(--warning-color);background:#f59e0b33;animation:timerPulse 1s infinite}@keyframes timerPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.game-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1rem;background:#1e293b99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.1);border-radius:16px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-label{font-size:.9rem;color:#94a3b8;font-weight:500}.stat-value{font-size:1.25rem;font-weight:700;color:#e2e8f0;min-width:30px;text-align:center}.stat-value.correct{color:var(--correct-color)}.stat-value.incorrect{color:var(--incorrect-color)}.stat-value.warning{color:var(--warning-color);animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.question-area{background:#1e293b99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.1);border-radius:16px;padding:2rem;display:flex;flex-direction:column;gap:.5rem;min-height:300px}.question-display{text-align:center}.question-display h3{font-size:2rem;font-weight:600;color:#f1f5f9;margin-bottom:1rem}.answer-section{display:flex;gap:1rem;align-items:center;justify-content:center}.answer-input{padding:1rem 1.5rem;font-size:1.2rem;background:#0f172acc;border:2px solid rgba(148,163,184,.2);border-radius:12px;color:#f1f5f9;text-align:center;min-width:200px;transition:all .3s ease}.answer-input:focus{outline:none;border-color:#94a3b8;box-shadow:0 0 0 3px #94a3b81a}.answer-input::placeholder{color:#64748b}.input-hint{font-size:.875rem;color:#94a3b8;text-align:center;margin-top:.5rem;font-style:italic;opacity:.8}.submit-btn{padding:1rem 2rem;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;will-change:transform}.submit-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 8px 25px #3b82f64d}.submit-btn:active{transform:translateY(0)}.feedback{text-align:center;border-radius:12px;font-size:1.1rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;height:60px;margin-bottom:0;position:relative}.feedback.correct{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.feedback.incorrect{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.3)}.feedback-icon{font-size:1.5rem}.progress-info{text-align:center;padding:1rem;background:#1e293b99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.1);border-radius:16px}.questions-answered{font-size:1.1rem;color:#94a3b8;font-weight:500}.brief-feedback{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;width:100%;height:60px;text-align:center;box-sizing:border-box}.brief-feedback.correct{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.brief-feedback.incorrect{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.3)}.brief-feedback .feedback-icon{font-size:1.4rem;flex-shrink:0}.brief-feedback .feedback-text{font-size:1.2rem;font-weight:600;white-space:nowrap}.results-screen{max-width:800px;margin:0 auto;text-align:center}.results-header{margin-bottom:2rem}.results-header h2{font-size:2.5rem;font-weight:700;color:#f1f5f9;margin-bottom:.5rem}.results-header h3{font-size:1.2rem;color:#94a3b8;font-weight:500}.results-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.5rem;margin-bottom:2rem;max-width:1000px;margin-left:auto;margin-right:auto}.result-card{background:#1e293b99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.1);padding:1.5rem;border-radius:16px;transition:var(--transition-slow);flex:1;min-width:150px}.result-card:hover{transform:translateY(-5px);border-color:#94a3b84d}.result-value{font-size:2rem;font-weight:700;color:#f1f5f9;margin-bottom:.5rem}.result-label{font-size:.9rem;color:#94a3b8;font-weight:500}.results-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.primary-btn{padding:.75rem 1.5rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition);background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none}.primary-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 4px 15px #3b82f633}.secondary-btn{padding:1rem 2rem;background:#1e293b99;border:1px solid rgba(148,163,184,.2);border-radius:12px;color:#e2e8f0;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.secondary-btn:hover{background:#1e293bcc;border-color:#8b5cf666;transform:translateY(-1px)}.keyboard-hint{font-size:.875rem;color:#94a3b8;text-align:center;margin-top:1rem;opacity:.8}.keyboard-hint kbd{background:#1e293b99;border:1px solid rgba(148,163,184,.2);border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-family:inherit;color:#e2e8f0;margin:0 .25rem}.recent-achievements-section{text-align:center}.recent-achievements-section h3{font-size:1.2rem;color:#f1f5f9;margin-bottom:1rem}.recent-achievements-list{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.recent-achievement{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#1e293b99;border:1px solid rgba(148,163,184,.1);border-radius:20px;font-size:.9rem;color:#e2e8f0}.settings-screen,.achievements-screen{max-width:800px;margin:0 auto}.section-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.section-header h2{font-size:2rem;font-weight:700;color:#f1f5f9}.settings-content{display:flex;flex-direction:column;gap:2rem}.setting-group{background:#1e293b99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.1);border-radius:16px;padding:2rem}.setting-group h3{font-size:1.25rem;color:#f1f5f9;margin-bottom:1.5rem}.setting-item{margin-bottom:1.5rem}.setting-item:last-child{margin-bottom:0}.setting-label{display:flex;align-items:center;gap:.75rem;font-weight:500;color:#e2e8f0;cursor:pointer}.setting-description{font-size:.875rem;color:#94a3b8;margin-top:.5rem}.danger-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#dc2626,#ef4444);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease}.danger-btn:hover{background:linear-gradient(135deg,#b91c1c,#dc2626);transform:translateY(-1px);box-shadow:0 4px 15px #dc26264d}input[type=checkbox]{width:1.25rem;height:1.25rem;accent-color:#8b5cf6}input[type=range]{width:100%;margin-top:.5rem;accent-color:#8b5cf6}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.achievement-card{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:#1e293b99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(148,163,184,.1);border-radius:16px;transition:all .3s ease}.achievement-card.unlocked{border-left:4px solid #4ade80}.achievement-card.locked{opacity:.6;border-left:4px solid #64748b}.achievement-card:hover{background:#1e293bcc;transform:translateY(-2px)}.achievement-icon{font-size:2rem;min-width:3rem;text-align:center}.achievement-info{flex:1}.achievement-name{font-size:1.125rem;font-weight:700;margin-bottom:.25rem;color:#f1f5f9}.achievement-description{font-size:.875rem;color:#94a3b8;margin-bottom:.5rem}.achievement-date{font-size:.75rem;color:#64748b;font-style:italic}.notification-container{position:fixed;top:1rem;right:1rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem}.notification{padding:1rem 1.5rem;border-radius:12px;color:#fff;font-weight:500;box-shadow:0 8px 25px #0003;transform:translate(100%);opacity:0;transition:all .3s ease}.notification.show{transform:translate(0);opacity:1}.notification-success{background:linear-gradient(135deg,#059669,#10b981)}.notification-error{background:linear-gradient(135deg,#dc2626,#ef4444)}.notification-info{background:linear-gradient(135deg,#0284c7,#0ea5e9)}.mobile-header{display:none;background:#0f172af2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(148,163,184,.1);padding:1rem;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:1000}.mobile-title{font-size:1.25rem;font-weight:700;color:#f1f5f9;margin:0}.hamburger-btn{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.hamburger-btn span{width:1.5rem;height:.125rem;background:#e2e8f0;border-radius:.125rem;transition:all .3s ease}.sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.close-sidebar-btn{background:none;border:none;color:#e2e8f0;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:.5rem;transition:background-color .2s ease}.close-sidebar-btn:hover{background:#94a3b81a}.sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;opacity:0;visibility:hidden;transition:all .3s ease}.sidebar-overlay.overlay-visible{opacity:1;visibility:visible}@media (max-width: 768px){.mobile-header{display:flex}.main-container{flex-direction:column}.sidebar{position:fixed;top:0;left:-320px;width:320px;height:100vh;z-index:1000;transition:left .3s ease;border-right:1px solid rgba(148,163,184,.1);border-bottom:none}.sidebar.sidebar-open{left:0}.challenges-list{flex-direction:column;gap:.75rem;margin-bottom:2rem}.challenge-item{min-width:auto;flex-shrink:1}.main-content{padding:1rem;margin-top:0}.ready-screen{padding:1rem}.ready-header{margin-bottom:2rem!important}.ready-content{margin-top:-5vh!important}.start-text{font-size:1.25rem!important;line-height:1.5}.game-header{flex-direction:column;gap:1rem}.game-stats{grid-template-columns:repeat(2,1fr);gap:.75rem}.answer-section{flex-direction:column}.answer-input{min-width:auto;width:100%}.welcome-section h2{font-size:2rem}.stats-overview{grid-template-columns:repeat(2,1fr);gap:1rem}.results-stats{grid-template-columns:repeat(2,1fr)!important;gap:1rem;max-width:100%!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.challenge-card,.stat-card,.achievement-card,.result-card{will-change:transform}.time-progress{will-change:width}@media print{.app-header,.notification-container{display:none}.main-content{box-shadow:none;border:none}}#current-streak{color:var(--streak-color);font-weight:700}
