#userDisplay{display:none;font-weight:500;color:var(--text);background-color:var(--white);padding:6px 12px;border-radius:20px;font-size:.875rem;transition:background-color .3s ease,color .3s ease;box-shadow:var(--shadow);margin-right:8px}.logo{height:100px;width:auto}.dark-theme .logo{content:url(/assets/logo-dark-Dojg_BeZ.PNG)}body.dark-theme #userDisplay{background-color:var(--primary);color:#fff}body.dark-mode .modal{background:#1f1f1f;color:#eee}body.dark-theme .modal-title{color:var(--primary);font-weight:700}body.dark-theme .modal{background:linear-gradient(135deg,#1f1f1f,#2a2e33);border-radius:16px;box-shadow:0 20px 40px #0009,0 8px 16px #0006,0 0 0 1px #ffffff0d;color:#e2e8f0;border:1px solid #3b5bdb}body.dark-theme .modal-header{background:linear-gradient(135deg,#2a2e33,#3b5bdb);color:#fff}body.dark-theme .modal-body{background:linear-gradient(180deg,#1f1f1f,#2a2e33);color:#e2e8f0}body.dark-theme .modal-footer{border-top:1px solid #3b5bdb;background-color:#2a2e33}body.dark-theme .modal-close{background:#ffffff1a;color:#e2e8f0}body.dark-theme .modal-body::-webkit-scrollbar{width:8px}body.dark-theme .modal-body::-webkit-scrollbar-thumb{background-color:#444;border-radius:4px}.stats-grid-3x2{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:15px}.modal-backdrop.profile-menu{position:fixed;display:block;background-color:transparent;height:100vh;width:100vw;top:0;left:0;z-index:999}@media (max-width: 768px){.profile-menu-content{right:10px;width:calc(100% - 20px);max-width:300px}}.primary-button,.danger-button,.cancel-button{display:inline-block;padding:10px 16px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;font-size:14px;min-width:100px;text-align:center;outline:none}.profile-avatar{width:70px;height:70px;border-radius:50%;overflow:hidden;flex-shrink:0;border:2px solid #4d7bf3;background-color:#e6ecff;display:flex;align-items:center;justify-content:center;margin-right:15px;box-sizing:content-box}.avatar-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#4d7bf3;color:#fff;font-weight:700;font-size:28px;text-transform:uppercase}.modal-overlay{background-color:#00000080;display:none;position:fixed;z-index:1000;inset:0;justify-content:center;align-items:center;opacity:0!important;pointer-events:none!important;transition:var(--transition)}.modal-overlay.active{display:flex!important;opacity:1!important;pointer-events:auto!important;z-index:999999!important;transform:translateY(0);visibility:visible!important;position:fixed!important;inset:0!important}.modal-overlay.active .modal{position:relative;min-width:300px;min-height:200px;background-color:var(--white);border:1px solid var(--text-light);opacity:1!important;transform:translateY(0)!important;pointer-events:auto!important;box-shadow:0 0 15px #0000004d!important;min-width:300px!important;min-height:200px!important}.modal{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;box-shadow:0 20px 40px #0000001f,0 8px 16px #00000014,0 0 0 1px #0000000d;width:90%;padding:0;max-width:500px;max-height:90vh;overflow:hidden;animation:modal-appear .3s cubic-bezier(.34,1.56,.64,1);border:1px solid rgba(148,163,184,.2)}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px 28px;border-radius:16px 16px 0 0;position:relative;overflow:hidden}.modal-header:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,rgba(255,255,255,.1) 0%,transparent 50%);pointer-events:none}.modal-title{font-size:24px;font-weight:700;margin:0;letter-spacing:-.5px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.modal-body{padding:32px 28px;background:linear-gradient(180deg,#fff,#f8fafc);max-height:60vh;overflow-y:auto}.modal-body p{font-size:16px;line-height:1.6;color:#374151;margin:0 0 24px;max-height:60vh;overflow-y:auto}.button-container{display:flex;flex-direction:column;gap:16px;margin:28px 0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 24px;border-radius:12px;font-weight:600;font-size:16px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;cursor:pointer;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000026}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s}.btn:hover:before{left:100%}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0003}.btn-kofi{background:linear-gradient(135deg,#ff5e5b,#ff9068);color:#fff;box-shadow:0 4px 15px #ff5e5b66}.btn-kofi:hover{box-shadow:0 8px 25px #ff5e5b99}.btn-cashapp{background:linear-gradient(135deg,#00d632,#00b52a);color:#fff;box-shadow:0 4px 15px #00d63266}.btn-cashapp:hover{box-shadow:0 8px 25px #00d63299}.tip-message{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:1px solid rgba(148,163,184,.2);border-left:4px solid #667eea;border-radius:12px;padding:20px;font-style:italic;color:#475569;font-size:15px;margin-top:24px!important;position:relative;overflow:hidden}.tip-message:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#667eea,#764ba2)}.modal-close{position:absolute;top:12px;right:16px;background:#fff3;border:none;color:#fff;font-size:24px;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000001a}.modal-close:hover{background:#ffffff4d;transform:rotate(90deg) scale(1.1)}.btn svg{margin-right:10px;transition:transform .2s ease}.btn:hover svg{transform:scale(1.1)}@media (max-width: 600px){.modal{width:95%;margin:20px}.modal-header{padding:20px 24px}.modal-title{font-size:20px}.modal-body{padding:24px 20px}.btn{padding:14px 20px;font-size:15px}}@keyframes modal-appear{0%{opacity:0;transform:scale(.8) translateY(40px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modal-appear{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-title{font-size:18px;font-weight:600;font-size:1.25rem;color:#333}body.dark-theme .modal-close{color:#ccc}body.dark-theme .modal-close:hover{color:#fff}body.dark-theme .auth-container h2{color:var(--primary);font-weight:700}.modal-footer{padding:16px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:10px}#feedbackMessage{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;resize:vertical;font-family:inherit;transition:border-color .2s}#feedbackMessage:focus{outline:none;border-color:#4d7bf3;box-shadow:0 0 0 2px #4d7bf333}@media (max-width: 480px){.modal{width:95%}.modal-header,.modal-body,.modal-footer{padding:12px 16px}}.profile-header{padding:20px;background-color:#f8f9fa;border-bottom:1px solid #eee;display:flex;align-items:center;box-sizing:border-box}.profile-avatar img,.profile-avatar .avatar-initials{width:100%;height:100%}.primary-button{background-color:#4d7bf3;color:#fff}.primary-button:hover{background-color:#3b67d1;transform:translateY(-1px)}.danger-button{background-color:#e74c3c;color:#fff}.danger-button:hover{background-color:#c0392b}.cancel-button{background-color:#f0f0f0;color:#333}.cancel-button:hover{background-color:#e0e0e0}#loginButton,#registerButton{min-width:80px;margin-left:8px}#loginButton{background-color:#4d7bf3;color:#fff}#registerButton{background-color:#4d7bf31a;color:#4d7bf3;border:1px solid #4d7bf3}#profileButton{display:flex;align-items:center;gap:8px;background:var(--white);border:2px solid #4d7bf3;border-radius:24px;padding:4px 12px 4px 4px;cursor:pointer;transition:all .3s ease;font-size:14px;font-weight:500;color:#4d7bf3;outline:none;position:relative}#profileButton:hover{background:#4d7bf3;color:#fff;transform:translateY(-1px);box-shadow:0 4px 16px #4d7bf34d}#profileButton:active{transform:translateY(0)}.profile-username{margin-left:4px;font-size:14px}.profile-arrow{margin-left:4px;font-size:12px;transition:transform .2s ease}#profileButton:hover .profile-arrow{transform:rotate(180deg)}.user-avatar{width:28px;height:28px;border-radius:50%;border:2px solid #4d7bf3;background-color:#e6ecff;object-fit:cover;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:all .3s ease;flex-shrink:0}#profileButton:hover .user-avatar{border-color:#fff}.avatar-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background-color:#4d7bf3;color:#fff;font-weight:700;font-size:12px;text-transform:uppercase;transition:all .3s ease}#profileButton:hover .avatar-initials{background-color:#fff;color:#4d7bf3}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;padding:24px;width:90%;max-width:400px;box-shadow:0 4px 20px #00000026;position:relative;animation:modal-fade-in .3s ease}@keyframes modal-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.close-modal{position:absolute;top:12px;right:16px;font-size:24px;color:#888;cursor:pointer;transition:color .2s}.close-modal:hover{color:#333}.auth-container{width:100%}.auth-container h2{margin-top:0;margin-bottom:24px;color:#333;text-align:center;font-size:22px}.auth-buttons{display:flex;align-items:center;gap:10px}.profile-menu{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:flex-start;justify-content:flex-end;z-index:1000;padding:20px}.profile-header{padding:16px;background-color:#f8f9fa;border-bottom:1px solid #eee;display:flex;align-items:center}.profile-actions{padding:8px 0}.menu-item{padding:10px 16px;color:#333;display:flex;align-items:center;transition:background-color .2s;cursor:pointer}.menu-item:hover{background-color:#f0f0f0}.menu-item i{margin-right:8px;font-size:16px;color:#666}.menu-divider{height:1px;background-color:#eee;margin:4px 0}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#555;font-size:14px}.form-group input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s}.form-group input:focus{border-color:#4d7bf3;outline:none;box-shadow:0 0 0 2px #4d7bf333}.auth-links{margin-top:16px;text-align:center;font-size:14px}.auth-links a{color:#4d7bf3;text-decoration:none;margin:0 8px;transition:color .2s}.auth-links a:hover{color:#3b67d1;text-decoration:underline}.error-message,.success-message{padding:10px;border-radius:4px;margin:12px 0;font-size:14px}.error-message{background-color:#ffeaea;color:#e74c3c;border:1px solid #ffcdd2}.success-message{background-color:#eaffea;color:#27ae60;border:1px solid #c8e6c9}.profile-header{background-color:#f8f9fa;padding:16px;display:flex;align-items:center;border-bottom:1px solid #eee}.profile-info{margin-left:12px}.profile-info h3{margin:0 0 4px;font-size:16px;color:#333}.profile-info p{margin:0;font-size:13px;color:#666}.profile-actions{padding:8px}.menu-button{display:flex;align-items:center;width:100%;text-align:left;padding:10px 12px;border:none;background:none;cursor:pointer;font-size:14px;color:#333;border-radius:4px;margin-bottom:4px;transition:background-color .2s}.menu-button:hover{background-color:#f0f0f0}.menu-button i{margin-right:8px;font-size:16px}.danger-title{color:#e74c3c}.warning-box{background-color:#fff9e6;border:1px solid #ffe0b2;border-radius:4px;padding:12px;margin-bottom:16px}.warning-box p{margin:0 0 8px;font-size:14px}.warning-box p:last-child{margin-bottom:0}.warning-box strong{color:#f39c12}.warning-box ul{margin:8px 0 0;padding-left:20px}.warning-box li{margin-bottom:4px;font-size:13px}.button-group{display:flex;justify-content:space-between;margin-top:16px}.avatar-group{margin-bottom:16px}.avatar-options{display:flex;margin-top:8px}.avatar-preview{width:80px;height:80px;border-radius:50%;overflow:hidden;border:2px solid #4d7bf3;flex-shrink:0}.avatar-selection{flex:1;margin-left:16px}.avatar-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.avatar-option{width:48px;height:48px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .2s,transform .2s}.avatar-option:hover{transform:scale(1.05)}.avatar-option.selected{border-color:#4d7bf3}@media (max-width: 480px){.modal-content{padding:16px}.profile-menu-content{width:90%;max-width:300px}}:root{--primary: #4263eb;--primary-dark: #3b5bdb;--secondary: #fd7e14;--text: #343a40;--text-light: #868e96;--background: #f8f9fa;--white: #ffffff;--success: #37b24d;--danger: #f03e3e;--warning: #f59f00;--border-radius: 8px;--shadow: 0 4px 6px rgba(0, 0, 0, .1);--transition: all .3s ease}body.dark-theme{--primary: #5c7cfa;--primary-dark: #4263eb;--secondary: #ff922b;--text: #f8f9fa;--text-light: #adb5bd;--background: #001238;--white: #212529;--success: #40c057;--danger: #fa5252;--warning: #fcc419}body.dark-theme input,body.dark-theme select,body.dark-theme textarea{background-color:#001238;color:#f1f3f5;border:1px solid #5c7cfa}body.dark-theme ::-webkit-scrollbar{width:8px}body.dark-theme ::-webkit-scrollbar-thumb{background-color:#555;border-radius:4px}body.dark-theme .btn-secondary{background-color:var(--secondary);color:#fff}body.dark-theme .cancel-button{background-color:#444;color:#ddd}body.dark-theme table{background-color:#1f1f1f;color:#f8f9fa;border-collapse:collapse}body.dark-theme th,body.dark-theme td{border-bottom:1px solid #444}body.dark-theme .loader{border-color:#ffffff1a;border-left-color:var(--primary)}body.dark-theme .status-message{color:var(--text-light)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Poppins,sans-serif;background-color:var(--background);color:var(--text);transition:var(--transition)}.category-badge{display:inline-block;padding:2px 6px;border-radius:10px;font-size:.7rem;margin-left:5px;text-transform:capitalize;color:#fff;background-color:var(--primary)}.container{display:flex;flex-direction:column;min-height:100vh;padding:20px;max-width:1200px;margin:0 auto}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.header-left h1{font-size:1.75rem;font-weight:700;color:var(--primary)}.header-right{display:flex;gap:15px;align-items:center}.player-name{font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.difficulty-badge{display:inline-block;padding:2px 6px;border-radius:10px;font-size:.7rem;margin-left:5px;text-transform:capitalize;color:#fff}.auth-modal.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.auth-modal .modal-content{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;padding:32px;max-width:450px;width:90%;box-shadow:0 20px 40px #0000001f,0 8px 16px #00000014,0 0 0 1px #0000000d;position:relative;animation:modal-appear .3s cubic-bezier(.34,1.56,.64,1)}.auth-modal .modal-close{position:absolute;top:12px;right:16px;background:#fff3;border:none;color:#fff;font-size:24px;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);transition:all .3s ease}.auth-modal .modal-close:hover{background:#ffffff4d;transform:rotate(90deg) scale(1.1)}.auth-modal .modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;border-radius:16px 16px 0 0;text-align:center}.auth-modal .modal-header h2{margin:0;font-size:22px;font-weight:700;letter-spacing:-.5px}.auth-form{padding-top:24px}.auth-form .form-group{margin-bottom:16px}.auth-form .form-group label{font-weight:600;color:#333;margin-bottom:6px;display:block}.auth-form .form-group input{width:100%;padding:12px;border-radius:8px;border:1px solid #ddd;font-size:14px;transition:border-color .2s}.auth-form .form-group input:focus{border-color:#4d7bf3;outline:none;box-shadow:0 0 0 2px #4d7bf333}.auth-form .auth-button{width:100%;background:linear-gradient(135deg,#4d7bf3,#3b67d1);color:#fff;padding:12px;border-radius:8px;font-weight:600;font-size:16px;border:none;margin-top:12px;cursor:pointer;transition:background-color .3s ease}.auth-form .auth-button:hover{background:linear-gradient(135deg,#3b67d1,#4d7bf3)}.auth-links{text-align:center;margin-top:20px;font-size:14px}.auth-links a{color:#4d7bf3;text-decoration:none;font-weight:500}.auth-links a:hover{text-decoration:underline}body.dark-theme .auth-modal .modal-content{background:linear-gradient(135deg,#1f1f1f,#2a2e33);color:#e2e8f0;border:1px solid #3b5bdb}body.dark-theme .auth-modal .modal-header{background:linear-gradient(135deg,#2a2e33,#3b5bdb)}body.dark-theme .auth-form .form-group input{background-color:#2a2e33;color:#f1f3f5;border:1px solid #5c7cfa}.auth-button{background-color:#3b82f6;color:#fff;padding:.5rem 1rem;border-radius:.5rem;border:none;font-weight:600;cursor:pointer;margin-top:1rem;transition:background-color .2s ease}.auth-button:hover{background-color:#2563eb}.auth-links a{display:inline-block;margin-top:1rem;color:#3b82f6;text-decoration:underline;font-size:.875rem;cursor:pointer}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.success-message{color:green;font-weight:700;margin-top:1rem}.badge-easy{background-color:var(--warning)}.badge-medium{background-color:var(--primary)}.badge-hard{background-color:var(--danger)}.current-player{background-color:#4263eb1a}.theme-toggle{display:flex;align-items:center;background:var(--white);border-radius:30px;padding:5px 10px;cursor:pointer;box-shadow:var(--shadow)}.theme-toggle span{margin-left:5px;font-size:.875rem}.score-display{background-color:var(--white);padding:8px 15px;border-radius:var(--border-radius);box-shadow:var(--shadow);display:flex;gap:15px}.score-item{display:flex;flex-direction:column;align-items:center}.score-label{font-size:.75rem;color:var(--text-light)}.score-value{font-weight:600;font-size:1.125rem}.game-container{display:flex;flex-direction:column;flex-grow:1;gap:20px}.game-top{display:flex;flex-direction:column;gap:15px;background-color:var(--white);padding:15px;border-radius:var(--border-radius);box-shadow:var(--shadow)}.univ-prompt{font-size:1.25rem;font-weight:600;text-align:center}.timer-container{display:flex;align-items:center;justify-content:center;gap:10px}.timer-bar{height:10px;width:100%;max-width:300px;background-color:var(--text-light);border-radius:5px;overflow:hidden}.timer-progress{height:100%;background-color:var(--primary);width:100%;transition:width 1s linear}.timer-text{font-weight:600;min-width:50px;text-align:center}#map{height:550px;border-radius:var(--border-radius);box-shadow:var(--shadow);z-index:1;background-color:#f5f5f5;margin-bottom:10px}.game-bottom{display:flex;flex-direction:column;gap:15px}.result-container{background-color:var(--white);padding:15px;border-radius:var(--border-radius);box-shadow:var(--shadow);display:none}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.result-title{font-weight:600;font-size:1.125rem}.result-score{font-weight:700;color:var(--primary)}.result-details{display:flex;flex-direction:column;gap:10px}.detail-item{display:flex;justify-content:space-between}.detail-label{color:var(--text-light)}.detail-value{font-weight:500}.accuracy-bar{height:8px;width:100%;background-color:var(--text-light);border-radius:4px;overflow:hidden;margin-top:5px}.accuracy-progress{height:100%;background-color:var(--success)}.nav-buttons-container{display:flex;justify-content:center;gap:15px;margin:15px 0}.btn{padding:10px 20px;border:none;border-radius:var(--border-radius);font-family:Poppins,sans-serif;font-weight:500;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background-color:var(--primary);color:var(--white)}.btn-primary:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:var(--secondary);color:var(--white)}.btn-secondary:hover{opacity:.9}.btn:disabled{opacity:.6;cursor:not-allowed}footer{margin-top:20px;text-align:center;color:var(--text-light);font-size:.875rem;padding:15px 0;display:flex;flex-direction:column;gap:5px}.footer-links{display:flex;justify-content:center;gap:20px;margin-top:5px}.footer-links a{color:var(--primary);text-decoration:none;transition:var(--transition)}.footer-links a:hover{color:var(--primary-dark);text-decoration:underline}.results-table{width:100%;border-collapse:collapse;margin-bottom:20px}.results-table th,.results-table td{padding:10px;text-align:left;border-bottom:1px solid var(--text-light)}.results-table th{font-weight:600;color:var(--primary)}.final-score{font-size:2rem;font-weight:700;color:var(--primary);text-align:center;margin:20px 0}.leaderboard{margin-top:30px}.leaderboard-title{font-weight:600;font-size:1.125rem;margin-bottom:10px}.leaderboard-table th,.leaderboard-table td{padding:10px;text-align:left;border-bottom:1px solid var(--text-light)}.leaderboard-table th{font-weight:600;color:var(--primary)}@media (max-width: 768px){.container{padding:15px}header{flex-direction:column;gap:15px;align-items:stretch}.header-left,.header-right{justify-content:center}.game-top{padding:12px}.univ-prompt{font-size:1.125rem}#map{height:450px}.btn{padding:8px 16px}}.leaflet-container{cursor:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="%234263EB" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><circle cx="12" cy="12" r="3"/></svg>') 12 12,crosshair}.loader{border:4px solid rgba(0,0,0,.1);border-left:4px solid var(--primary);border-radius:50%;width:30px;height:30px;animation:spin 1s linear infinite;margin:20px auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .5s ease forwards}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.distance-arrow{font-weight:700;text-shadow:0 0 3px white}.slide-up{animation:slideUp .5s ease forwards}.start-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:30px;padding:40px 20px;background-color:var(--white);border-radius:var(--border-radius);box-shadow:var(--shadow)}.start-screen h2{font-size:2rem;color:var(--primary)}.start-screen p{max-width:600px;line-height:1.6}.input-group{width:100%;max-width:300px}.input-group label{display:block;margin-bottom:5px;text-align:left;font-weight:500}.input-group select,.input-group input{width:100%;padding:10px;border:1px solid var(--text-light);border-radius:var(--border-radius);font-family:Poppins,sans-serif;background-color:var(--white);color:var(--text)}.status{height:40px;display:flex;align-items:center;opacity:1;overflow:hidden}.status-message{transition:opacity .3s ease;opacity:0}.status-message.visible{opacity:1}.data-status{font-size:14px;color:var(--text-light);display:flex;align-items:center;gap:10px;justify-content:center}.data-status .loader{width:16px;height:16px;margin:0}.bonus-container{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.bonus-badge{background-color:var(--secondary);color:#fff;padding:3px 8px;border-radius:12px;font-size:.75rem;display:flex;align-items:center;gap:5px}.geo-notification{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background-color:var(--success);color:#fff;padding:12px 24px;border-radius:8px;box-shadow:0 4px 10px #0003;z-index:9999;font-size:14px;font-weight:500;transition:bottom .3s ease-out;max-width:80%;text-align:center}.share-tabs{display:flex;border-bottom:1px solid var(--text-light);margin-bottom:15px}.share-tab{padding:8px 15px;cursor:pointer;transition:all .2s ease}.share-tab.active{font-weight:500;border-bottom:2px solid var(--primary);color:var(--primary)}#qrcode{margin:20px auto;width:200px;height:200px;background-color:#fff;padding:10px;border-radius:8px}#summary-map{height:300px;border-radius:var(--border-radius);margin-bottom:20px;box-shadow:var(--shadow)}.legend{background:#0009;color:#fff;padding:6px;border-radius:4px;font-size:12px}.legend-item{display:flex;align-items:center;margin-bottom:3px}.legend-marker{width:8px;height:8px;border-radius:50%;border:2px solid white;margin-right:5px}.legend-marker.actual{background-color:var(--success)}.legend-marker.guess{background-color:var(--primary)}.direction-hint{margin-top:10px;font-style:italic}.map-explanation{margin-top:15px;font-size:.85rem;font-style:italic;color:var(--text-light)}.auth-controls{display:flex;align-items:center;gap:10px}.user-profile-button{display:flex;align-items:center;gap:8px;background-color:var(--white);padding:6px 12px;border-radius:var(--border-radius);cursor:pointer;box-shadow:var(--shadow);transition:var(--transition)}.user-profile-button:hover{background-color:var(--primary);color:var(--white)}.btn-sm{padding:6px 12px;font-size:.875rem}.auth-error{background-color:#f03e3e1a;color:var(--danger);padding:8px 12px;border-radius:var(--border-radius);margin-bottom:15px;font-size:.875rem}.auth-links{margin-top:15px;text-align:center}.link-button{background:none;border:none;color:var(--primary);cursor:pointer;font-size:.875rem;padding:0;text-decoration:underline}.link-button:hover{color:var(--primary-dark)}.profile-section{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--text-light)}.profile-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:15px}.stat-item{background-color:var(--white);padding:15px;border-radius:var(--border-radius);box-shadow:var(--shadow);text-align:center}.stat-value{font-size:1.5rem;font-weight:700;color:var(--primary)}.stat-label{font-size:.875rem;color:var(--text-light)}.modal-header,.modal-body,.modal-footer{width:100%;position:relative;z-index:10000}.modal-header,.modal-body,.modal-footer{opacity:1!important;visibility:visible!important}.header-avatar{width:30px;height:30px;border-radius:50%;background-color:var(--primary);display:flex;align-items:center;justify-content:center;color:var(--white);overflow:hidden;margin-right:8px}.header-avatar svg{width:16px;height:16px}.header-avatar .avatar-img,.profile-avatar .profile-avatar-img{width:100%;height:100%;object-fit:cover}.avatar-section{display:flex;flex-direction:column;align-items:center;margin-bottom:20px}.avatar-controls{margin-top:10px}.admin-avatar-container{padding:20px;background-color:var(--white);border-radius:var(--border-radius);box-shadow:var(--shadow)}#react-avatar-manager{min-height:500px}.user-avatar-list{max-height:70vh;overflow-y:auto;border:1px solid var(--text-light);border-radius:var(--border-radius);padding:10px}.avatar-preview{width:150px;height:150px;border-radius:50%;overflow:hidden;margin:0 auto 20px;background-color:var(--text-light);display:flex;align-items:center;justify-content:center}.avatar-preview img{width:100%;height:100%;object-fit:cover}.avatar-dropzone{border:2px dashed var(--text-light);padding:30px;text-align:center;border-radius:var(--border-radius);margin-bottom:20px;cursor:pointer;transition:var(--transition)}.avatar-dropzone:hover{border-color:var(--primary);background-color:#4263eb0d}.default-avatars-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:15px;margin-top:20px}.default-avatar-item{text-align:center;cursor:pointer;padding:10px;border-radius:var(--border-radius);transition:var(--transition)}.default-avatar-item:hover{background-color:#4263eb1a}.default-avatar-item.selected{background-color:#4263eb33}.default-avatar-item .avatar-circle{width:60px;height:60px;border-radius:50%;overflow:hidden;margin:0 auto 10px}.default-avatar-item .avatar-circle img{width:100%;height:100%;object-fit:cover}.user-list-item{display:flex;align-items:center;padding:10px;border-bottom:1px solid var(--text-light);cursor:pointer;transition:var(--transition)}.user-list-item:hover{background-color:#4263eb0d}.user-list-item.selected{background-color:#4263eb1a}.user-list-item .user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;margin-right:15px;background-color:var(--text-light);display:flex;align-items:center;justify-content:center}.user-list-item .user-avatar img{width:100%;height:100%;object-fit:cover}.user-list-item .user-info{flex-grow:1}.user-list-item .user-info .username{font-weight:500;color:var(--text)}.user-list-item .user-info .email{font-size:.875rem;color:var(--text-light)}.leaderboard-tabs{display:flex;border-bottom:1px solid var(--text-light);margin:20px 0 15px}.leaderboard-tab{padding:8px 15px;cursor:pointer;transition:all .2s ease}.leaderboard-tab.active{font-weight:500;border-bottom:2px solid var(--primary);color:var(--primary)}.player-ranking{background-color:#4263eb1a;padding:8px 12px;border-radius:var(--border-radius);margin-bottom:10px;font-size:.9rem;text-align:center}.player-ranking span{font-weight:600;color:var(--primary)}.analytics-summary{display:flex;flex-direction:column;gap:20px}.summary-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.summary-card{background-color:var(--white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow);text-align:center}.summary-value{font-size:2rem;font-weight:700;color:var(--primary);margin-bottom:5px}.summary-label{color:var(--text-light);font-size:.9rem}.analytics-charts{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.chart-container{background-color:var(--white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow)}.chart-container h3{margin-top:0;margin-bottom:15px;font-size:1.1rem;color:var(--text)}.pie-chart-container{display:flex;flex-direction:column;align-items:center}.pie-chart{position:relative;width:200px;height:200px;border-radius:50%;background-color:#f1f3f5;margin-bottom:20px}.pie-slice{position:absolute;width:100%;height:100%;clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 100%,0% 100%,0% 0%,50% 0%);background-color:var(--color, #ccc);transform:rotate(0)}.pie-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-weight:600;font-size:.8rem;text-shadow:0 0 3px rgba(0,0,0,.5)}.pie-legend{display:flex;flex-direction:column;gap:5px}.legend-item{display:flex;align-items:center;gap:8px}.legend-color{width:12px;height:12px;border-radius:3px}.bar-chart-container{display:flex;flex-direction:column;gap:10px}.bar-item{display:flex;align-items:center;gap:10px}.bar-label{width:120px;text-align:right;font-size:.9rem}.bar-container{flex-grow:1;height:25px;background-color:#f1f3f5;border-radius:4px;overflow:hidden}.bar{height:100%;display:flex;align-items:center;justify-content:flex-end;padding-right:10px;color:#fff;font-size:.8rem;font-weight:600;transition:width .5s ease}.bar-value{text-shadow:0 0 3px rgba(0,0,0,.5)}.analytics-tables{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.top-players,.recent-scores{background-color:var(--white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow)}.top-players h3,.recent-scores h3{margin-top:0;margin-bottom:15px;font-size:1.1rem;color:var(--text)}@media (max-width: 768px){.analytics-charts,.analytics-tables{grid-template-columns:1fr}}.leaderboard-filters{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:15px;background-color:#4263eb0d;padding:10px 15px;border-radius:var(--border-radius)}.filter-item{display:flex;align-items:center;gap:8px}.filter-item label{font-size:.9rem;color:var(--text)}.filter-item select{padding:5px 10px;border:1px solid var(--text-light);border-radius:var(--border-radius);background-color:var(--white);color:var(--text);font-size:.9rem}.global-time-filter{display:flex;gap:10px;margin-bottom:15px}.time-option{padding:5px 10px;background-color:var(--white);border:1px solid var(--text-light);border-radius:var(--border-radius);font-size:.9rem;cursor:pointer;transition:all .3s ease}.time-option:hover{background-color:#4263eb1a}.time-option.active{background-color:var(--primary);color:#fff;border-color:var(--primary)}.info-item{display:flex;align-items:center;gap:5px}.info-label{font-size:.9rem;color:var(--text-light)}.info-value{font-size:.9rem;font-weight:600;color:var(--text)}.competition-leaderboard h4{font-size:1rem;margin-top:0;margin-bottom:10px;color:var(--text)}.competition-table{width:100%;border-collapse:collapse}.competition-table th,.competition-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--text-light)}.competition-table th{color:var(--primary);font-weight:600}@media (max-width: 768px){.competition-details{flex-direction:column;align-items:flex-start;gap:15px}.competition-cta{width:100%;text-align:center}}.weekly-competition{background-color:var(--white);border-radius:var(--border-radius);padding:20px;margin-bottom:20px;box-shadow:var(--shadow);border-left:4px solid var(--primary)}.competition-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.competition-header h3{font-size:1.2rem;margin:0;color:var(--primary)}.competition-timer{font-size:.9rem;font-weight:600;color:var(--primary)}.competition-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid var(--text-light)}.competition-info{display:flex;flex-wrap:wrap;gap:15px}.competition-result{margin:20px 0;text-align:center}.competition-badge{display:inline-block;padding:15px 20px;border-radius:var(--border-radius);background-color:var(--white);box-shadow:var(--shadow);position:relative;overflow:hidden}.competition-badge:before{content:"";position:absolute;top:0;left:0;width:100%;height:5px}.competition-badge.gold:before{background-color:gold}.competition-badge.silver:before{background-color:silver}.competition-badge.bronze:before{background-color:#cd7f32}.competition-badge.top-ten:before{background-color:#4263eb}.competition-badge.standard:before{background-color:#5c7cfa}.badge-title{font-size:.9rem;text-transform:uppercase;font-weight:600;color:var(--text-light);margin-bottom:5px}.badge-message{font-size:1.1rem;font-weight:600;color:var(--text)}.stats-summary{display:flex;flex-direction:column;gap:20px}.stats-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stats-card{background-color:var(--white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow);display:flex;align-items:center;gap:15px}.stats-icon{width:50px;height:50px;border-radius:50%;background-color:#4263eb1a;display:flex;align-items:center;justify-content:center;color:var(--primary)}.stats-info{flex-grow:1}.stats-value{font-size:1.5rem;font-weight:700;color:var(--primary)}.stats-label{font-size:.875rem;color:var(--text-light)}.competition-status{background-color:var(--white);border-radius:var(--border-radius);padding:20px;box-shadow:var(--shadow)}.competition-status h3{margin-top:0;margin-bottom:15px;font-size:1.1rem;color:var(--text)}.active-competition{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.competition-info{flex-grow:1}.info-row{display:flex;margin-bottom:10px}.info-label{width:100px;font-weight:600;color:var(--text)}.info-value{flex-grow:1;color:var(--text)}.competition-actions{flex-shrink:0}.no-competition{text-align:center;padding:20px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}.detail-item{display:flex;gap:10px}.detail-label{font-weight:600;color:var(--text)}.detail-value{color:var(--text)}@media (max-width: 768px){.stats-cards{grid-template-columns:repeat(2,1fr)}.active-competition{flex-direction:column}.details-grid{grid-template-columns:1fr}}.trophy-case-btn{display:flex;align-items:center;gap:8px;background-color:var(--primary);color:#fff;padding:6px 12px;border-radius:var(--border-radius);cursor:pointer;margin:0 8px;border:none;font-weight:500;transition:var(--transition)}.trophy-case-btn:hover{background-color:var(--primary-dark)}.trophy-icon{font-size:18px}.trophy-points{background-color:#ffc107;color:#212121;border-radius:10px;padding:2px 6px;font-size:12px;font-weight:700}.medal{width:70px;height:70px;background-color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 6px #0000001a;position:relative;transition:transform .2s}.medal:hover{transform:scale(1.1);z-index:1}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.achievement-notification{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:9999;padding:12px 20px;border-radius:8px;color:#fff;box-shadow:0 4px 8px #0003;font-weight:500;animation:fadeInUp .3s,fadeOut .3s 5s forwards}body.dark-theme .modal-overlay.active .modal{background-color:#1e2124;border:1px solid #4263eb!important}body.dark-theme .modal-header{background-color:#2a2e33;border-bottom:1px solid #4263eb}body.dark-theme .modal-body{color:#e2e8f0}body.dark-theme .achievement-item{background-color:#2a2e33;color:#e2e8f0;box-shadow:0 1px 3px #0000004d}body.dark-theme .achievement-item h4{color:#e2e8f0!important}body.dark-theme .achievement-item p{color:#adb5bd!important}body.dark-theme .medal{background-color:#2a2e33;border:2px solid #5c7cfa}body.dark-theme .modal-body .progress-container{background-color:#5c7cfa1a}body.dark-theme .trophy-points-display{background-color:#5c7cfa;color:#fff;padding:3px 8px;border-radius:12px;margin-left:10px;font-size:14px;font-weight:700}body.dark-theme .medal .points-badge{background-color:#5c7cfa;color:#fff}body.dark-theme .achievement-item.locked{background-color:#1e2124;opacity:.8}body.dark-theme .trophy-tabs{border-bottom:1px solid #5c7cfa}body.dark-theme .trophy-tab{color:#adb5bd}body.dark-theme .trophy-tab.active{color:#5c7cfa;border-bottom:2px solid #5c7cfa;background-color:#5c7cfa1a}body.dark-theme .progress-bar{background-color:#212529}body.dark-theme .progress-value,body.dark-theme .trophy-case-btn:hover{background-color:#5c7cfa}body.dark-theme .modal-footer{border-top:1px solid #4263eb;background-color:#2a2e33}body.dark-theme .empty-content{color:#adb5bd}.achievement-notification{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:1000000;padding:16px 20px;border-radius:8px;box-shadow:0 6px 16px #00000040;min-width:300px;max-width:450px;display:flex;align-items:center;gap:15px;font-weight:500;animation:notification-slide-in .5s ease-out,notification-glow 2s infinite alternate,notification-fade-out .5s ease-in 7s forwards}.achievement-notification{background-color:#4263eb;color:#fff;border:2px solid #3b5bdb}body.dark-theme .achievement-notification{background-color:#5c7cfa;color:#fff;border:2px solid #4263eb}.achievement-notification-icon{font-size:36px;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background-color:#fff3;border-radius:50%;box-shadow:0 0 10px #ffffff80}.achievement-notification-content{flex-grow:1}.achievement-notification-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.achievement-notification-title{font-weight:700;font-size:18px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.achievement-notification-points{background-color:#ffffff40;color:#fff;padding:3px 8px;border-radius:20px;font-weight:700;font-size:14px}.achievement-notification-description{font-size:14px;opacity:.9}.achievement-notification-close{position:absolute;top:8px;right:8px;background:none;border:none;color:#ffffffb3;font-size:16px;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s}.achievement-notification-close:hover{opacity:1}@keyframes notification-slide-in{0%{transform:translate(-50%,-100px);opacity:0}to{transform:translate(-50%);opacity:1}}@keyframes notification-glow{0%{box-shadow:0 6px 16px #00000040}to{box-shadow:0 6px 24px #4263eb80}}@keyframes notification-fade-out{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-50px)}}.achievement-notification-stack-1{top:20px}.achievement-notification-stack-2{top:100px}.achievement-notification-stack-3{top:180px}@keyframes notification-bounce{0%,to{transform:translate(-50%)}50%{transform:translate(-50%) translateY(-10px)}}.achievement-notification:hover{animation:notification-bounce .5s ease}.continent-label{background:none!important}.continent-label div{color:#323232b3;font-size:18px;font-weight:700;text-shadow:0 0 5px rgba(255,255,255,.8),0 0 10px rgba(255,255,255,.6);text-align:center;pointer-events:none}.dark-mode .continent-label div{color:#dcdcdccc;text-shadow:0 0 5px rgba(0,0,0,.8),0 0 10px rgba(0,0,0,.6)}.category-badge[data-category=globalCapitals]{background-color:#3b5bdb}.marker-icon.marker-icon-actual[data-category=globalCapitals]{background-color:gold;border:2px solid #333}.result-container[data-category=globalCapitals] .detail-label{color:#3b5bdb}.result-container[data-category=globalCapitals] .accuracy-progress{background-color:#3b5bdb}.bonus-badge[data-bonus="Africa Bonus"],.bonus-badge[data-bonus="Oceania Bonus"]{background-color:#0ca678}.bonus-badge[data-bonus="Asia Bonus"],.bonus-badge[data-bonus="South America Bonus"]{background-color:#1971c2}.bonus-badge[data-bonus="Small Country"]{background-color:#ae3ec9}.marker-label{text-shadow:-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff;font-weight:700}.dark-mode .marker-label{text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000;color:#f8f9fa}.clickable-title{cursor:pointer;transition:transform .2s ease,color .2s ease;position:relative}.clickable-title:hover{transform:scale(1.05);color:#7c8bff}.clickable-title:active{transform:scale(.95)}.clickable-title:hover:after{content:"Click to restart";position:absolute;bottom:-20px;left:50%;transform:translate(-50%);background-color:#000000b3;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;white-space:nowrap;opacity:0;animation:fade-in .3s forwards;animation-delay:.5s}@keyframes fade-in{to{opacity:1}}.achievement-notification:not([style*="right: 20px"]){display:none!important}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.global-leaderboard-container{margin:20px auto;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;max-width:800px}.global-leaderboard-container h3{margin-top:0;text-align:center;color:#333;font-size:24px;margin-bottom:20px}.leaderboard-filters{display:flex;gap:10px;margin-bottom:20px;justify-content:center;flex-wrap:wrap}.leaderboard-filters select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background-color:#fff;cursor:pointer}.leaderboard-filters select:hover{border-color:#007bff}.global-leaderboard-content{min-height:200px;overflow-x:auto}.leaderboard-table{width:100%;border-collapse:collapse;background-color:#fff}.global-leaderboard-table{margin-top:0}.leaderboard-table th,.leaderboard-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.leaderboard-table th{background-color:#f5f5f5;font-weight:700;color:#333;position:sticky;top:0}.leaderboard-table tr:hover{background-color:#f9f9f9}.leaderboard-table tr:last-child td{border-bottom:none}.loading{text-align:center;color:#666;padding:20px;font-style:italic}.no-scores{text-align:center;color:#999;padding:40px 20px;font-size:16px}.error{text-align:center;color:#e74c3c;padding:40px 20px;font-size:16px}.home-screen{padding:20px;max-width:1200px;margin:0 auto}.main-header{background-color:#007bff;color:#fff;padding:15px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.main-header h1{margin:0;font-size:28px}@media (max-width: 600px){.global-leaderboard-container{margin:10px;padding:15px}.leaderboard-table{font-size:14px}.leaderboard-table th,.leaderboard-table td{padding:8px}}.global-top-scores{margin:20px 0}.refresh-button{background-color:#4a6cf7;color:#fff;border:none;border-radius:4px;padding:6px 12px;cursor:pointer;margin-bottom:10px}.refresh-button:hover{background-color:#3a5bd7}.leaderboard-table{width:100%;border-collapse:collapse}.leaderboard-table th,.leaderboard-table td{padding:8px;text-align:left;border-bottom:1px solid #ddd}.leaderboard-table th{background-color:#f2f2f2;font-weight:700}.current-player{background-color:#4a6cf71a;font-weight:700}.medal{margin-right:5px}.error{color:#e53935}.global-leaderboard-modal{margin-top:20px}.global-leaderboard-modal h4{margin-bottom:10px;font-size:1.1rem;font-weight:600}.leaderboard-header{margin-bottom:.5rem;text-align:center}#leaderboard-content{overflow-x:auto}:root{--leaderboard-bg-dark: #222;--leaderboard-header-dark: #333;--leaderboard-text-dark: #e0e0e0;--leaderboard-border-dark: #444}#leaderboard-container{background-color:var(--primary-light);border-radius:8px;margin-top:20px;overflow:hidden}body.dark-mode #leaderboard-container{background-color:var(--leaderboard-bg-dark);color:var(--leaderboard-text-dark)}.leaderboard-header{padding:12px 16px;background-color:var(--primary);color:#fff}body.dark-mode .leaderboard-header{background-color:var(--leaderboard-header-dark)}.global-leaderboard-modal{margin-top:20px;background-color:var(--primary-light);border-radius:8px;overflow:hidden;padding-bottom:10px}body.dark-mode .global-leaderboard-modal{background-color:var(--leaderboard-bg-dark);color:var(--leaderboard-text-dark)}.global-leaderboard-modal h4.leaderboard-title{padding:12px 16px;background-color:var(--primary);color:#fff;margin:0;font-size:16px}body.dark-mode .global-leaderboard-modal h4.leaderboard-title{background-color:var(--leaderboard-header-dark)}.global-leaderboard-content table{width:100%;border-collapse:collapse}.global-leaderboard-content th,.global-leaderboard-content td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border-color)}body.dark-mode .global-leaderboard-content th,body.dark-mode .global-leaderboard-content td{border-bottom:1px solid var(--leaderboard-border-dark)}.global-leaderboard-content tr:nth-child(2n){background-color:#0000000d}body.dark-mode .global-leaderboard-content tr:nth-child(2n){background-color:#ffffff0d}.access-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;visibility:hidden;transition:all .3s ease}.access-modal.active{opacity:1;visibility:visible}.access-modal-content{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:30px;max-width:400px;width:90%;box-shadow:0 20px 40px #0000004d;transform:translateY(30px) scale(.9);transition:all .3s ease;position:relative;overflow:hidden}.access-modal.active .access-modal-content{transform:translateY(0) scale(1)}.access-modal-content:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:shimmer 3s infinite;pointer-events:none}@keyframes shimmer{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.access-modal-header{text-align:center;margin-bottom:25px;color:#fff}.access-modal-title{font-size:1.5rem;font-weight:700;margin-bottom:10px;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.access-modal-emoji{font-size:3rem;margin-bottom:15px;display:block;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.access-modal-subtitle{font-size:.9rem;opacity:.9;font-weight:400}.access-code-input{width:100%;padding:15px 20px;border:none;border-radius:15px;font-size:1.1rem;text-align:center;letter-spacing:2px;background:#fff3;color:#fff;backdrop-filter:blur(10px);margin-bottom:20px;transition:all .3s ease;font-weight:600}.access-code-input::placeholder{color:#ffffffb3;letter-spacing:1px}.access-code-input:focus{outline:none;background:#ffffff4d;box-shadow:0 0 20px #fff3;transform:scale(1.02)}.access-modal-buttons{display:flex;gap:15px;justify-content:center}.access-btn{padding:12px 25px;border:none;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:100px;font-size:1rem}.access-btn-primary{background:linear-gradient(45deg,#00f5ff,#06f);color:#fff;box-shadow:0 5px 15px #0066ff4d}.access-btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #06f6}.access-btn-secondary{background:#fff3;color:#fff;backdrop-filter:blur(10px)}.access-btn-secondary:hover{background:#ffffff4d;transform:translateY(-2px)}.access-modal-hint{text-align:center;margin-top:15px;font-size:.8rem;color:#ffffffb3;font-style:italic}.access-error{background:#ff525233;color:#ff5252;padding:10px 15px;border-radius:10px;text-align:center;margin-bottom:15px;font-weight:500;animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.access-success{background:#4caf5033;color:#4caf50;padding:10px 15px;border-radius:10px;text-align:center;margin-bottom:15px;font-weight:500;animation:pulse .5s ease-in-out}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.main-navigation{display:flex;gap:10px;margin:10px 0;border-bottom:2px solid #e5e7eb}.nav-tab{background:none;border:none;padding:12px 20px;cursor:pointer;border-radius:8px 8px 0 0;font-weight:500;transition:all .2s ease;color:#6b7280;border-bottom:3px solid transparent}.nav-tab:hover{background:#f3f4f6;color:#374151}.nav-tab.active{background:#667eea;color:#fff;border-bottom:3px solid #4f46e5}.tab-contents{position:relative}.tab-content{display:none}.tab-content.active{display:block}.competition-indicator{position:fixed;top:20px;right:20px;z-index:1000;max-width:320px;margin:0;border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #00000026;border-left:4px solid #667eea;animation:slideInFromRight .3s ease-out;transition:all .2s ease}.competition-indicator:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.competition-banner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 16px;display:flex;align-items:center;gap:12px;position:relative;cursor:pointer}.competition-banner:before{content:"";position:absolute;inset:0;background:#ffffff1a;backdrop-filter:blur(10px);z-index:-1}.competition-icon{font-size:1.1em;flex-shrink:0;animation:bounce 2s infinite}.competition-info{flex:1;min-width:0}.competition-title{font-size:.75em;font-weight:600;margin-bottom:2px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.competition-details{font-size:.75em;opacity:.9;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.competition-timer{font-size:.7em;opacity:.8;font-weight:500}.competition-join-btn{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:6px 12px;border-radius:6px;font-size:.75em;font-weight:500;cursor:pointer;transition:all .2s ease;flex-shrink:0;backdrop-filter:blur(10px)}.competition-join-btn:hover{background:#ffffff4d;transform:translateY(-1px);box-shadow:0 2px 8px #0003}.competition-join-btn:disabled{cursor:not-allowed;opacity:.9}.competition-join-btn.success{background:#10b981!important;border-color:#10b981;animation:checkmarkBounce .4s ease-out}.competition-dismiss{position:absolute;top:4px;right:6px;background:none;border:none;color:#ffffffb3;font-size:14px;cursor:pointer;padding:2px 4px;border-radius:2px;transition:all .2s ease;z-index:10}.competition-dismiss:hover{color:#fff;background:#ffffff1a}.competition-status{font-size:.7em;color:#86efac;margin-top:4px;font-weight:500;animation:fadeIn .3s ease-out}.competition-indicator.urgent{animation:slideInFromRight .3s ease-out,urgentPulse 2s infinite .5s}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutToRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-3px)}60%{transform:translateY(-2px)}}@keyframes urgentPulse{0%,to{box-shadow:0 4px 12px #667eea4d;border-left-color:#667eea}50%{box-shadow:0 6px 20px #ffbb2480;border-left-color:#fbbf24}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes checkmarkBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@media (max-width: 768px){.competition-indicator{position:static;top:auto;right:auto;max-width:100%;margin:0 0 15px;animation:fadeIn .4s ease-out;border-radius:12px}.competition-banner{padding:16px 20px;flex-direction:column;text-align:center;gap:10px}.competition-info{text-align:center}.competition-title{font-size:1em;white-space:normal}.competition-details{font-size:.85em;white-space:normal}.competition-timer{font-size:.8em}.competition-join-btn{width:100%;padding:10px 20px;font-size:.9em}.competition-dismiss{display:none}}@media (max-width: 1024px) and (min-width: 769px){.competition-indicator{max-width:300px;top:15px;right:15px}}.competition-indicator.dismissed{display:none}@media (prefers-color-scheme: dark){.competition-banner:before{background:#0000001a}}.competition-container{max-width:1200px;margin:0 auto;padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.competition-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:25px;border-radius:12px;margin-bottom:25px;box-shadow:0 4px 15px #667eea33}.competition-title{font-size:1em;margin:0 0 8px;font-weight:600;text-align:center}.competition-description{font-size:1em;margin:0 0 20px;opacity:.9;text-align:center}.competition-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;background:#ffffff1a;padding:20px;border-radius:8px;backdrop-filter:blur(10px)}.meta-item{text-align:center;padding:10px}.meta-label{font-size:.85em;opacity:.8;margin-bottom:5px;display:block;text-transform:uppercase;letter-spacing:.5px}.meta-value{font-size:1.4em;font-weight:700;display:block;line-height:1.2}.time-remaining{color:#86efac}.time-remaining.urgent{color:#fbbf24;animation:pulse 2s infinite}.time-remaining.ended{color:#9ca3af}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.competition-content{display:grid;grid-template-columns:1fr 2fr;gap:25px;margin-bottom:25px}@media (max-width: 968px){.competition-content{grid-template-columns:1fr}}.user-panel{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 10px #00000014;height:fit-content;border:1px solid #f1f5f9}.panel-title{font-size:1.2em;font-weight:600;margin-bottom:15px;color:#374151;border-bottom:2px solid #e5e7eb;padding-bottom:8px}.join-section{text-align:center;margin-bottom:20px}.btn{padding:10px 20px;border:none;border-radius:6px;font-size:.9em;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.current-ranking{background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;padding:15px;text-align:center;margin-bottom:15px}.current-ranking.rank-gold{background:linear-gradient(135deg,#fef3c7,#fbbf24);border-color:#f59e0b;color:#92400e}.current-ranking.rank-silver{background:linear-gradient(135deg,#f1f5f9,#94a3b8);border-color:#64748b;color:#334155}.current-ranking.rank-bronze{background:linear-gradient(135deg,#fef2f2,#fca5a5);border-color:#ef4444;color:#dc2626}.current-ranking.rank-top10{background:linear-gradient(135deg,#ede9fe,#c4b5fd);border-color:#8b5cf6;color:#6d28d9}.rank-position{font-size:1.5em;font-weight:700;display:block}.rank-details{font-size:.85em;opacity:.8;display:block;margin:3px 0}.rank-score{font-size:1em;font-weight:600;display:block}.user-stats{display:grid;gap:12px}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f8fafc;border-radius:6px}.stat-label{font-weight:500;color:#6b7280;font-size:.9em}.stat-value{font-weight:700;color:#374151;font-size:1em}.leaderboard-panel{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 10px #00000014;border:1px solid #f1f5f9}.leaderboard-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.refresh-btn{background:#f3f4f6;border:1px solid #d1d5db;color:#374151;padding:6px 12px;border-radius:4px;font-size:.85em;cursor:pointer;transition:all .2s ease}.refresh-btn:hover{background:#e5e7eb}.last-refreshed{font-size:.75em;color:#6b7280;margin-bottom:10px}.leaderboard{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.leaderboard-header{display:grid;grid-template-columns:60px 1fr 100px 80px;background:#f9fafb;padding:12px;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;font-size:.85em}.leaderboard-entry{display:grid;grid-template-columns:60px 1fr 100px 80px;padding:12px;border-bottom:1px solid #f3f4f6;transition:background-color .2s ease;align-items:center;font-size:.9em}.leaderboard-entry:hover{background:#f8fafc}.leaderboard-entry:last-child{border-bottom:none}.leaderboard-entry.rank-gold{background:linear-gradient(90deg,#fef3c7,#fff);border-left:3px solid #f59e0b}.leaderboard-entry.rank-silver{background:linear-gradient(90deg,#f1f5f9,#fff);border-left:3px solid #64748b}.leaderboard-entry.rank-bronze{background:linear-gradient(90deg,#fef2f2,#fff);border-left:3px solid #ef4444}.leaderboard-entry.rank-top10{background:linear-gradient(90deg,#ede9fe,#fff);border-left:3px solid #8b5cf6}.rank{font-weight:600;text-align:center}.player-name{font-weight:500;color:#374151}.score{font-weight:600;color:#059669;text-align:right}.time{font-size:.8em;color:#6b7280;text-align:center}.leaderboard-empty{text-align:center;padding:30px;color:#6b7280}.leaderboard-error{text-align:center;padding:30px;color:#dc2626;background:#fef2f2}.info-section{width:100%;margin-top:25px}.info-panel{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 10px #00000014;border:1px solid #f1f5f9;width:100%}.info-panel h3{color:#8e9eb7;margin-bottom:15px;font-size:1.3em;font-weight:600;border-bottom:2px solid #e5e7eb;padding-bottom:8px}.info-panel ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px}.info-panel li{padding:12px 15px;background:#f8fafc;border-radius:6px;line-height:1.4;border-left:3px solid #667eea}.info-panel strong{color:#c4d3eb}.no-competition{text-align:center;padding:40px 20px;color:#6b7280}.no-competition h3{color:#374151;margin-bottom:15px}@media (max-width: 768px){.main-navigation{flex-direction:column;gap:0}.nav-tab{border-radius:0;border-bottom:1px solid #e5e7eb}.nav-tab.active{border-radius:0}.competition-header{padding:20px}.competition-title{font-size:1em}.competition-meta{grid-template-columns:1fr 1fr;gap:15px;padding:15px}.meta-value{font-size:1.2em}.leaderboard-header,.leaderboard-entry{grid-template-columns:40px 1fr 70px 60px;padding:10px;font-size:.8em}.user-panel,.leaderboard-panel{padding:15px}.current-ranking{padding:12px}.rank-position{font-size:1.3em}.competition-banner{flex-direction:column;text-align:center;gap:8px;padding:10px 12px}.competition-join-btn{width:100%}.info-panel ul{grid-template-columns:1fr;gap:10px}}@media (max-width: 480px){.competition-container{padding:15px}.competition-meta{grid-template-columns:1fr;gap:10px}.leaderboard-header,.leaderboard-entry{grid-template-columns:35px 1fr 60px;padding:8px}.time,.time-header{display:none}}@media (prefers-color-scheme: dark){.user-panel,.leaderboard-panel,.info-panel{background:#1f2937;color:#f9fafb;border-color:#374151}.panel-title{color:#f9fafb;border-bottom-color:#374151}.current-ranking{background:#374151;border-color:#4b5563;color:#f9fafb}.stat-item{background:#374151}.stat-label{color:#d1d5db}.stat-value{color:#f9fafb}.leaderboard{border-color:#374151}.leaderboard-header{background:#374151;color:#f9fafb;border-bottom-color:#4b5563}.leaderboard-entry{border-bottom-color:#374151}.leaderboard-entry:hover{background:#374151}.player-name{color:#f9fafb}.refresh-btn{background:#374151;border-color:#4b5563;color:#f9fafb}.refresh-btn:hover{background:#4b5563}.info-panel li{background:#374151}.competition-banner{background:linear-gradient(90deg,#374151,#4b5563);color:#f9fafb;border-color:#4b5563}.competition-title{color:#f9fafb}.competition-details{color:#d1d5db}}.loading{opacity:.6;pointer-events:none}.loading:after{content:"";position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border:2px solid #d1d5db;border-top:2px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.notification{position:fixed;top:20px;right:20px;padding:12px 16px;border-radius:6px;color:#fff;font-weight:500;z-index:1000;animation:slideIn .3s ease;font-size:.9em}.notification.success{background:#10b981}.notification.error{background:#ef4444}.notification.info{background:#3b82f6}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideOut{0%{transform:translate(0)}to{transform:translate(100%)}}.competition-header h2,.competition-title-main,.week-title,h2:contains("Week"),.competition-main-title{display:none!important}.competition-banner h2,.competition-info h2,.competition-header .title{display:none!important}.leaderboard-entry{color:#fff!important}.leaderboard-entry .player-name{color:#fff!important;font-weight:500}.leaderboard-entry .score{color:#10b981!important;font-weight:600}.leaderboard-entry .time{color:#d1d5db!important}.leaderboard-entry .rank{color:#fbbf24!important;font-weight:600}.leaderboard-entry.rank-gold .player-name{color:gold!important;font-weight:600}.leaderboard-entry.rank-silver .player-name{color:silver!important;font-weight:600}.leaderboard-entry.rank-bronze .player-name{color:#cd7f32!important;font-weight:600}.leaderboard-header{color:#fff!important}.leaderboard-header .rank-header,.leaderboard-header .name-header,.leaderboard-header .score-header,.leaderboard-header .time-header{color:#e5e7eb!important;font-weight:600}#leaderboard-container{margin-top:20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.leaderboard-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px 20px;text-align:center}.leaderboard-header h3{margin:0;font-size:1.2rem;font-weight:600}.leaderboard-filters{padding:16px 20px;background:#f8f9fa;border-bottom:1px solid #e9ecef}.filter-group{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.filter-select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:.875rem;color:#374151;cursor:pointer}.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}#refresh-global-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:.875rem;cursor:pointer;transition:background-color .2s}#refresh-global-btn:hover{background:#5a67d8}#refresh-global-btn svg{width:14px;height:14px}.leaderboard-content{padding:0;max-height:600px;overflow-y:auto}.leaderboard-table{width:100%;border-collapse:collapse;font-size:.875rem}.leaderboard-table thead th{background:#f8f9fa;color:#495057;font-weight:600;padding:12px 16px;text-align:left;border-bottom:2px solid #e9ecef;position:sticky;top:0;z-index:10}.leaderboard-table tbody td{padding:12px 16px;border-bottom:1px solid #e9ecef;color:#374151}.leaderboard-row:hover{background-color:#f8f9fa}.leaderboard-row.top-three{background-color:#fff3cd}.leaderboard-row.top-three:hover{background-color:#ffeaa7}.rank-cell{font-weight:600;width:80px;text-align:center}.name-cell{font-weight:500;color:#2d3748}.score-cell{font-weight:600;color:#38a169;text-align:right}.games-cell{color:#718096;text-align:center;width:80px}.avg-cell{color:#4a5568;text-align:right}.loading-row,.no-data-row,.error-row{text-align:center!important;padding:40px 20px!important;color:#718096!important;font-style:italic}.error-row{color:#e53e3e!important}.no-data-row{background-color:#f7fafc}.error-message{text-align:center;padding:40px 20px;color:#e53e3e;background-color:#fed7d7;margin:20px;border-radius:8px}@media (max-width: 768px){.filter-group{flex-direction:column;align-items:stretch}.filter-select,#refresh-global-btn{width:100%;margin-bottom:8px}.leaderboard-table{font-size:.8rem}.leaderboard-table th,.leaderboard-table td{padding:8px 12px}.games-cell,.avg-cell,.leaderboard-table th:nth-child(4),.leaderboard-table th:nth-child(5){display:none}}@media (prefers-color-scheme: dark){#leaderboard-container{background:#2d3748;color:#e2e8f0}.leaderboard-header{background:linear-gradient(135deg,#4c51bf,#553c9a)}.leaderboard-filters{background:#4a5568;border-bottom-color:#2d3748}.filter-select{background:#2d3748;border-color:#4a5568;color:#e2e8f0}.leaderboard-table thead th{background:#4a5568;color:#e2e8f0;border-bottom-color:#2d3748}.leaderboard-table tbody td{border-bottom-color:#4a5568;color:#e2e8f0}.leaderboard-row:hover{background-color:#4a5568}.no-data-row{background-color:#2d3748}}.leaderboard-content::-webkit-scrollbar{width:6px}.leaderboard-content::-webkit-scrollbar-track{background:#f1f1f1}.leaderboard-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.leaderboard-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.activity-feed{background:linear-gradient(135deg,#e8eaf6,#c5cae9);border-radius:16px;padding:20px;margin-top:16px;box-shadow:0 4px 12px #00000026;border:1px solid rgba(255,255,255,.2)}.activity-header{font-size:16px;font-weight:600;color:#3f4156;margin-bottom:16px;text-align:center;letter-spacing:.5px}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;align-items:center;padding:12px 16px;background:#ffffffb3;border-radius:12px;transition:all .2s ease;border:1px solid rgba(255,255,255,.3)}.activity-item:hover{background:#ffffffe6;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.activity-icon{font-size:18px;margin-right:12px;min-width:24px;text-align:center}.activity-text{flex:1;font-size:14px;font-weight:500;color:#3f4156;line-height:1.4}.activity-time{font-size:12px;color:#7c7c8a;font-weight:400;margin-left:8px;white-space:nowrap}.activity-item.achievement{background:linear-gradient(135deg,#ffd70033,#ffc1071a);border-color:#ffc1074d}.activity-item.achievement .activity-icon{color:#ff6f00}.activity-item.rank{background:linear-gradient(135deg,#2196f326,#1e88e51a);border-color:#2196f333}.activity-item.milestone{background:linear-gradient(135deg,#9c27b026,#8e24aa1a);border-color:#9c27b033}.activity-item.motivation{background:linear-gradient(135deg,#ff572226,#f443361a);border-color:#ff572233}.activity-item.motivation .activity-icon{color:#ff5722}.activity-item.score{background:linear-gradient(135deg,#4caf5026,#43a0471a);border-color:#4caf5033}.activity-item.progress{background:linear-gradient(135deg,#673ab726,#5e35b11a);border-color:#673ab733}@media (max-width: 768px){.activity-feed{padding:16px;margin-top:12px}.activity-item{padding:10px 14px}.activity-text{font-size:13px}.activity-time{font-size:11px}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.activity-item{animation:slideInUp .3s ease-out}.activity-item:nth-child(1){animation-delay:.1s}.activity-item:nth-child(2){animation-delay:.2s}.activity-item:nth-child(3){animation-delay:.3s}.activity-item:nth-child(4){animation-delay:.4s}.category-description{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:16px;padding:24px;margin:20px 0;box-shadow:0 4px 16px #0000001a;border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.category-description:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.category-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.category-icon{font-size:24px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fffc;border-radius:50%;box-shadow:0 2px 8px #0000001a}.category-title{font-size:20px;font-weight:600;color:#2c3e50;margin:0;flex:1}.default-badge{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 6px #4caf504d}.category-content{margin-bottom:20px}.category-main-description{font-size:16px;font-weight:500;color:#34495e;margin:0 0 8px;line-height:1.5}.category-details{font-size:14px;color:#6c757d;margin:0;font-style:italic;line-height:1.4}.category-metadata{display:flex;gap:20px;flex-wrap:wrap;padding-top:16px;border-top:1px solid rgba(0,0,0,.1)}.metadata-item{display:flex;align-items:center;gap:6px;min-width:120px}.metadata-label{font-size:12px;font-weight:600;color:#7f8c8d;text-transform:uppercase;letter-spacing:.5px}.metadata-value{font-size:13px;font-weight:500;color:#2c3e50}.difficulty-badge{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.difficulty-easy{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.difficulty-medium{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff}.difficulty-hard{background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff}@media (max-width: 768px){.category-description{padding:20px;margin:16px 0}.category-header{gap:8px}.category-icon{width:36px;height:36px;font-size:20px}.category-title{font-size:18px}.category-main-description{font-size:15px}.category-metadata{gap:16px;flex-direction:column}.metadata-item{min-width:auto;justify-content:space-between}}@media (max-width: 480px){.category-description{padding:16px}.category-metadata{gap:12px}.metadata-item{flex-direction:column;align-items:flex-start;gap:2px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.category-description{animation:fadeInUp .4s ease-out}.profile-menu-content{position:fixed;top:80px;right:20px;left:auto!important;margin-left:auto;background-color:#fff;border-radius:20px;box-shadow:0 20px 40px #00000026;z-index:2000;width:420px;max-width:95vw;max-height:90vh;overflow-y:auto;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid rgba(255,255,255,.2);animation:slideInFromRight .3s ease-out}.profile-header{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;padding:24px;border-radius:20px 20px 0 0;display:flex;align-items:center;gap:16px}.profile-avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;border:3px solid rgba(255,255,255,.3);box-shadow:0 4px 12px #0003}.profile-avatar img{width:100%;height:100%;object-fit:cover}.avatar-initials{width:100%;height:100%;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff}.profile-info h3{margin:0 0 4px;font-size:20px;font-weight:600}.profile-info p{margin:0;opacity:.8;font-size:14px}.player-stats-section,.performance-overview{padding:20px 24px 16px;border-bottom:1px solid rgba(0,0,0,.1)}.stats-title{margin:0 0 16px;font-size:16px;font-weight:600;color:#374151;display:flex;align-items:center;gap:8px}.stats-grid{display:flex;flex-direction:column;gap:16px}.stat-card{background:#fffc;border-radius:12px;padding:16px;border:1px solid rgba(0,0,0,.1);transition:all .2s ease}.stat-card:hover{background:#fffffff2;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.stat-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.stat-icon{font-size:18px}.stat-label{font-size:14px;font-weight:600;color:#374151}.stat-values{display:flex;justify-content:space-between;gap:16px}.stat-item{text-align:center;flex:1}.stat-number{display:block;font-size:20px;font-weight:700;color:#1f2937;margin-bottom:2px}.stat-desc{font-size:12px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.category-stats,.difficulty-stats{display:flex;flex-direction:column;gap:10px}.category-stat-item,.difficulty-stat-item{padding:8px 12px;background:#fff9;border-radius:8px;border:1px solid rgba(0,0,0,.05)}.category-info{display:flex;align-items:center;gap:8px;margin-bottom:4px}.category-icon{font-size:16px}.category-name{font-size:13px;font-weight:500;color:#374151}.category-numbers{display:flex;justify-content:space-between;align-items:center}.games-count,.score-range{font-size:11px;color:#6b7280}.score-range{font-weight:500}.difficulty-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.difficulty-icon{font-size:14px}.difficulty-name{font-size:13px;font-weight:500;color:#374151;margin-left:6px}.mastery-percent{font-size:11px;font-weight:600;color:#6b7280}.difficulty-progress{margin-bottom:4px}.progress-bar{height:4px;background:#e5e7eb;border-radius:2px;overflow:hidden}.progress-fill{height:100%;border-radius:2px;transition:width .3s ease}.difficulty-details{font-size:11px;color:#6b7280}.performance-insights{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.insight-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff9;border-radius:8px;border-left:3px solid}.insight-item.strength{border-left-color:#10b981;background:#10b9811a}.insight-item.milestone{border-left-color:#3b82f6;background:#3b82f61a}.insight-item.achievement{border-left-color:#f59e0b;background:#f59e0b1a}.insight-item.progress{border-left-color:#8b5cf6;background:#8b5cf61a}.insight-item.challenge{border-left-color:#ef4444;background:#ef44441a}.insight-icon{font-size:16px}.insight-text{font-size:13px;font-weight:500;color:#374151}.recent-achievements h5{margin:0 0 12px;font-size:14px;font-weight:600;color:#374151}.achievement-list{display:flex;flex-direction:column;gap:8px}.achievement-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#ffffffb3;border-radius:8px;border:1px solid rgba(0,0,0,.05)}.achievement-item.gold{background:linear-gradient(135deg,#fbbf2426,#f59e0b1a);border-color:#fbbf2433}.achievement-item.silver{background:linear-gradient(135deg,#9ca3af26,#6b72801a);border-color:#9ca3af33}.achievement-item.bronze{background:linear-gradient(135deg,#d9770626,#b453091a);border-color:#d9770633}.achievement-icon{font-size:18px}.achievement-info{flex:1}.achievement-name{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:2px}.achievement-desc{display:block;font-size:11px;color:#6b7280}.stats-empty,.performance-empty,.no-achievements,.no-data{text-align:center;padding:20px;color:#6b7280;font-style:italic}.profile-actions{padding:16px 24px 24px}.menu-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;cursor:pointer;transition:background-color .2s ease;font-size:14px;color:#374151}.menu-item:hover{background:#fffc}.menu-divider{height:1px;background:#0000001a;margin:8px 0}@media (max-width: 480px){.profile-menu-content{width:95vw;margin:10px}.stat-values{flex-direction:column;gap:12px}.stat-item{text-align:left;display:flex;justify-content:space-between;align-items:center}.stat-number{font-size:16px}}.profile-menu-content{animation:slideInFromTop .3s ease-out}.stats-empty{padding:20px;text-align:center}.new-player-message{background:linear-gradient(135deg,#6366f11a,#a855f71a);border-radius:16px;padding:24px;border:2px dashed rgba(99,102,241,.3)}.new-player-icon{font-size:48px;display:block;margin-bottom:16px}.new-player-message h4{margin:0 0 12px;font-size:18px;font-weight:600;color:#4f46e5}.new-player-message p{margin:0 0 16px;color:#6b7280;font-size:14px}.new-player-message ul{text-align:left;max-width:250px;margin:16px auto;padding-left:0;list-style:none}.new-player-message li{padding:6px 0;font-size:13px;color:#374151;display:flex;align-items:center;gap:8px}.start-playing-btn{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;margin-top:16px;transition:all .2s ease;box-shadow:0 4px 12px #4f46e54d}.start-playing-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #4f46e566}.start-playing-btn:active{transform:translateY(0)}.no-data{color:#9ca3af;font-style:italic;text-align:center;padding:16px;background:#0000000d;border-radius:8px;margin:8px 0}.performance-empty{text-align:center;padding:20px;color:#6b7280;background:linear-gradient(135deg,#22c55e1a,#16a34a0d);border-radius:12px;border:1px dashed rgba(34,197,94,.3)}.no-achievements{text-align:center;padding:16px;color:#6b7280;background:linear-gradient(135deg,#f59e0b1a,#d977060d);border-radius:12px;border:1px dashed rgba(245,158,11,.3)}.debug-info{padding:16px;background:#f3f4f6;margin:16px;border-radius:8px;font-family:Courier New,monospace;font-size:12px;border-left:4px solid #6366f1}.debug-info strong{color:#1f2937;display:block;margin-bottom:8px}.debug-info br+strong{margin-top:12px}.stats-loading{text-align:center;padding:40px 20px;color:#6b7280}.loading-spinner{display:inline-block;width:24px;height:24px;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#4f46e5;animation:spin 1s ease-in-out infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.stats-error{text-align:center;padding:20px;color:#dc2626;background:#ef44441a;border-radius:12px;border:1px dashed rgba(239,68,68,.3)}.stats-error .error-icon{font-size:32px;display:block;margin-bottom:12px}@media (max-width: 480px){.new-player-message{padding:20px 16px}.new-player-icon{font-size:36px}.start-playing-btn{padding:10px 20px;font-size:13px}}.profile-menu .modal-close{position:absolute;top:12px;right:16px;background:#fff3;border:none;color:#fff;font-size:24px;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);transition:all .3s ease;z-index:10}.profile-menu .modal-close:hover{background:#ffffff4d;transform:rotate(90deg) scale(1.1)}.profile-menu .modal-close:active{transform:rotate(90deg) scale(.95)}.profile-menu-content{position:relative}@keyframes slideInFromRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.profile-menu-dropdown{position:absolute;top:100%;right:0;margin-top:8px;z-index:1000}.profile-menu-dropdown .profile-menu-content{width:400px;max-width:90vw;animation:slideInFromTop .3s ease-out}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.profile-menu{padding:10px;justify-content:center}.profile-menu-content{width:100%;max-width:100%;margin:0}}
