.tp-btn-modern{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:12px;font-size:14px;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;border:none;cursor:pointer}.tp-btn-modern: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 .5s}.tp-btn-modern:hover:before{left:100%}.tp-btn-modern i,.tp-btn-modern svg{font-size:16px;transition:transform .3s ease}.tp-btn-modern:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.tp-btn-modern:hover i,.tp-btn-modern:hover svg{transform:scale(1.1)}.tp-btn-modern:active{transform:translateY(0)}.tp-btn-login{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%);color:#fff;box-shadow:0 4px 15px #4facfe66;font-size:16px;padding:14px 30px;width:100%;margin-top:15px}.tp-btn-login:hover{box-shadow:0 6px 25px #4facfe99;color:#fff}.tp-btn-game{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 4px 15px #667eea66}.tp-btn-game:hover{box-shadow:0 6px 25px #667eea99;color:#fff}.tp-btn-points{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);color:#fff;box-shadow:0 4px 15px #f5576c66}.tp-btn-points:hover{box-shadow:0 6px 25px #f5576c99;color:#fff}.tp-offcanvas-guest{padding:30px 20px;text-align:center}.tp-offcanvas-guest .guest-title{font-size:22px;font-weight:700;color:#1a1a1a;margin-bottom:10px}.tp-offcanvas-guest .guest-description{font-size:14px;color:#666;line-height:1.6;margin-bottom:20px}.tp-offcanvas-profile{padding:25px 20px;margin-bottom:30px;background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.05));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(255,255,255,.18);box-shadow:0 8px 32px #1f268726}.tp-offcanvas-profile .profile-avatar{width:80px;height:80px;border-radius:50%;overflow:hidden;margin:0 auto 15px;border:3px solid rgba(255,255,255,.3)}.tp-offcanvas-profile .profile-avatar img{width:100%;height:100%;object-fit:cover}.tp-offcanvas-profile .profile-info{text-align:center}.tp-offcanvas-profile .profile-info .profile-name{font-size:18px;font-weight:700;color:#1a1a1a;margin-bottom:5px}.tp-offcanvas-profile .profile-info .profile-position{font-size:13px;color:#666;display:block;margin-bottom:8px}.tp-offcanvas-profile .profile-info .profile-unit{font-size:12px;color:#888;padding:6px 12px;background:rgba(0,0,0,.05);border-radius:15px;display:inline-block}.tp-offcanvas-profile .profile-game-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid rgba(0,0,0,.08)}@media (max-width: 768px){.tp-btn-modern{padding:10px 16px;font-size:12px}.tp-btn-login{padding:12px 24px;font-size:14px}}.game-hero-area{position:relative;overflow:hidden}.game-hero-area .game-hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.game-hero-area .game-hero-bg img{width:100%;height:100%;object-fit:cover}.game-hero-area .game-hero-bg .game-hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(10,10,10,.9) 0%,rgba(10,10,10,.7) 100%)}.game-hero-area:before{content:"";position:absolute;top:-50%;right:-30%;width:80%;height:150%;background:radial-gradient(ellipse,rgba(102,126,234,.15) 0%,transparent 70%);pointer-events:none;z-index:1}.game-hero-area .container,.game-hero-content{position:relative;z-index:2}.game-hero-subtitle{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#f5af19;text-transform:uppercase;letter-spacing:2px;margin-bottom:20px}.game-hero-subtitle i{font-size:18px}.game-hero-title{font-size:clamp(48px,8vw,80px);font-weight:800;color:#fff;line-height:1.1;margin-bottom:25px;text-transform:uppercase;background:linear-gradient(135deg,#fff 0%,rgba(255,255,255,.7) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.game-hero-desc{font-size:18px;color:#ffffffb3;line-height:1.7;max-width:500px}.game-user-section{padding-left:30px}.game-user-card,.game-guest-card{background:rgba(255,255,255,.05);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:30px;box-shadow:0 20px 60px #0000004d}.game-user-card .user-card-header{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.1)}.game-user-card .user-avatar{position:relative;width:70px;height:70px;flex-shrink:0}.game-user-card .user-avatar img,.game-user-card .user-avatar .avatar-placeholder{width:100%;height:100%;border-radius:50%;object-fit:cover}.game-user-card .user-avatar .avatar-placeholder{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);display:flex;align-items:center;justify-content:center}.game-user-card .user-avatar .avatar-placeholder i{font-size:28px;color:#fff}.game-user-card .user-avatar .online-badge{position:absolute;bottom:4px;right:4px;width:14px;height:14px;background:#22c55e;border:3px solid #0a0a0a;border-radius:50%}.game-user-card .user-info{flex:1}.game-user-card .user-name{font-size:20px;font-weight:700;color:#fff;margin-bottom:4px}.game-user-card .user-institution{font-size:14px;color:#fff9;display:flex;align-items:center;gap:6px}.game-user-card .user-institution i{font-size:12px}.game-user-card .user-card-body{margin-bottom:24px}.game-user-card .user-points-display{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#f5af19 0%,#f12711 100%);border-radius:16px;padding:20px 24px}.game-user-card .points-icon{width:50px;height:50px;background:rgba(255,255,255,.2);border-radius:12px;display:flex;align-items:center;justify-content:center}.game-user-card .points-icon i{font-size:24px;color:#fff}.game-user-card .points-info{display:flex;flex-direction:column}.game-user-card .points-label{font-size:13px;color:#fffc;text-transform:uppercase;letter-spacing:1px}.game-user-card .points-value{font-size:32px;font-weight:800;color:#fff}.game-user-card .user-card-footer .btn-leaderboard{width:100%;padding:16px 24px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:all .3s ease}.game-user-card .user-card-footer .btn-leaderboard:hover{background:rgba(255,255,255,.15);border-color:#f5af19;color:#f5af19;transform:translateY(-2px)}.game-user-card .user-card-footer .btn-leaderboard i{font-size:18px;color:#f5af19}.game-guest-card{text-align:center}.game-guest-card .guest-icon{width:80px;height:80px;margin:0 auto 20px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;display:flex;align-items:center;justify-content:center}.game-guest-card .guest-icon i{font-size:36px;color:#fff}.game-guest-card .guest-title{font-size:22px;font-weight:700;color:#fff;margin-bottom:12px}.game-guest-card .guest-desc{font-size:15px;color:#ffffffb3;margin-bottom:24px;line-height:1.6}.game-guest-card .btn-sso-login{width:100%;padding:16px 24px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:all .3s ease;margin-bottom:24px}.game-guest-card .btn-sso-login:hover{transform:translateY(-3px);box-shadow:0 10px 30px #667eea66}.game-guest-card .guest-features{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.game-guest-card .feature-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#fff9}.game-guest-card .feature-item i{color:#f5af19}.game-list-area{position:relative;background-color:#f5f5f5}.game-list-header .game-section-subtitle{display:block;font-size:13px;font-weight:600;color:#667eea;text-transform:uppercase;letter-spacing:2px;margin-bottom:12px}.game-list-header .game-section-title{font-size:clamp(32px,5vw,48px);font-weight:800;color:#1a1a1a;margin-bottom:0}.game-list-header .game-section-desc{font-size:16px;color:#1a1a1a99;margin-bottom:0}.game-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media (max-width: 992px){.game-gallery{grid-template-columns:repeat(2,1fr);gap:20px}}@media (max-width: 576px){.game-gallery{grid-template-columns:repeat(2,1fr);gap:16px}}.game-gallery-item{position:relative;border-radius:12px;overflow:hidden;cursor:pointer;aspect-ratio:3/4;transition:all .3s ease}.game-gallery-item:hover{transform:scale(1.03);z-index:10;box-shadow:0 20px 50px #0006}.game-gallery-item:hover .game-cover img{transform:scale(1.1)}.game-gallery-item:hover .game-overlay{opacity:1}.game-gallery-item:hover .game-locked-badge{transform:scale(1.1);background:rgba(255,193,7,.25)}.game-locked-badge{position:absolute;top:12px;right:12px;width:40px;height:40px;background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,193,7,.4);border-radius:10px;display:flex;align-items:center;justify-content:center;z-index:5;transition:all .3s ease;box-shadow:0 4px 12px #0000004d}.game-locked-badge i{color:#ffc107;font-size:16px}.game-cover{position:absolute;top:0;left:0;width:100%;height:100%}.game-cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.game-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.3) 50%,rgba(0,0,0,.9) 100%);display:flex;align-items:flex-end;padding:20px;opacity:0;transition:opacity .3s ease}.game-overlay-content{width:100%}.game-overlay-title{font-size:16px;font-weight:700;color:#fff;margin-bottom:8px;line-height:1.3}@media (max-width: 768px){.game-overlay-title{font-size:14px}}.game-overlay-meta{margin-bottom:12px}.game-overlay-meta .top-scorer-info{display:flex;align-items:center;gap:6px;font-size:12px;color:#fffc}.game-overlay-meta .top-scorer-info i{color:#f5af19;font-size:11px}.game-overlay-meta .top-scorer-info strong{color:#fff}.btn-play-overlay{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-play-overlay:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.btn-play-overlay i{font-size:11px}.game-empty-state{text-align:center;padding:80px 40px;background:#ffffff;border-radius:20px;box-shadow:0 10px 40px #00000014}.game-empty-state .empty-icon{width:100px;height:100px;margin:0 auto 24px;background:rgba(102,126,234,.1);border-radius:50%;display:flex;align-items:center;justify-content:center}.game-empty-state .empty-icon i{font-size:42px;color:#667eea}.game-empty-state h4{font-size:24px;font-weight:700;color:#1a1a1a;margin-bottom:12px}.game-empty-state p{font-size:15px;color:#1a1a1a99;max-width:400px;margin:0 auto}#leaderboardModal{z-index:9999!important}#leaderboardModal .modal-dialog{margin:1.75rem auto;display:flex;align-items:center;min-height:calc(100% - 3.5rem)}.leaderboard-modal-content{background:#ffffff;border:none;border-radius:24px;overflow:hidden;width:100%}.leaderboard-modal-header{background:linear-gradient(135deg,#f5af19 0%,#f12711 100%);padding:24px 30px;border:none;display:flex;align-items:center;justify-content:space-between}.leaderboard-modal-header .modal-title-wrap{display:flex;align-items:center;gap:12px}.leaderboard-modal-header .modal-title-wrap i{font-size:28px;color:#fff}.leaderboard-modal-header .modal-title{font-size:22px;font-weight:700;color:#fff;margin:0}.leaderboard-modal-header .btn-close-modal{width:40px;height:40px;background:rgba(255,255,255,.2);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;cursor:pointer;transition:all .3s ease}.leaderboard-modal-header .btn-close-modal:hover{background:rgba(255,255,255,.3)}.leaderboard-modal-body{padding:30px}.leaderboard-list .leaderboard-item{display:flex;align-items:center;gap:16px;padding:16px;border-radius:12px;margin-bottom:10px;background:#f9f9f9;transition:background .3s ease}.leaderboard-list .leaderboard-item:hover{background:#f0f0f0}.leaderboard-list .leaderboard-item.top-1{background:linear-gradient(135deg,rgba(245,175,25,.1) 0%,rgba(245,175,25,.05) 100%)}.leaderboard-list .leaderboard-item.top-2{background:linear-gradient(135deg,rgba(192,192,192,.2) 0%,rgba(192,192,192,.1) 100%)}.leaderboard-list .leaderboard-item.top-3{background:linear-gradient(135deg,rgba(205,127,50,.15) 0%,rgba(205,127,50,.05) 100%)}.leaderboard-list .rank-badge{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;background:rgba(26,26,26,.1);color:#1a1a1a}.leaderboard-list .rank-badge.gold{background:linear-gradient(135deg,#f5af19 0%,#f12711 100%);color:#fff}.leaderboard-list .rank-badge.silver{background:linear-gradient(135deg,#c0c0c0 0%,#a0a0a0 100%);color:#fff}.leaderboard-list .rank-badge.bronze{background:linear-gradient(135deg,#cd7f32 0%,#a0522d 100%);color:#fff}.leaderboard-list .player-info{flex:1}.leaderboard-list .player-name{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:2px}.leaderboard-list .player-institution{font-size:13px;color:#1a1a1a80}.leaderboard-list .player-score{font-size:18px;font-weight:700;color:#667eea}.leaderboard-empty{text-align:center;padding:40px 20px}.leaderboard-empty i{font-size:48px;color:#1a1a1a33;margin-bottom:16px}.leaderboard-empty p{font-size:15px;color:#1a1a1a80}@media (max-width: 991px){.game-user-section{padding-left:0;margin-top:40px}.game-hero-title{font-size:clamp(36px,10vw,56px)}}@media (max-width: 767px){.game-hero-area{padding-top:140px}.game-user-card,.game-guest-card{padding:24px}.game-card-image{height:160px}}
