@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Anton&display=swap";body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px}.toast{min-width:300px;padding:15px;border-radius:4px;box-shadow:0 2px 5px #0003;animation:slideIn .3s ease-in-out}.toast.toast-success{background-color:#4caf50;color:#fff}.toast.toast-error{background-color:#f44336;color:#fff}.toast.toast-warning{background-color:#ff9800;color:#fff}.toast.toast-info{background-color:#2196f3;color:#fff}.toast-content{display:flex;justify-content:space-between;align-items:center}.toast-close{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0 5px}.toast-close:hover{opacity:.8}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{margin-right:12px;display:flex;align-items:center;justify-content:center}.toast-icon .material-icons{font-size:24px}.toast-message{flex:1;font-size:14px;line-height:1.5;color:#333;word-wrap:break-word;padding-right:16px}@media(max-width:480px){.toast-container{top:10px;right:10px;max-width:calc(100% - 20px)}.toast-content{padding:12px}.toast-message{font-size:13px}}.toast-container+.toast-container{margin-top:10px}@font-face{font-family:GogoPosterpunch;src:url(/assets/fonts/GoGoPosterPunch.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.button{padding:.75rem 1.5rem;font-size:1rem;font-weight:700;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease;width:100%}.button:focus{outline:none}.button:focus-visible{outline:2px solid #4a90e2;outline-offset:1px}@media(min-width:768px){.button{padding:1rem 2rem;font-size:1.1rem;border-radius:8px;width:auto}}.button.primary{background:var(--primary-color);color:#fff}.button.primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #e6c88a4d}.button.primary.focused{border:2px solid #FFD700;box-shadow:0 0 10px #ffd7004d}.button.secondary{background:#ffffff1a;color:#fff}.button.secondary:hover{background:#fff3;transform:translateY(-2px)}.button.secondary.focused{border:2px solid #FFD700;box-shadow:0 0 10px #ffd7004d}.button.goal{background:var(--primary-color);color:var(--text-light);font-size:3rem;width:100%;padding:0;padding-bottom:.25rem;margin:0 .5rem;font-family:var(--font-special)}@media(min-width:768px){.button.goal{font-size:4rem;padding-bottom:.5rem;margin:0 1rem}}.button:active{transform:translateY(0)}.button.transparent{background:none;border:none;padding:0;width:100%}.button.transparent:hover{background:none}.button.transparent:focus{outline:none}.button.small{padding:.5rem 1rem;font-size:.9rem}@media(min-width:768px){.button.small{padding:.75rem 1.5rem;font-size:1rem}}.button.fixed-width{width:auto}.button.inline{display:inline-block;width:auto}.button.with-icon{display:flex;align-items:center;justify-content:center;gap:.5rem}.button.with-icon .icon{font-size:1.2em}.button.error{background:#d32f2f!important;color:#fff!important;border:none;box-shadow:0 2px 8px #d32f2f26}.button.error:hover{background:#b71c1c!important;box-shadow:0 4px 16px #d32f2f40}.button.error.focused{border:2px solid #ff5252;box-shadow:0 0 10px #ff52524d}.button.critical{background:#d32f2f;color:#fff;border:none;box-shadow:0 2px 8px #d32f2f26}.button.critical:hover{background:#b71c1c;box-shadow:0 4px 16px #d32f2f40}.button.critical.focused{border:2px solid #ff5252;box-shadow:0 0 10px #ff52524d}.button-group{display:flex;flex-direction:column;gap:.5rem;width:100%}@media(min-width:768px){.button-group{flex-direction:row;gap:1rem}}.button-group.centered{justify-content:center}.button-group.right{justify-content:flex-end}.button-group.spread{justify-content:space-between}.input-field{display:flex;flex-direction:column;gap:.5rem;width:100%}.input-field label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-light)}.input-field input{padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:var(--border-radius-md);background:var(--bg-layer2);color:var(--text-light);font-size:var(--font-size-base);transition:all .2s ease}.input-field input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(var(--primary-color-rgb),.2)}.input-field input::placeholder{color:var(--text-muted)}.input-field.has-error input{border-color:var(--error-color)}.input-field.has-error input:focus{box-shadow:0 0 0 2px rgba(var(--error-color-rgb),.2)}.input-field.has-error .error-message{color:var(--error-color);font-size:var(--font-size-sm);margin-top:.25rem}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);background:var(--bg-gradient);background-size:2000px 2000px;background-position-x:70%;flex-direction:column}.login-container .app-title{font-family:var(--font-special);color:var(--text-light);font-size:5rem;margin-bottom:5rem;text-align:center;line-height:.62;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.login-container .app-tagline{color:var(--text-secondary);font-size:var(--font-size-md);margin-top:var(--spacing-md);text-align:center}.login-container--split{flex-direction:row;gap:5rem;padding:var(--spacing-xl)}.login-container--split .login-container__left{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.login-container--split .login-container__left .app-title{margin-bottom:0;text-align:center}.login-container--split .login-container__right{flex:1;display:flex;align-items:center;justify-content:center}.login-container .login-box{background:var(--bg-layer1);padding:var(--spacing-xl) var(--spacing-xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.08);width:100%;max-width:420px}.login-container .login-box h1{color:var(--text-light);font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm);text-align:center}.login-container .login-box__description{color:var(--text-secondary);font-size:var(--font-size-md);text-align:center;margin-bottom:var(--spacing-xl)}.login-container .login-box__register{color:var(--text-muted);font-size:var(--font-size-sm);text-align:center;margin-top:var(--spacing-lg);line-height:1.5}.login-container .login-box .login-button--full{width:100%;justify-content:center;padding:var(--spacing-md);font-size:var(--font-size-md)}.login-container .login-box .login-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.login-container .login-box .login-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.login-container .login-box .login-form .form-group label{color:var(--text-secondary);font-size:var(--font-size-sm)}.login-container .login-box .login-form .form-group input{padding:var(--spacing-sm);border:1px solid rgba(0,0,0,.1);border-radius:var(--border-radius-sm);font-size:var(--font-size-md);transition:border-color .2s}.login-container .login-box .login-form .form-group input:focus{outline:none;border-color:var(--primary-color)}.login-container .login-box .login-form button{margin-top:var(--spacing-md)}.login-container .login-box .links{margin-top:var(--spacing-lg);text-align:center}.login-container .login-box .links a{color:var(--text-muted);font-size:var(--font-size-sm);transition:color .2s}.login-container .login-box .links a:hover{color:var(--secondary-color);text-decoration:underline}@media(min-width:480px){.login-container{padding:var(--spacing-sm)}.login-container .login-box{padding:var(--spacing-md)}}@media(min-width:1024px){.login-container{background-position-x:50%}.login-container:not(.login-container--split){flex-direction:row;gap:5rem}.login-container--split{flex-direction:row;gap:5rem}}@media(max-width:1023px){.login-container--split{flex-direction:column;gap:3rem}.login-container--split .login-container__left .app-title{font-size:4rem;text-align:center}}.register-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);background:var(--bg-gradient)}.register-container .register-box{background:var(--bg-layer1);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:400px}.register-container .register-box h1{color:var(--text-light);font-size:var(--font-size-xl);margin-bottom:var(--spacing-lg);text-align:center}.register-container .register-box .register-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.register-container .register-box .register-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.register-container .register-box .register-form .form-group label{color:var(--text-secondary);font-size:var(--font-size-sm)}.register-container .register-box .register-form .form-group input{padding:var(--spacing-sm);border:1px solid rgba(0,0,0,.1);border-radius:var(--border-radius-sm);font-size:var(--font-size-md);transition:border-color .2s}.register-container .register-box .register-form .form-group input:focus{outline:none;border-color:var(--primary-color)}.register-container .register-box .register-form button{margin-top:var(--spacing-md)}.register-container .register-box .links{margin-top:var(--spacing-lg);text-align:center}.register-container .register-box .links a{color:#4a90e2;text-decoration:none;font-size:.9rem;transition:color .3s ease}.register-container .register-box .links a:hover{color:#357abd;text-decoration:underline}.register-container .avatar-section{display:flex;flex-direction:column;align-items:center;margin-bottom:var(--spacing-lg)}.register-container .avatar-section .avatar-editor-container{width:250px;height:250px;margin:0 auto;margin-bottom:var(--spacing-md);border-radius:50%;overflow:hidden;background:var(--bg-layer1);position:relative}.register-container .avatar-section .avatar-editor-container .avatar-editor{display:block}.register-container .avatar-section .avatar-editor-container .avatar-editor canvas{border-radius:50%}.register-container .avatar-section .avatar-editor-container .avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-layer2);color:var(--text-muted);font-size:var(--font-size-sm);border-radius:50%}.register-container .avatar-section .avatar-controls{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.register-container .avatar-section .avatar-controls .file-input{display:none}.register-container .avatar-section .avatar-controls .upload-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--primary-color);color:var(--text-light);border-radius:var(--border-radius-sm);cursor:pointer;transition:background-color .2s}.register-container .avatar-section .avatar-controls .upload-button:hover{background:var(--primary-color-dark)}.register-container .avatar-section .avatar-controls .scale-control{width:200px;padding:0 var(--spacing-sm)}.register-container .creating-user-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px}.register-container .creating-user-spinner .spinner{width:50px;height:50px;border:5px solid #f3f3f3;border-top:5px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}.register-container .creating-user-spinner p{font-size:1.2rem;color:#333}.email-verification-required{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.email-verification-container{background:#fff;border-radius:12px;padding:48px;max-width:500px;width:100%;box-shadow:0 10px 40px #0003;text-align:center}.email-verification-container .icon-container{margin-bottom:24px}.email-verification-container .icon-container .material-icons{font-size:64px;color:#667eea}.email-verification-container h1{font-size:28px;font-weight:600;color:#333;margin-bottom:16px}.email-verification-container .message{font-size:18px;color:#666;margin-bottom:16px;font-weight:500}.email-verification-container .instructions{font-size:16px;color:#888;line-height:1.6;margin-bottom:32px}.email-verification-container .button-container{margin-bottom:24px}.email-verification-container .help-text{margin-top:24px;padding-top:24px;border-top:1px solid #eee}.email-verification-container .help-text p{font-size:14px;color:#999;line-height:1.5;margin:0}@font-face{font-family:GogoPosterpunch;src:url(/assets/fonts/GoGoPosterPunch.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.player-card{position:relative;display:flex;align-items:center;gap:10px;width:100%;max-width:100%;padding:10px;background:var(--bg-layer2);border-radius:8px;box-shadow:0 2px 4px #0000001a;color:var(--text-light);overflow:hidden;box-sizing:border-box}.player-card.layout-vertical{flex-direction:column;align-items:center;justify-content:flex-start;height:100%;min-height:100%;padding:var(--spacing-sm);gap:var(--spacing-xs);flex:1}.player-card.layout-vertical .player-image{width:70px;height:70px;flex-shrink:0;margin-top:0}.player-card.layout-vertical .player-image img{width:70px;height:70px}.player-card.layout-vertical .player-info{flex:0 0 auto;width:100%;text-align:center;max-width:100%;min-width:0;margin-top:auto;margin-bottom:0}.player-card.layout-vertical .player-info .player-name-vertical{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%}.player-card.layout-vertical .player-info .player-name-vertical .player-first-name,.player-card.layout-vertical .player-info .player-name-vertical .player-last-name{font-size:var(--font-size-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.2}.player-card.size-small{width:100%;max-width:100%;padding:8px;gap:6px}.player-card.size-small .player-image{width:36px;height:36px;flex-shrink:0}.player-card.size-small.layout-vertical .player-image,.player-card.size-small.layout-vertical .player-image img{width:70px;height:70px}.player-card.size-small .player-info{flex:1;min-width:0;overflow:hidden;max-width:calc(100% - 80px)}.player-card.size-small.has-no-icons .player-info{max-width:calc(100% - 40px)}.player-card.size-small.has-many-icons .player-info{max-width:calc(100% - 100px)}.player-card.size-small.has-many-icons .player-info .player-name{font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.player-card.size-small.has-many-icons .player-info .player-rating,.player-card.size-small.has-many-icons .player-info .player-score{font-size:var(--font-size-xs)}.player-card.size-small .player-role .role-icon{font-size:var(--font-size-md)}.player-card.size-medium .player-image{width:48px;height:48px;flex-shrink:0}.player-card.size-medium .player-image img{width:48px;height:48px}.player-card.size-large .player-image{width:64px;height:64px;flex-shrink:0}.player-card.size-large .player-info{flex:1;min-width:0;overflow:hidden;max-width:calc(100% - 140px)}.player-card.size-large .player-info .player-name{font-size:var(--font-size-lg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@media(min-width:768px){.player-card.size-large .player-info .player-name{font-size:var(--font-size-xl)}}.player-card.size-large.has-no-icons .player-info{max-width:calc(100% - 70px)}.player-card.size-large.has-many-icons .player-info{max-width:calc(100% - 160px)}.player-card.size-large .player-role .role-icon{font-size:var(--font-size-xl)}@media(min-width:768px){.player-card.size-large{gap:1rem;padding:1rem}.player-card.size-large .player-image{width:100px;height:100px}.player-card.size-large .player-name{font-size:var(--font-size-xl)}.player-card.size-large .player-rating,.player-card.size-large .player-score{font-size:var(--font-size-lg)}.player-card.size-large .role-icon{font-size:var(--font-size-xl)}}.player-card .player-image{width:48px;height:48px;flex-shrink:0}.player-card .player-image img{width:100%;height:100%;object-fit:cover;border-radius:50%}.player-card .player-info{flex:1;min-width:0;overflow:hidden;max-width:calc(100% - 120px)}.player-card .player-info .player-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.player-card.has-no-icons .player-info{max-width:calc(100% - 50px)}.player-card.has-many-icons .player-info{max-width:calc(100% - 140px)}.player-card .player-rating{color:var(--text-light);font-size:var(--font-size-sm)}.player-card .player-role{display:flex;align-items:center;gap:.5rem}.player-card .player-role .role-icon{display:flex;align-items:center;justify-content:center}.player-card .player-role .role-icon .role-icon-svg{width:24px;height:24px}.player-card .player-role .role-icon .role-icon-svg.attacker{color:var(--warning-color);transform:rotate(-45deg)}.player-card .player-role .role-icon .role-icon-svg.defender{color:var(--primary-color)}.player-card .player-role .role-text{font-size:.9em}.player-card .player-role .role-text.attacker{color:var(--warning-color)}.player-card .player-role .role-text.defender{color:var(--primary-color)}.player-card .role-indicator{position:absolute;bottom:0;left:0;right:0;background:#000000b3;color:#fff;padding:4px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:.8em}.player-card .role-indicator.clickable{cursor:pointer;transition:background-color .2s}.player-card .role-indicator.clickable:hover{background:#000000e6}.player-card .role-indicator .role-icon{width:14px;height:14px;fill:currentColor}.player-card.role-defender .role-indicator{border-bottom:2px solid #2196f3}.player-card.role-attacker .role-indicator{border-bottom:2px solid #f44336}.player-card .role-icon-container{position:relative;display:flex;align-items:center;gap:4px;flex-shrink:0;min-width:40px;max-width:80px;overflow:hidden}.player-card.has-no-icons .role-icon-container{display:none}.player-card .rating-adjustment{font-size:1.2rem;font-weight:700;padding:2px 6px;border-radius:4px;margin-right:8px}.player-card .rating-adjustment.positive{color:#4caf50;background-color:#4caf501a}.player-card .rating-adjustment.negative{color:#f44336;background-color:#f443361a}.player-card .host-icon{color:gold}.player-card .attributes-container{display:flex;align-items:center;font-family:var(--font-primary);font-size:var(--font-size-xl);color:var(--text-light);font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-wrapper{display:inline-block;margin:10px;transform-origin:center center;position:relative;transition:transform .5s ease-in-out}.card-wrapper.shuffling .player-card{animation:rotateCard 1s ease-in-out}.card-wrapper.skeleton{cursor:default;pointer-events:none}.player-card-skeleton{width:150px;height:180px;background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border-radius:10px;display:flex;flex-direction:column;align-items:center;padding:10px;opacity:.4}.player-card-skeleton .skeleton-image{width:120px;height:120px;border-radius:50%;background:#333;margin-bottom:10px}.player-card-skeleton .skeleton-name{width:80%;height:16px;background:#333;border-radius:4px}@keyframes rotateCard{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(.8)}to{transform:rotate(360deg) scale(1)}}.card-wrapper:focus{outline:none}.attributes-container{display:flex;align-items:center;justify-content:flex-end;margin-left:auto;padding-left:var(--spacing-sm);padding-right:var(--spacing-sm);font-family:var(--font-primary);font-size:var(--font-size-xl);color:var(--text-light);font-weight:800}.role-icon-container+.attributes-container{margin-left:var(--spacing-xs)}.match-card{background:var(--bg-layer1);border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-md);display:flex;flex-direction:column;width:100%;max-width:100%;min-width:0;min-height:180px;overflow:hidden;box-sizing:border-box;transition:transform .2s ease}.match-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.match-card.perfect-win{background:linear-gradient(135deg,gold,orange);border:2px solid #FFD700;box-shadow:0 4px 20px #ffd70066}.match-card.perfect-win .match-date,.match-card.perfect-win .score-numbers,.match-card.perfect-win .status,.match-card.perfect-win .rating-adjustment{color:#1a1a1a;font-weight:600}.match-card.perfect-win .match-date,.match-card.perfect-win .score-numbers{color:#1a1a1a}.match-card.perfect-win .score-numbers .separator{color:#1a1a1a;opacity:.7}.match-card.perfect-win .status .completed{color:#1a1a1a}.match-card.perfect-win .status .completed.won{color:#006400}.match-card.perfect-win .status .completed.loss{color:#8b0000}.match-card.perfect-win .rating-adjustment.positive{color:#006400;background:#00640033}.match-card.perfect-win .rating-adjustment.negative{color:#8b0000;background:#8b000033}.match-card.perfect-win:hover{box-shadow:0 6px 30px #ffd70099}.match-card .match-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm);width:100%;gap:var(--spacing-sm);flex:0 0 auto}.match-card .rating-adjustments{display:flex;gap:var(--spacing-xs);align-items:center;flex-wrap:wrap;flex:0 0 auto;min-width:0}.match-card .rating-adjustments.rating-adjustments-left{justify-content:flex-start}.match-card .rating-adjustments.rating-adjustments-right{justify-content:flex-end}.match-card .match-date{font-size:var(--font-size-sm);color:var(--text-secondary, rgba(255, 255, 255, .6));font-weight:500;text-align:center;flex:1;min-width:0}.match-card .rating-adjustment{font-size:var(--font-size-sm);font-weight:600;padding:2px 6px;border-radius:var(--border-radius-sm)}.match-card .rating-adjustment.positive{color:var(--success-color, #4CAF50);background:#4caf501a}.match-card .rating-adjustment.negative{color:var(--error-color, #f44336);background:#f443361a}.match-card .match-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;flex:1;min-height:0}.match-card .match-content .team{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm);max-width:200px;min-width:0;overflow:hidden;justify-content:center;height:100%;min-height:100%}.match-card .match-content .team.team-one{align-items:flex-end}.match-card .match-content .team.team-two{align-items:flex-start}.match-card .match-content .team:has(.player-wrapper:has(.player-card.layout-vertical)){height:100%;min-height:100%;flex:1}.match-card .match-content .team .player-wrapper{width:100%;max-width:100%;min-width:0;overflow:hidden;display:flex;flex-direction:column}.match-card .match-content .team .player-wrapper:has(.player-card.layout-vertical){height:100%;min-height:100%;flex:1}.match-card .match-content .team .player-wrapper .player-card.size-small{width:100%;max-width:100%;min-width:0}.match-card .match-content .team .player-wrapper .player-card.size-small.layout-vertical{height:100%;min-height:100%;flex:1}.match-card .match-content .score{display:flex;flex-direction:column;align-items:center;padding:0 var(--spacing-sm);min-width:80px;max-width:120px;flex-shrink:0}.match-card .match-content .score .score-numbers{font-size:var(--font-size-xl);font-weight:700;display:flex;gap:var(--spacing-xs);align-items:center;color:var(--text-light)}.match-card .match-content .score .score-numbers .separator{color:var(--accent-color);opacity:.5}.match-card .match-content .score .status{font-size:var(--font-size-sm)}.match-card .match-content .score .status .completed.won{color:var(--success-color, #4CAF50);font-weight:600}.match-card .match-content .score .status .completed.loss{color:var(--error-color, #f44336);font-weight:600}.match-card .match-content .score .status .status-live{color:var(--error-color);font-weight:700}.match-card .match-content .score .status{border:1px solid transparent}.match-card.small{padding:var(--spacing-sm);width:24rem}.match-card.small .score .score-numbers{font-size:var(--font-size-lg)}.match-card.xs{padding:var(--spacing-sm)}.match-card.xs .score .score-numbers{font-size:var(--font-size-lg)}@media(min-width:1024px){.match-card{max-width:40rem}}@keyframes pulse{0%{transform:scale(.95);opacity:.5}50%{transform:scale(1.05);opacity:1}to{transform:scale(.95);opacity:.5}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:60px;background:var(--bg-base);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:space-around;align-items:center;box-shadow:var(--shadow-lg);z-index:1000}.bottom-nav .nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;height:100%;border:none;background:none;padding:var(--spacing-xs);color:#eee;transition:all .2s ease;cursor:pointer}.bottom-nav .nav-item:hover{color:#c4cbfc}.bottom-nav .nav-item.active{color:var(--primary-color)}.bottom-nav .nav-item.active .icon{fill:var(--primary-color)}.bottom-nav .nav-item .icon{width:24px;height:24px;fill:currentColor;margin-bottom:4px}.bottom-nav .nav-item span{font-size:var(--font-size-xs);font-weight:500}body{padding-bottom:60px}@media(min-width:768px){.bottom-nav{display:none;max-width:600px;left:50%;transform:translate(-50%);border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0}}.notification-item{display:flex;align-items:flex-start;padding:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;transition:background-color .2s ease;position:relative}.notification-item:hover{background:#ffffff0d}.notification-item.unread{background:#ffffff05}.notification-item.unread:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--primary-color)}.notification-item.unread:hover{background:#ffffff14}.notification-item .notification-icon{flex-shrink:0;width:40px;height:40px;border-radius:var(--border-radius-full);background:#ffffff1a;display:flex;align-items:center;justify-content:center;margin-right:var(--spacing-md)}.notification-item .notification-icon .material-icons{font-size:20px;color:var(--primary-color)}.notification-item .notification-content{flex:1;min-width:0}.notification-item .notification-content .notification-title{font-size:var(--font-size-md);font-weight:500;color:var(--text-light);margin-bottom:var(--spacing-xs);word-wrap:break-word}.notification-item .notification-content .notification-message{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs);word-wrap:break-word;line-height:1.4}.notification-item .notification-content .notification-time{font-size:var(--font-size-xs);color:var(--text-secondary);opacity:.7;margin-bottom:var(--spacing-xs)}.notification-item .notification-content .notification-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-sm);flex-wrap:wrap}.notification-item .notification-content .notification-actions button{flex:1;min-width:80px;padding:var(--spacing-xs) var(--spacing-sm);border:none;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);transition:all .2s ease}.notification-item .notification-content .notification-actions button .material-icons{font-size:16px}.notification-item .notification-content .notification-actions button:disabled{opacity:.5;cursor:not-allowed}.notification-item .notification-content .notification-actions .notification-accept{background:var(--success-color);color:#fff}.notification-item .notification-content .notification-actions .notification-accept:hover:not(:disabled){background:#4caf50e6;transform:translateY(-1px);box-shadow:0 2px 4px #0003}.notification-item .notification-content .notification-actions .notification-accept:active:not(:disabled){transform:translateY(0);box-shadow:none}.notification-item .notification-content .notification-actions .notification-reject{background:#ffffff1a;color:var(--text-light);border:1px solid rgba(255,255,255,.2)}.notification-item .notification-content .notification-actions .notification-reject:hover:not(:disabled){background:#ffffff26;border-color:var(--error-color);color:var(--error-color)}.notification-item .notification-content .notification-actions .notification-reject:active:not(:disabled){transform:translateY(0)}.notification-item .notification-delete{flex-shrink:0;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius-sm);opacity:0;transition:opacity .2s ease,background-color .2s ease}.notification-item .notification-delete .material-icons{font-size:18px}.notification-item .notification-delete:hover{background:#ffffff1a;color:var(--error-color)}.notification-item:hover .notification-delete{opacity:1}.notification-item.has-actions .notification-content{padding-bottom:var(--spacing-xs)}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-width:calc(100vw - 32px);max-height:500px;background:var(--background-dark);border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius-md);box-shadow:0 4px 12px #0000004d;z-index:1000;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-layer1)}.notification-dropdown .notification-list{overflow-y:auto;flex:1;max-height:400px}.notification-dropdown .notification-list::-webkit-scrollbar{width:6px}.notification-dropdown .notification-list::-webkit-scrollbar-track{background:#ffffff0d}.notification-dropdown .notification-list::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.notification-dropdown .notification-list::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.notification-dropdown .notification-list .notification-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-secondary)}.notification-dropdown .notification-list .notification-empty .material-icons{font-size:48px;margin-bottom:var(--spacing-sm);opacity:.5}.notification-dropdown .notification-list .notification-empty p{margin:0;font-size:var(--font-size-md)}.notification-dropdown .notification-list .notification-empty .rotating{animation:rotate 1s linear infinite}.notification-dropdown .notification-list .load-more-button{width:100%;padding:var(--spacing-md);background:#ffffff0d;border:none;border-top:1px solid rgba(255,255,255,.1);color:var(--text-light);cursor:pointer;font-size:var(--font-size-sm);transition:background-color .2s ease}.notification-dropdown .notification-list .load-more-button:hover:not(:disabled){background:#ffffff1a}.notification-dropdown .notification-list .load-more-button:disabled{opacity:.5;cursor:not-allowed}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.notification-dropdown{width:calc(100vw - 32px);right:-16px}}.notification-bell-container{position:relative;margin-right:var(--spacing-md)}.notification-bell{position:relative;background:none;border:none;color:var(--text-light);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--border-radius-md);display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,transform .2s ease}.notification-bell:hover{background:#ffffff1a;transform:scale(1.1)}.notification-bell.active{background:#ffffff26}.notification-bell .material-icons{font-size:24px}.notification-bell .notification-badge{position:absolute;top:4px;right:4px;background:var(--error-color);color:#fff;border-radius:var(--border-radius-full);font-size:10px;font-weight:700;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--background-dark);animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@font-face{font-family:GogoPosterpunch;src:url(/assets/fonts/GoGoPosterPunch.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.main-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background:#00000076;box-shadow:var(--shadow-md)}.main-header .logo{margin-right:auto}.main-header .logo h1{font-family:Permanent Marker,cursive;color:var(--text-light);font-size:var(--font-size-xl);margin:0;cursor:pointer}.main-header .logo h1:hover{transform:scale(1.05);transition:transform .2s ease}.main-header .heading-title{font-family:var(--font-special);font-size:1rem;text-align:center;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.3);margin-left:var(--spacing-md);text-shadow:-1px -1px 0 black,1px -1px 0 black,-1px 1px 0 black,1px 1px 0 black,2px 2px 4px rgba(0,0,0,.3)}.main-header .user-section{display:flex;align-items:center;gap:var(--spacing-md)}.main-header .user-section .user-info{display:flex;align-items:center;gap:var(--spacing-md);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--border-radius-md);transition:background-color .2s ease}.main-header .user-section .user-info:hover{background:#0000000d}.main-header .user-section .user-info .user-image{width:40px;height:40px;border-radius:var(--border-radius-full);overflow:hidden}.main-header .user-section .user-info .user-image img{width:100%;height:100%;object-fit:cover}.main-header .user-section .user-info .user-details{display:flex;flex-direction:column;align-items:flex-end}.main-header .user-section .user-info .user-details .user-name{color:var(--text-light);font-weight:500;font-size:var(--font-size-md)}.main-header .user-section .user-info .user-details .logout-button{display:flex;align-items:center;gap:var(--spacing-xs);background:none;border:none;color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;padding:0;text-decoration:underline}.main-header .user-section .user-info .user-details .logout-button .icon{font-size:1.2em;margin-right:var(--spacing-xs)}.main-header .user-section .user-info .user-details .logout-button:hover{color:var(--error-color)}@font-face{font-family:GogoPosterpunch;src:url(/assets/fonts/GoGoPosterPunch.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-overlay.slide-up-modal{align-items:flex-end}.modal-overlay.slide-up-modal+body{overflow:hidden;position:fixed;width:100%;height:100%}.modal-content{background-color:var(--bg-layer1);border-radius:8px;box-shadow:0 4px 20px #0000004d;max-width:90%;max-height:90vh;overflow-y:auto;position:relative}.modal-content.small{width:400px}.modal-content.medium{width:600px}.modal-content.large{width:800px}.modal-content.full{width:100%;max-width:100%;height:95vh;max-height:95vh;border-radius:16px 16px 0 0;transform:translateY(0);will-change:transform;touch-action:pan-y}.modal-content.slide-up-enter{animation:slideUp .3s ease-out forwards}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-drag-handle{width:40px;height:5px;background-color:var(--text-secondary);border-radius:3px;margin:10px auto;opacity:.5;position:sticky;top:0;z-index:10}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:1.2rem;color:var(--text-light);flex:1}.modal-header .close-button{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%}.modal-header .close-button:hover{background-color:var(--bg-layer2)}.modal-body{padding:var(--spacing-md);padding-top:0;overflow-y:auto}.modal-footer{padding:15px 20px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:10px}.player-modal-content{display:flex;flex-direction:column;gap:20px}.player-modal-header{display:flex;justify-content:center;padding:10px 0}.player-modal-stats{display:flex;flex-direction:column;gap:20px}.stats-section{display:flex;flex-direction:column;align-items:center;background-color:var(--bg-layer2);border-radius:8px;padding:var(--spacing-md)}.stats-section h3{margin-top:0;margin-bottom:15px;color:var(--text-light);font-size:1.1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;width:100%}.stat-item{display:flex;flex-direction:column;gap:5px}.stat-item .stat-label{font-size:.9rem;color:var(--text-secondary)}.stat-item .stat-value{font-size:1.1rem;font-weight:500;color:var(--text-light)}.player-modal-actions{display:flex;justify-content:center;margin-top:20px}.player-modal-actions .view-profile-button{background-color:var(--primary-color);color:#fff;border:none;padding:10px 20px;border-radius:4px;font-weight:500;cursor:pointer}.player-modal-actions .view-profile-button:hover{background-color:var(--primary-color-dark)}@media(min-width:768px){.player-modal-stats{display:flex;justify-content:space-between;flex-direction:row;gap:20px}.player-modal-stats .stats-section{width:100%}}@media(max-width:768px){.modal-content.small,.modal-content.medium,.modal-content.large{width:95%}.stats-grid{grid-template-columns:repeat(2,1fr)}}@font-face{font-family:GogoPosterpunch;src:url(/assets/fonts/GoGoPosterPunch.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.dashboard{position:relative;min-height:100vh;overflow:hidden;background:var(--bg-gradient);background-size:200rem}.dashboard .dashboard-container{position:relative;z-index:1;background:#1a1a1a4d}.dashboard .dashboard-title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-lg);color:var(--text-light)}.dashboard .dashboard-section{background:var(--bg-dark);border-radius:var(--border-radius-md);padding:var(--spacing-sm);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-md)}.dashboard .dashboard-section .section-header{display:flex;justify-content:center;margin-top:var(--spacing-md);margin-bottom:var(--spacing-xl)}.dashboard .dashboard-section .section-header h2{text-align:center;color:var(--text-light);font-size:var(--font-size-xl)}.dashboard main{display:flex;flex-direction:row;gap:1rem;max-width:1200px;justify-content:center;margin:0 auto}@media(max-width:768px){.dashboard main{flex-direction:column;padding-bottom:3rem}}.dashboard .player-rankings{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:0 var(--spacing-sm)}.dashboard .player-rankings .player-rank-card{display:flex;align-items:center;padding:var(--spacing-sm);border-bottom:1px solid rgba(0,0,0,.1);cursor:pointer;transition:background-color .2s}.dashboard .player-rankings .player-rank-card:hover{background-color:#0000000d}.dashboard .player-rankings .player-rank-card .rank-number{width:30px;height:30px;border-radius:var(--border-radius-full);background:var(--primary-color);color:var(--text-light);display:flex;align-items:center;justify-content:center;margin-right:var(--spacing-md)}.dashboard .player-rankings .player-rank-card .player-info .player-name{color:var(--text-primary);font-weight:500}.dashboard .player-rankings .player-rank-card .player-info .player-rating{color:var(--text-secondary);font-size:var(--font-size-sm)}.dashboard .recent-matches .match-item{padding:var(--spacing-sm);border-bottom:1px solid rgba(0,0,0,.1);cursor:pointer;transition:background-color .2s}.dashboard .recent-matches .match-item:hover{background-color:#0000000d}.dashboard .recent-matches .match-item .match-players{color:var(--text-primary);font-weight:500}.dashboard .recent-matches .match-item .match-date{color:var(--text-secondary);font-size:var(--font-size-sm)}.dashboard .recent-matches-scroll{padding:var(--spacing-sm) 0;overflow:hidden}.dashboard .recent-matches-scroll .matches-scroll-container{display:flex;gap:var(--spacing-sm);overflow-x:auto;padding:var(--spacing-sm);-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.dashboard .recent-matches-scroll .matches-scroll-container::-webkit-scrollbar{display:none}.dashboard .recent-matches-scroll .matches-scroll-container{-ms-overflow-style:none;scrollbar-width:none}.dashboard .recent-matches-scroll .matches-scroll-container .match-scroll-item{flex:0 0 300px;scroll-snap-align:start}.dashboard .recent-matches-scroll .matches-scroll-container .match-scroll-item .match-card{height:100%;margin:0}.dashboard .players-section{max-width:960px;background:var(--bg-layer1);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dashboard .players-section .player-rankings{display:flex;flex-direction:column;gap:1rem}.dashboard .players-section .player-rank-item{display:flex;align-items:center;gap:var(--spacing-md);cursor:pointer;transition:transform .2s ease}.dashboard .players-section .player-rank-item:hover{transform:translate(var(--spacing-xs))}.dashboard .players-section .player-rank-item .rank-number{font-size:var(--font-size-lg);font-weight:700;color:var(--text-secondary);min-width:36px;text-align:center}.dashboard .players-section .player-rank-item .player-card-wrapper{flex:1}.dashboard .players-section .player-rank-item .player-card-wrapper :global(.player-card){margin:0}.dashboard .players-section .pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding:var(--spacing-md) 0}.dashboard .players-section .pagination .pagination-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--primary-color);color:var(--text-light);border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:background-color .2s ease}.dashboard .players-section .pagination .pagination-button:hover:not(:disabled){background:var(--secondary-color)}.dashboard .players-section .pagination .pagination-button:disabled{background:var(--text-muted);cursor:not-allowed}.dashboard .players-section .pagination .page-info{color:var(--text-primary);font-size:var(--font-size-sm)}.dashboard .title-container{position:relative;height:10rem;font-family:var(--font-special);font-size:3rem;text-align:center;color:#fff;margin:var(--spacing-xl) 0;text-shadow:2px 2px 4px rgba(0,0,0,.3);letter-spacing:0em;line-height:1.3em;text-shadow:-1px -1px 0 black,1px -1px 0 black,-1px 1px 0 black,1px 1px 0 black,2px 2px 4px rgba(0,0,0,.3)}.dashboard .title-container .beta-banner{position:absolute;bottom:15%;right:calc(50% - 18rem);transform:rotate(-40deg) translateY(50%);padding:5px 20px;font-weight:900;font-size:64px;z-index:1;color:#fff000;letter-spacing:5px}@media(max-width:768px){.dashboard .title-container .beta-banner{right:calc(50% - 10rem);font-size:36px}}@media(min-width:768px){.dashboard .title-container{font-size:5rem;height:15rem;margin:5rem}.dashboard .dashboard-section{padding:var(--spacing-md)}.dashboard .players-section{width:100%}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;overflow-y:auto}.server-modal-content{background:var(--bg-layer1);border-radius:var(--border-radius-lg);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 24px #0003;position:relative;animation:modalFadeIn .3s ease}.server-modal-content .modal-header{padding:var(--spacing-md) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--bg-layer3)}.server-modal-content .modal-header h2{margin:0;font-size:1.4rem;color:var(--text-primary)}.server-modal-content .modal-header .close-button{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer}.server-modal-content .modal-header .close-button:hover{color:var(--text-primary)}.server-modal-content .modal-body{padding:var(--spacing-lg)}.server-modal-content .modal-body .error-message{background:rgba(var(--error-color-rgb),.1);color:var(--error-color);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md)}.server-modal-content .modal-body .option-buttons{display:flex;flex-direction:column;gap:var(--spacing-md)}.server-modal-content .modal-body .option-buttons p{text-align:center;margin-bottom:var(--spacing-md);color:var(--text-secondary)}.server-modal-content .modal-body .option-buttons button{padding:var(--spacing-md);border-radius:var(--border-radius-md);font-weight:500;transition:all .2s ease;border:none;cursor:pointer;font-size:1rem}.server-modal-content .modal-body .option-buttons button.primary-button{background:var(--primary-color);color:var(--text-light)}.server-modal-content .modal-body .option-buttons button.primary-button:hover{background:var(--primary-color-dark)}.server-modal-content .modal-body .option-buttons button.secondary-button{background:var(--bg-layer3);color:var(--text-primary)}.server-modal-content .modal-body .option-buttons button.secondary-button:hover{background:var(--bg-layer4)}.server-modal-content .modal-body .back-button{background:none;border:none;color:var(--text-secondary);font-size:.9rem;cursor:pointer;padding:0;margin-bottom:var(--spacing-md);display:inline-block}.server-modal-content .modal-body .back-button:hover{color:var(--text-primary)}.server-modal-content .modal-body .invite-code-section{margin-bottom:var(--spacing-lg)}.server-modal-content .modal-body .invite-code-section h3{margin-bottom:var(--spacing-sm);color:var(--text-primary);font-size:1.1rem}.server-modal-content .modal-body .invite-code-section .invite-input-group{display:flex;gap:var(--spacing-xs)}.server-modal-content .modal-body .invite-code-section .invite-input-group input{flex:1;padding:var(--spacing-sm);border-radius:var(--border-radius-sm);border:1px solid var(--bg-layer3);background:var(--bg-layer2);color:var(--text-primary);font-size:.9rem}.server-modal-content .modal-body .invite-code-section .invite-input-group input:focus{border-color:var(--primary-color);outline:none}.server-modal-content .modal-body .invite-code-section .invite-input-group .join-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--primary-color);color:var(--text-light);border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-weight:500}.server-modal-content .modal-body .invite-code-section .invite-input-group .join-button:hover{background:var(--primary-color-dark)}.server-modal-content .modal-body .invite-code-section .invite-input-group .join-button:disabled{opacity:.5;cursor:not-allowed}.server-modal-content .modal-body .public-servers-section h3{margin-bottom:var(--spacing-sm);color:var(--text-primary);font-size:1.1rem}.server-modal-content .modal-body .public-servers-section .loading-indicator,.server-modal-content .modal-body .public-servers-section .no-servers-message{text-align:center;padding:var(--spacing-md);color:var(--text-secondary)}.server-modal-content .modal-body .public-servers-section .servers-list{margin-top:15px}.server-modal-content .modal-body .public-servers-section .servers-list .server-item{display:flex;justify-content:space-between;align-items:center;padding:15px;border-radius:8px;background-color:#ffffff1a;margin-bottom:10px}.server-modal-content .modal-body .public-servers-section .servers-list .server-item .server-info{flex:1}.server-modal-content .modal-body .public-servers-section .servers-list .server-item .server-info h4{margin:0 0 5px;font-size:16px}.server-modal-content .modal-body .public-servers-section .servers-list .server-item .server-info p{margin:0 0 5px;font-size:14px;color:#ffffffb3}.server-modal-content .modal-body .public-servers-section .servers-list .server-item .server-info .member-count{font-size:12px;color:#ffffff80}.server-modal-content .modal-body .public-servers-section .servers-list .server-item .request-button{background-color:#4a6d7c;color:#fff;border:none;border-radius:4px;padding:8px 15px;cursor:pointer;transition:background-color .2s}.server-modal-content .modal-body .public-servers-section .servers-list .server-item .request-button:hover{background-color:#3a5d6c}.server-modal-content .modal-body .public-servers-section .servers-list .server-item .request-button:disabled{background-color:#2a3d4c;cursor:not-allowed;opacity:.7}.server-modal-content .modal-body .public-servers-section .servers-list .server-item .request-button.pending{background-color:#6b5b95}.server-modal-content .modal-body .public-servers-section .servers-list .server-item .request-button.pending:disabled{background-color:#594c7d;cursor:not-allowed}.server-modal-content .modal-body .create-server-view{display:flex;flex-direction:column}.server-modal-content .modal-body .create-server-view p{margin-bottom:var(--spacing-lg);color:var(--text-secondary)}.server-modal-content .modal-body .create-server-view .primary-button{padding:var(--spacing-md);background:var(--primary-color);color:var(--text-light);border:none;border-radius:var(--border-radius-md);cursor:pointer;font-weight:500;font-size:1rem}.server-modal-content .modal-body .create-server-view .primary-button:hover{background:var(--primary-color-dark)}.server-modal-content .modal-body .create-server-view .primary-button:disabled{opacity:.5;cursor:not-allowed}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:576px){.server-modal-content{max-width:100%;height:100%;max-height:100%;border-radius:0}.server-modal-content .modal-body{height:calc(100% - 60px);overflow-y:auto}}.mobile-players-section{display:none;width:100%;margin:var(--spacing-lg) 0}.mobile-players-section .tabs-container{display:flex;justify-content:center;margin-bottom:var(--spacing-md)}.mobile-players-section .tabs-container .tab-button{padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;color:var(--text-secondary);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:all .3s ease;position:relative}.mobile-players-section .tabs-container .tab-button.active{color:var(--text-light)}.mobile-players-section .tabs-container .tab-button.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--accent-color)}.mobile-players-section .tabs-container .tab-button:hover:not(.active){color:var(--text-light)}.desktop-players-sections{display:flex;width:100%;gap:var(--spacing-lg)}.desktop-players-sections .dashboard-section{flex:1;min-width:0}@media(max-width:768px){.mobile-players-section{display:block}.desktop-players-sections{display:none}.dashboard-section{margin-bottom:var(--spacing-xl)}}.profile-page{position:relative;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-gradient);background-size:2000px 2000px}.profile-page header{position:relative;z-index:1000}.profile-page .content-wrapper{display:flex;flex:1;overflow:hidden;position:relative;z-index:1}.profile-page .sidebar{background:var(--bg-layer1);display:flex;flex-direction:column;gap:var(--spacing-md);align-items:flex-end;transition:all .3s ease;z-index:100;padding:var(--spacing-sm);padding-bottom:3rem;padding-top:1.5rem}.profile-page .sidebar .chevron-toggle{width:1rem;height:1rem;cursor:pointer;color:var(--text-light);margin-bottom:var(--spacing-md);margin-right:1.2rem}.profile-page .sidebar .nav-items{display:flex;width:100%;gap:var(--spacing-sm);flex-direction:column;align-items:center}.profile-page .sidebar .nav-items .nav-item{width:100%;display:flex;align-items:center;gap:0;flex-direction:row;cursor:pointer;color:var(--text-light);padding:var(--spacing-md);border-radius:var(--border-radius-md)}.profile-page .sidebar .nav-items .nav-item:hover{background:var(--bg-layer2)}.profile-page .sidebar .nav-items .nav-item.active{background:var(--primary-color)}.profile-page .sidebar .nav-items .nav-item .icon{min-width:24px;width:24px;height:24px;flex-shrink:0;text-align:center}.profile-page .sidebar .nav-items .nav-item .nav-text{display:none;opacity:0;transition:opacity .3s ease}.profile-page .sidebar .logout-button{width:100%;margin-top:2rem;padding:var(--spacing-md);display:flex;flex-direction:row;justify-content:flex-start;border-radius:var(--border-radius-md);cursor:pointer;color:var(--error-color);white-space:nowrap}.profile-page .sidebar .logout-button .icon{min-width:24px;width:24px;height:24px;flex-shrink:0;rotate:180deg;fill:var(--error-color);text-align:center}.profile-page .sidebar .logout-button .nav-text{display:none;opacity:0;transition:opacity .3s ease}.profile-page .sidebar .logout-button:hover{background:var(--bg-layer2)}.profile-page .sidebar.open .nav-items .nav-item{gap:var(--spacing-md)}.profile-page .sidebar.open .nav-items .nav-item .nav-text{display:inline-block}.profile-page .sidebar.open .logout-button{gap:var(--spacing-md)}.profile-page .sidebar.open .logout-button .nav-text{display:inline-block}.profile-page .sidebar.open{width:250px;background:rgba(var(--bg-layer1-rgb),.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.profile-page .sidebar.open .chevron-toggle .icon{transform:rotate(180deg)}.profile-page .sidebar.open .nav-items .nav-item .nav-text,.profile-page .sidebar.open .logout-button .nav-text{opacity:1}@media(min-width:768px){.profile-page .sidebar{position:relative;width:250px}.profile-page .sidebar .chevron-toggle{display:none}.profile-page .sidebar .nav-items .nav-item{gap:var(--spacing-md)}.profile-page .sidebar .nav-items .nav-item .nav-text{display:inline-block;opacity:1}.profile-page .sidebar .logout-button{gap:var(--spacing-md)}.profile-page .sidebar .logout-button .nav-text{display:inline-block;opacity:1}}.profile-page .main-content{flex:1;padding:var(--spacing-lg);position:relative;z-index:1;min-width:0;overflow-y:auto;height:calc(100vh - var(--header-height))}@media(max-width:768px){.profile-page .main-content{margin-left:0;width:calc(100% - 60px)}}@media(min-width:769px){.profile-page .main-content{margin-left:0;width:calc(100% - 250px)}}.profile-page .player-header{margin-bottom:var(--spacing-xl)}.profile-page .player-content section{background:var(--bg-layer1);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.profile-page .player-content section h2{color:var(--text-primary);margin-bottom:var(--spacing-lg);font-size:1.5rem}.profile-page .stats-section .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.profile-page .stats-section .stats-grid .stat-card{background:var(--bg-layer2);padding:var(--spacing-md);border-radius:var(--border-radius-md)}.profile-page .stats-section .stats-grid .stat-card h3{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--spacing-sm)}.profile-page .stats-section .stats-grid .stat-card .stat-number{color:var(--text-primary);font-size:1.5rem;font-weight:700}.profile-page .matches-section .matches-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.profile-page .matches-section .matches-header .matches-count{color:var(--text-secondary);font-size:.9rem}.profile-page .account-section{display:flex;flex-direction:column}.profile-page .account-section h2{margin-bottom:var(--spacing-sm)}.profile-page .account-section .account-details{display:flex;flex-direction:column;gap:var(--spacing-xl)}.profile-page .account-section .account-details h3{color:var(--text-secondary);font-size:1rem;margin-bottom:var(--spacing-md)}.profile-page .account-section .account-details p{margin-bottom:var(--spacing-sm)}.profile-page .account-section .detail-group .delete-account-link{color:var(--error-color);cursor:pointer;text-decoration:underline;font-size:.9rem}.profile-page .account-section .detail-group .delete-account-link:hover{opacity:.8}.profile-page .achievements-container .achievement-category{margin-bottom:2rem}.profile-page .achievements-container .achievement-category h3{margin-bottom:1rem;color:var(--text-secondary);font-size:1.2rem}.profile-page .achievements-container .achievements-grid{display:flex;flex-direction:column;gap:1rem;width:100%}.profile-page .achievements-container .achievement-card{width:100%;background:var(--bg-layer2);border-radius:12px;padding:1rem;display:flex;gap:1rem;transition:all .2s ease;position:relative;overflow:hidden}.profile-page .achievements-container .achievement-card.locked{opacity:.7;filter:grayscale(1)}.profile-page .achievements-container .achievement-card.locked:hover{opacity:.8}.profile-page .achievements-container .achievement-card.locked .achievement-icon{background:var(--bg-layer3)}.profile-page .achievements-container .achievement-card.unlocked{border:2px solid var(--success-color)}.profile-page .achievements-container .achievement-card.unlocked .achievement-icon img{filter:drop-shadow(0 0 8px var(--success-color))}.profile-page .achievements-container .achievement-card .achievement-icon{width:64px;height:64px;min-width:64px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--bg-layer1)}.profile-page .achievements-container .achievement-card .achievement-icon img{width:75%;height:75%;object-fit:contain}.profile-page .achievements-container .achievement-card .achievement-icon .locked-icon{font-size:24px;opacity:.5}.profile-page .achievements-container .achievement-card .achievement-info{flex:1;min-width:0}.profile-page .achievements-container .achievement-card .achievement-info h3{margin:0 0 .5rem;color:var(--text-primary);font-size:1.1rem}.profile-page .achievements-container .achievement-card .achievement-info p{margin:0 0 1rem;color:var(--text-secondary);font-size:.9rem}.profile-page .achievements-container .achievement-card .achievement-info .progress-bar{height:4px;background:var(--bg-layer3);border-radius:2px;margin-bottom:.5rem;overflow:hidden}.profile-page .achievements-container .achievement-card .achievement-info .progress-bar .progress{height:100%;background:var(--primary-color);border-radius:2px;transition:width .3s ease}.profile-page .achievements-container .achievement-card .achievement-info .achievement-footer{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.profile-page .achievements-container .achievement-card .achievement-info .achievement-footer .progress-text{color:var(--text-secondary)}.profile-page .achievements-container .achievement-card .achievement-info .achievement-footer .points{color:var(--success-color);font-weight:500}.profile-page .achievements-container .achievement-card .achievement-info .unlock-date{margin-top:.5rem;font-size:.8rem;color:var(--text-secondary)}.profile-page .locker-room-tab .unlock-section{margin-bottom:2rem}.profile-page .locker-room-tab .unlock-section h3{margin-bottom:1rem;font-size:1.2rem;color:var(--text-secondary)}.profile-page .locker-room-tab .unlocks-grid{display:flex;flex-direction:row;overflow-x:auto;gap:1rem;padding-bottom:1rem}.profile-page .locker-room-tab .unlock-card{background:var(--bg-layer2);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);transition:all .2s ease;min-width:200px;cursor:pointer;border:2px solid transparent}.profile-page .locker-room-tab .unlock-card:not(.active){opacity:.7}.profile-page .locker-room-tab .unlock-card:not(.active):hover{opacity:.9;background:var(--bg-layer3)}.profile-page .locker-room-tab .unlock-card.active{border-color:var(--success-color);opacity:1;background:var(--bg-layer3)}.profile-page .locker-room-tab .unlock-card .unlock-preview{width:14rem;height:5rem;border-radius:var(--border-radius-lg);background:var(--bg-base);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.profile-page .locker-room-tab .unlock-card .unlock-preview .sound-icon{font-size:2rem;color:var(--text-secondary)}.profile-page .locker-room-tab .unlock-card .unlock-preview .preview-button{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);background:var(--primary-color);color:var(--text-light);border:none;cursor:pointer;font-size:.9rem}.profile-page .locker-room-tab .unlock-card .unlock-preview .preview-button:hover{background:var(--primary-color-dark)}.profile-page .locker-room-tab .unlock-card .unlock-info{text-align:center;width:100%}.profile-page .locker-room-tab .unlock-card .unlock-info h4{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:1.1rem}.profile-page .locker-room-tab .unlock-card .unlock-info p{margin:0;color:var(--text-secondary);font-size:.9rem}.profile-page .admin-nav-item{margin-top:10px;background-color:#4a66fa1a;border-radius:6px;color:#4a66fa}.profile-page .admin-nav-item:hover{background-color:#4a66fa33}.profile-page .admin-nav-item .icon{color:#4a66fa}.profile-page .servers-section h2{margin-bottom:var(--spacing-lg)}.profile-page .servers-section .server-actions{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.profile-page .servers-section .server-actions button{display:flex;align-items:center;justify-content:center;gap:8px}.profile-page .servers-section .server-actions button .icon{font-size:18px}.profile-page .servers-section .servers-container{display:flex;flex-direction:column;gap:var(--spacing-xl)}.profile-page .servers-section .servers-container .no-servers-message{text-align:center;padding:var(--spacing-lg);background:var(--bg-layer2);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg)}.profile-page .servers-section .active-server h3{margin-bottom:var(--spacing-md);color:var(--text-secondary)}.profile-page .servers-section .active-server .no-active-server{background:var(--bg-layer2);padding:var(--spacing-lg);border-radius:var(--border-radius-md);text-align:center}.profile-page .servers-section .active-server .no-active-server p{margin-bottom:var(--spacing-sm)}.profile-page .servers-section .active-server .no-active-server p:last-child{margin-bottom:0;color:var(--text-secondary);font-size:.9rem}.profile-page .servers-section .server-card{background:var(--bg-layer2);border-radius:var(--border-radius-md);padding:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-md);transition:all .2s ease;position:relative;border:2px solid transparent}.profile-page .servers-section .server-card.active{border-color:var(--primary-color);background:var(--bg-layer3)}.profile-page .servers-section .server-card:not(.active){cursor:pointer}.profile-page .servers-section .server-card:not(.active):hover{background:var(--bg-layer3)}.profile-page .servers-section .server-card .server-icon{width:50px;height:50px;min-width:50px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--bg-layer3)}.profile-page .servers-section .server-card .server-icon img{width:100%;height:100%;object-fit:cover}.profile-page .servers-section .server-card .server-icon .server-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--primary-color);color:var(--text-light);font-weight:700}.profile-page .servers-section .server-card .server-info{flex:1;min-width:0}.profile-page .servers-section .server-card .server-info h4{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-page .servers-section .server-card .server-info .server-description{color:var(--text-secondary);margin-bottom:var(--spacing-xs);font-size:.9rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.profile-page .servers-section .server-card .server-info .server-role{color:var(--primary-color);font-size:.8rem;font-weight:500}.profile-page .servers-section .server-card .active-marker{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);color:var(--success-color)}.profile-page .servers-section .server-card .active-marker i{font-size:1.2rem}.profile-page .servers-section .server-card .remove-server-button{background:var(--error-color);color:var(--text-light);border:none;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);cursor:pointer;font-size:.8rem;white-space:nowrap}.profile-page .servers-section .server-card .remove-server-button:hover{background:var(--error-color-dark)}.profile-page .servers-section .server-card .remove-server-button:disabled{opacity:.5;cursor:not-allowed}.profile-page .servers-section .all-servers h3{margin-bottom:var(--spacing-md);color:var(--text-secondary)}.profile-page .servers-section .all-servers .error-message{background:rgba(var(--error-color-rgb),.1);color:var(--error-color);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md)}.profile-page .servers-section .all-servers .loading-message{background:rgba(var(--primary-color-rgb),.1);color:var(--primary-color);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md)}.profile-page .servers-section .all-servers .servers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-md)}@media(max-width:576px){.profile-page .servers-section .all-servers .servers-grid{grid-template-columns:1fr}}.join-server-modal{width:100%;max-width:600px;max-height:80vh;overflow-y:auto;padding:var(--spacing-lg);background:var(--bg-layer1)}.join-server-modal h2{margin-bottom:1.5rem;text-align:center}.join-server-modal .invite-code-section,.join-server-modal .server-list-section{margin-bottom:2rem}.join-server-modal .invite-code-section h3,.join-server-modal .server-list-section h3{margin-bottom:.5rem}.join-server-modal .invite-code-section .section-description,.join-server-modal .server-list-section .section-description{margin-bottom:1rem;color:#ffffffb3;font-size:.9rem}.join-server-modal .input-group{display:flex;gap:.5rem}.join-server-modal .input-group input{flex:1;padding:.75rem;border-radius:4px;border:1px solid rgba(255,255,255,.2);background-color:#ffffff1a;color:#fff}.join-server-modal .input-group .join-button{padding:.75rem 1.5rem;border-radius:4px;background-color:var(--primary-color);color:#fff;border:none;cursor:pointer}.join-server-modal .input-group .join-button:hover{background-color:var(--primary-dark)}.join-server-modal .input-group .join-button:disabled{background-color:var(--gray-500);cursor:not-allowed}.join-server-modal .input-group .join-button.member{background-color:var(--success-color);cursor:default;opacity:.8}.join-server-modal .input-group .join-button.member:hover{background-color:var(--success-color)}.join-server-modal .input-group .join-button.pending{background-color:var(--warning-color);cursor:default}.join-server-modal .input-group .join-button.pending:hover{background-color:var(--warning-color)}.join-server-modal .server-list{margin-top:1rem}.join-server-modal .server-list .server-item{display:flex;align-items:center;padding:1rem;border-radius:8px;background-color:#ffffff1a;margin-bottom:.75rem}.join-server-modal .server-list .server-item .server-icon{width:48px;height:48px;border-radius:8px;overflow:hidden;margin-right:1rem;background-color:var(--secondary-color);display:flex;align-items:center;justify-content:center}.join-server-modal .server-list .server-item .server-icon img{width:100%;height:100%;object-fit:cover}.join-server-modal .server-list .server-item .server-icon .server-placeholder{font-weight:700;color:#fff}.join-server-modal .server-list .server-item .server-info{flex:1}.join-server-modal .server-list .server-item .server-info h4{margin:0 0 .25rem}.join-server-modal .server-list .server-item .server-info p{margin:0 0 .25rem;font-size:.9rem;color:#ffffffb3}.join-server-modal .server-list .server-item .server-info .member-count{font-size:.8rem;color:#ffffff80}.join-server-modal .server-list .server-item .join-button{padding:.5rem 1rem;border-radius:4px;background-color:var(--primary-color);color:#fff;border:none;cursor:pointer}.join-server-modal .server-list .server-item .join-button:hover{background-color:var(--primary-dark)}.join-server-modal .server-list .server-item .join-button:disabled{cursor:default}.join-server-modal .server-list .server-item .join-button.member{background-color:var(--success-color);opacity:.8}.join-server-modal .server-list .server-item .join-button.pending{background-color:var(--warning-color)}.create-server-modal{width:100%;max-width:500px}.create-server-modal form{display:flex;flex-direction:column;gap:var(--spacing-md)}.create-server-modal form .error-message{color:var(--error-color);background:rgba(var(--error-color-rgb),.1);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-md)}.create-server-modal form .form-group{display:flex;flex-direction:column;gap:8px}.create-server-modal form .form-group label{font-weight:500}.create-server-modal form .form-group input[type=text],.create-server-modal form .form-group input[type=number],.create-server-modal form .form-group textarea{padding:10px;border-radius:var(--border-radius-sm);border:1px solid var(--border-color);background:var(--bg-layer2);color:var(--text-primary)}.create-server-modal form .form-group .help-text{font-size:.8rem;color:var(--text-secondary)}.create-server-modal form .modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-md)}.upload-image-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.upload-image-modal .modal-content{background:#fff;border-radius:12px;padding:24px;width:90%;max-width:500px;box-shadow:0 4px 6px #0000001a}.upload-image-modal .modal-content .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.upload-image-modal .modal-content .modal-header h2{margin:0}.upload-image-modal .modal-content .modal-header .close-button{background:none;border:none;font-size:24px;cursor:pointer;padding:0;color:#666}.upload-image-modal .modal-content .modal-header .close-button:hover{color:#333}.upload-image-modal .modal-content .modal-body .upload-section{margin-bottom:20px}.upload-image-modal .modal-content .modal-body .editor-container{display:flex;justify-content:center;margin-bottom:20px}.upload-image-modal .modal-content .modal-body .scale-control{display:flex;align-items:center;gap:10px;margin-bottom:20px}.upload-image-modal .modal-content .modal-body .scale-control input[type=range]{flex:1}.upload-image-modal .modal-content .modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.change-password-form .error-message{color:var(--error-color);margin-bottom:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);background-color:#ff00001a}.change-password-form .form-group{margin-bottom:var(--spacing-md)}.change-password-form .form-group label{display:block;margin-bottom:var(--spacing-xs);color:var(--text-light)}.change-password-form .form-group input{width:100%;padding:var(--spacing-sm);border:1px solid var(--bg-layer2);border-radius:var(--border-radius-sm);background-color:var(--bg-layer1);color:var(--text-light)}.change-password-form .form-group input:focus{outline:none;border-color:var(--primary-color)}.change-password-form .form-group input::placeholder{color:var(--text-muted)}.delete-account-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.delete-account-form .warning-message{background-color:var(--color-danger-light);padding:var(--spacing-md);border-radius:var(--border-radius-md)}.delete-account-form .warning-message h3{color:var(--color-danger);margin-bottom:var(--spacing-sm)}.delete-account-form .warning-message p{color:var(--color-danger-dark);margin:0}.delete-account-form .confirm-input{display:flex;flex-direction:column;gap:var(--spacing-sm)}.delete-account-form .confirm-input label{font-weight:500}.delete-account-form .confirm-input input{padding:var(--spacing-sm);border:2px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:1rem}.delete-account-form .confirm-input input:focus{border-color:var(--color-danger);outline:none}.delete-account-form .modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end}.play-page{position:relative;min-height:100vh;padding:2rem;background:var(--bg-gradient);background-size:200rem 200rem}.play-page .play-container{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding-bottom:70px}.play-page .play-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.play-page .play-header .create-lobby-button{display:flex;align-items:center;gap:.5rem;padding:.8rem 1.5rem;background:linear-gradient(45deg,#2ecc71,#27ae60);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:transform .2s,box-shadow .2s}.play-page .play-header .create-lobby-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.play-page .play-header .create-lobby-button .icon{font-size:1.2rem;font-weight:700}.play-page .lobby-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.play-page .lobby-card{background:var(--bg-layer1);border-radius:12px;padding:1.5rem;box-shadow:0 2px 4px #0000000d;cursor:pointer;transition:transform .2s,box-shadow .2s}.play-page .lobby-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.play-page .lobby-card.user-in-lobby{border:2px solid var(--primary-color)}.play-page .lobby-card.user-in-lobby .join-button.rejoin{background-color:var(--primary-color)}.play-page .lobby-card.user-in-lobby .join-button.rejoin:hover{background-color:var(--primary-color-dark)}.play-page .lobby-card .lobby-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.play-page .lobby-card .lobby-header h2{font-size:1.5rem;color:var(--text-color-light)}.play-page .lobby-card .lobby-header .ranked-badge{font-size:1.5rem}.play-page .lobby-card .lobby-info{display:flex;gap:1rem;margin-bottom:1rem}.play-page .lobby-card .lobby-info>div{padding:.5rem 1rem;background:var(--bg-layer2);border-radius:20px;font-size:.9rem;color:var(--text-color-light)}.play-page .lobby-card .players-preview{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.play-page .lobby-card .join-button{width:100%;padding:.8rem;border:none;border-radius:6px;background:#2ecc71;color:#fff;font-size:1rem;cursor:pointer;transition:background .2s}.play-page .lobby-card .join-button:hover:not(.disabled){background:#27ae60}.play-page .lobby-card .join-button.disabled{background:#ccc;cursor:not-allowed}.play-page .lobby-card .join-button.rejoin{background-color:var(--primary-color)}.play-page .lobby-card .join-button.rejoin:hover{background-color:var(--primary-color-dark)}.play-page .no-lobby{text-align:center;padding:3rem;background:var(--bg-layer1);border-radius:12px;box-shadow:0 2px 4px #0000000d}.play-page .no-lobby p:first-child{font-size:1.2rem;color:#999;margin-bottom:.5rem}.play-page .no-lobby p:last-child{color:#666}.play-page .play-loading{display:flex;justify-content:center;align-items:center;min-height:50vh;font-size:1.2rem;color:#666}.play-page .play-error{text-align:center;color:#f44;padding:2rem}.play-page .title{font-family:var(--font-special);font-size:4rem;text-align:center;color:#fff;margin:var(--spacing-xl) 0;text-shadow:2px 2px 4px rgba(0,0,0,.3);letter-spacing:0em;text-shadow:-1px -1px 0 black,1px -1px 0 black,-1px 1px 0 black,1px 1px 0 black,2px 2px 4px rgba(0,0,0,.3)}@media(max-width:768px){.play-page{padding:1rem}.play-page .play-header{flex-direction:column;gap:1rem;text-align:center}.play-page .lobby-grid{grid-template-columns:1fr}}.lobby-page{position:relative;min-height:100vh;padding:2rem;background:var(--bg-dark);display:flex;justify-content:center;align-items:flex-start;background:var(--bg-gradient);background-size:200rem 200rem}.lobby-page .lobby-container{position:relative;z-index:1;background:var(--bg-layer1);border-radius:12px;padding:2rem;width:100%;max-width:1200px;box-shadow:0 4px 6px #0000001a}@media(max-width:768px){.lobby-page .lobby-container{padding:.5rem .5rem 1rem}}.lobby-page .lobby-header .lobby-info .settings-group{display:flex;background:#00000075;border-radius:20px;padding:.5rem;gap:.5rem;align-items:center}.lobby-page .lobby-header .lobby-info .settings-group .setting-button{padding:.5rem 1rem;border-radius:16px;border-style:none;background:transparent;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;color:var(--text-light)}.lobby-page .lobby-header .lobby-info .settings-group .setting-button.active{background:#1e3c72;color:#fff}.lobby-page .lobby-header .lobby-info .settings-group .setting-button:hover:not(.active):not(:disabled){background:var(--bg-layer3)}.lobby-page .lobby-header .lobby-info .settings-group .setting-button.disabled{color:#000}.lobby-page .lobby-header .lobby-info .settings-group .setting-button:disabled{cursor:not-allowed;position:relative}.lobby-page .lobby-header .lobby-info .settings-group .setting-button:disabled:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:16px;pointer-events:none}.lobby-page .lobby-header .lobby-info .settings-group.score-settings .setting-label{color:var(--text-secondary);font-size:.9rem;margin-right:.5rem}.lobby-page .lobby-header .lobby-info .settings-group.score-settings input{width:50px;background:var(--bg-layer3);border:none;border-radius:12px;padding:.5rem;color:var(--text-primary);text-align:center;font-weight:500}.lobby-page .lobby-header .lobby-info .settings-group.score-settings input::-webkit-inner-spin-button,.lobby-page .lobby-header .lobby-info .settings-group.score-settings input::-webkit-outer-spin-button{opacity:0}.lobby-page .lobby-header .lobby-info .settings-group.score-settings input:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary)}.lobby-page .lobby-header .lobby-info span{padding:.5rem 1rem;border-radius:20px;background:var(--bg-layer2);font-weight:500;transition:all .2s ease;-webkit-user-select:none;user-select:none}.lobby-page .lobby-header .lobby-info .player-count{background:var(--bg-layer3);color:var(--text-primary)}.lobby-page .lobby-header .lobby-info .game-mode-chip,.lobby-page .lobby-header .lobby-info .match-type-chip{cursor:pointer}.lobby-page .lobby-header .lobby-info .game-mode-chip.disabled,.lobby-page .lobby-header .lobby-info .match-type-chip.disabled{opacity:.5;cursor:not-allowed}.lobby-page .lobby-header .lobby-info .score-settings{display:flex;gap:.5rem}.lobby-page .lobby-header .lobby-info .score-settings .score-chip,.lobby-page .lobby-header .lobby-info .score-settings .time-chip{display:flex;align-items:center;gap:.5rem;background:var(--bg-layer3)}.lobby-page .lobby-header .lobby-info .score-settings .score-chip input,.lobby-page .lobby-header .lobby-info .score-settings .time-chip input{width:40px;background:transparent;border:none;color:var(--text-primary);text-align:right;font-weight:500;padding:0}.lobby-page .lobby-header .lobby-info .score-settings .score-chip input::-webkit-inner-spin-button,.lobby-page .lobby-header .lobby-info .score-settings .score-chip input::-webkit-outer-spin-button,.lobby-page .lobby-header .lobby-info .score-settings .time-chip input::-webkit-inner-spin-button,.lobby-page .lobby-header .lobby-info .score-settings .time-chip input::-webkit-outer-spin-button{opacity:0}.lobby-page .lobby-header .lobby-info .score-settings .score-chip input:focus,.lobby-page .lobby-header .lobby-info .score-settings .time-chip input:focus{outline:none}.lobby-page .lobby-header .ranked-badge{background:#676767;color:#000}@media(max-width:768px){.lobby-page .lobby-header .lobby-info{align-items:stretch}.lobby-page .lobby-header .lobby-info .settings-group{justify-content:center}}@media(max-width:768px){.lobby-page .teams-container{margin:1rem 0}}.lobby-page .teams-container .team h2{margin-bottom:1rem;color:var(--text-secondary)}.lobby-page .teams-container .team .team-players{width:100%}.lobby-page .teams-container .team .team-players .team-players-container{width:100%;display:flex;flex-direction:column;align-items:center;background:#00000075;padding:1rem;border-radius:1rem;min-height:16.5rem;gap:.5rem}.lobby-page .teams-container .team .team-players .team-players-container .player-slot{width:100%}@media(min-width:768px){.lobby-page .teams-container .team .team-players .team-players-container{min-height:22.5rem}}.lobby-page .teams-container .team .team-players .team-players-container.one-v-one{min-height:7.25rem}.lobby-page .teams-container .empty-player-slot{background:#f8f8f8;border:2px dashed #ddd;border-radius:8px;height:100px;display:flex;align-items:center;justify-content:center}.lobby-page .teams-container .empty-player-slot .empty-text{color:#999;font-size:1.1rem}@media(max-width:768px){.lobby-page .teams-container{flex-direction:column}.lobby-page .teams-container .vs-divider{align-self:center}}.lobby-page .lobby-controls{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.lobby-page .lobby-controls .lobby-button{padding:.8rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.lobby-page .lobby-controls .lobby-button.leave{background:#f44;color:#fff}.lobby-page .lobby-controls .lobby-button.leave:hover{background:#f22}.lobby-page .lobby-controls .lobby-button.shuffle{background:var(--color-secondary)}.lobby-page .lobby-loading{text-align:center;padding:2rem;font-size:1.2rem;color:#666}.lobby-page .lobby-error{text-align:center;padding:3rem;background:var(--bg-layer1);border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:500px;margin:2rem auto}.lobby-page .lobby-error h2{color:var(--color-error);margin-bottom:1rem;font-size:1.8rem}.lobby-page .lobby-error p{color:var(--text-secondary);margin-bottom:2rem;font-size:1.1rem;line-height:1.5}.lobby-page .lobby-error .lobby-button{padding:.8rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;background:var(--color-primary);color:#fff}.lobby-page .lobby-error .lobby-button:hover{background:var(--color-primary-dark);transform:translateY(-2px)}.lobby-page .lobby-error .lobby-button:active{transform:translateY(0)}.settings-group span.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.score-settings input:disabled{opacity:.5;cursor:not-allowed}.team-players{display:flex;flex-direction:column;gap:10px;align-items:center}.swap-roles-button{display:flex;align-items:center;justify-content:center;background:var(--bg-layer3);border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:all .2s ease;width:32px;height:32px;margin:8px}.swap-roles-button svg{width:32px;height:32px;color:#fff}.swap-roles-button:hover{background:var(--bg-layer4);transform:scale(1.1)}.swap-roles-button:active{transform:scale(.95)}.team-players-container.shuffling{transition:all .5s ease-in-out}.team-players-container .player-slot.shuffle-animation{animation:shuffle-bounce .8s ease-in-out}@keyframes shuffle-bounce{0%{transform:translateY(0);opacity:1}25%{transform:translateY(-20px);opacity:.7}50%{transform:translateY(10px);opacity:.5}75%{transform:translateY(-5px);opacity:.7}to{transform:translateY(0);opacity:1}}@font-face{font-family:GogoPosterpunch;src:url(/assets/fonts/GoGoPosterPunch.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.slot-machine{display:flex;flex-direction:column;gap:2rem;border-radius:var(--border-radius-lg);perspective:1000px}.slot-machine .team{margin-bottom:1.5rem}.slot-machine .team h3{text-align:center;margin-bottom:1rem}.slot-machine .team .team-reels{display:flex;gap:1rem;justify-content:center}.slot-machine .slot-reel{position:relative;width:160px;height:160px;overflow:hidden;background:var(--color-background);border-radius:var(--border-radius-md);transform:rotateX(10deg);box-shadow:0 10px 20px #0003}.slot-machine .slot-reel:before,.slot-machine .slot-reel:after{content:"";position:absolute;left:0;right:0;height:40%;z-index:2;pointer-events:none}.slot-machine .slot-reel:before{top:0;background:linear-gradient(to bottom,#00000080,#0000)}.slot-machine .slot-reel:after{bottom:0;background:linear-gradient(to top,#00000080,#0000)}.slot-machine .slot-reel.spinning .reel-strip{animation:spin .2s linear infinite}.slot-machine .slot-reel.stopping .reel-strip{animation:slowDownAndStop 1.5s cubic-bezier(.23,1,.32,1) forwards}.slot-machine .slot-reel .reel-strip{position:relative;display:flex;flex-direction:column;will-change:transform}.slot-machine .slot-reel .slot-item{flex-shrink:0;height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem}.slot-machine .slot-reel .slot-item img{width:80px;height:80px;border-radius:50%;object-fit:cover;margin-bottom:.5rem}.slot-machine .slot-reel .slot-item.final-player .player-name{font-weight:700;margin-bottom:.25rem}.slot-machine .slot-reel .slot-item.final-player .player-role{font-size:.875rem;color:var(--color-text-secondary)}.slot-machine .vs-divider{text-align:center;font-size:1.5rem;font-weight:700;color:var(--color-text-secondary)}@keyframes spin{0%{transform:translateY(0)}to{transform:translateY(-160px)}}@keyframes slowDownAndStop{0%{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translateY(0)}60%{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translateY(-40px)}75%{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translateY(-15px)}85%{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translateY(-5px)}92%{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translateY(-2px)}to{transform:translateY(0);animation-timing-function:cubic-bezier(.215,.61,.355,1)}}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.slot-reel.spinning .spinning-faces .slot-item img{filter:blur(1px)}@font-face{font-family:GogoPosterpunch;src:url(/assets/fonts/GoGoPosterPunch.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.match-page{position:relative;min-height:100vh;width:100%;background:var(--bg-gradient);background-size:200rem 200rem}.match-page .match-container{position:relative;z-index:1;display:flex;flex-direction:column;height:100vh;background:var(--bg-dark);overflow-y:auto;overflow-x:hidden;box-sizing:border-box;padding-bottom:70px}@media(min-width:768px){.match-page .match-container{padding-bottom:80px}}.match-page .match-header{position:sticky;top:0;z-index:5;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);background-color:var(--bg-dark);gap:var(--spacing-sm)}@media(min-width:768px){.match-page .match-header{padding:var(--spacing-md)}}.match-page .match-header .match-type-tag{display:flex;align-items:center}.match-page .match-header .match-type-tag .tag{padding:4px 12px;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.match-page .match-header .match-type-tag .tag.ranked{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;box-shadow:0 2px 8px #4caf504d}.match-page .match-header .match-type-tag .tag.unranked{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);color:var(--text-secondary);border:1px solid rgba(255,255,255,.2)}.match-page .match-header .match-time{font-size:1.2rem;font-weight:700;flex:1;text-align:center;position:absolute;left:50%;transform:translate(-50%)}@media(min-width:768px){.match-page .match-header .match-time{font-size:1.5rem}}.match-page .match-header .match-time.completed{color:var(--text-secondary);font-style:italic}.match-page .match-header .menu-button{min-width:unset;width:36px;height:36px;padding:0}@media(min-width:768px){.match-page .match-header .menu-button{width:40px;height:40px}}.match-page .teams-container{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;justify-content:center;gap:.5rem;width:100%;max-width:100%;margin:0 auto;padding:0 .5rem;padding-bottom:70px}@media(min-width:576px){.match-page .teams-container{gap:.75rem;padding:0 1rem}}@media(min-width:768px){.match-page .teams-container{gap:1rem;max-width:800px;padding:0 1.5rem;padding-bottom:80px}}.match-page .team-section{display:flex;flex-direction:column;justify-content:space-between;align-items:center;width:100%;background:var(--bg-layer1);border-radius:var(--border-radius-sm);box-sizing:border-box;padding:.5rem}@media(min-width:768px){.match-page .team-section{border-radius:var(--border-radius-md)}}.match-page .team-section.team-one .players{order:1}.match-page .team-section.team-one .team-score{order:2}.match-page .team-section.team-two{padding-top:0}.match-page .team-section.team-two .team-score{order:1}.match-page .team-section.team-two .players{order:2}.match-page .team-section .players{flex:1;display:flex;flex-direction:column;gap:.25rem;width:100%}@media(min-width:768px){.match-page .team-section .players{gap:.5rem}}.match-page .team-section .players .player-wrapper{width:100%}.match-page .team-section .team-score{font-size:2.5rem;font-weight:700;min-width:50px;text-align:center;margin:.25rem}@media(min-width:768px){.match-page .team-section .team-score{font-size:3rem;min-width:60px;margin:.5rem}}.match-page .vs-divider{font-size:1.5rem;font-weight:700;color:#666;text-align:center}@media(min-width:768px){.match-page .vs-divider{font-size:2rem}}.match-page .control-buttons{position:fixed;z-index:10;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:.75rem 1rem;margin-top:0;background-color:var(--bg-dark);box-shadow:0 -2px 10px #0003;opacity:1;transition:opacity .3s ease}@media(min-width:768px){.match-page .control-buttons{padding:1rem 2rem}}.match-page .control-buttons.hidden{opacity:0;pointer-events:none}.match-page .control-buttons .whoops-button{flex:1;height:50px;font-size:1rem;font-weight:700;margin-right:.5rem}@media(min-width:768px){.match-page .control-buttons .whoops-button{height:60px;font-size:1.2rem;margin-right:1rem}}.match-page .control-buttons .goal-button{flex:1;height:50px;font-size:1.25rem;font-weight:700;background-color:var(--bg-layer1)}@media(min-width:768px){.match-page .control-buttons .goal-button{height:60px;font-size:1.5rem}}.match-page .game-over-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:3;background:#000000b3;display:flex;justify-content:center;align-items:center;padding:1rem}.match-page .game-over-modal .modal-content{background:var(--bg-modal);padding:1.5rem;border-radius:8px;text-align:center;max-width:100%;width:100%}@media(min-width:576px){.match-page .game-over-modal .modal-content{padding:2rem;max-width:400px;width:90%}}.match-page .game-over-modal .modal-content h2{margin-bottom:.75rem;color:var(--text-color-light);font-size:1.5rem}@media(min-width:768px){.match-page .game-over-modal .modal-content h2{margin-bottom:1rem;font-size:1.75rem}}.match-page .game-over-modal .modal-content p{margin:.5rem 0;font-size:1rem}@media(min-width:768px){.match-page .game-over-modal .modal-content p{font-size:1.2rem}}.match-page .game-over-modal .modal-content .modal-buttons{margin-top:1.5rem;display:flex;flex-direction:column;gap:.5rem}@media(min-width:576px){.match-page .game-over-modal .modal-content .modal-buttons{flex-direction:row;gap:1rem;margin-top:2rem;justify-content:center}}.match-page .game-over-modal .modal-content .modal-buttons .button{min-width:100%}@media(min-width:576px){.match-page .game-over-modal .modal-content .modal-buttons .button{min-width:120px}}.match-page .loading,.match-page .error-message{position:relative;z-index:2;padding:1rem;text-align:center}@media(min-width:768px){.match-page .loading,.match-page .error-message{padding:2rem}}.line-graph{margin-bottom:20px;width:100%}.line-graph h3{color:#fff;margin-bottom:15px;font-size:1.2rem}.line-graph .chart-container{background:#2a2a2a;border-radius:4px;padding:15px;width:100%;position:relative}.line-graph .rating-label{background:var(--bg-layer2, rgba(42, 42, 42, .95));color:var(--text-light, #fff);padding:4px 8px;border-radius:var(--border-radius-sm, 4px);font-size:var(--font-size-sm, .875rem);font-weight:600;white-space:nowrap;box-shadow:0 2px 8px #0000004d;border:1px solid rgba(255,255,255,.1);pointer-events:none}.line-graph .match-card-tooltip{max-width:400px;z-index:1000;pointer-events:none}.line-graph .match-card-tooltip .match-card{box-shadow:0 4px 12px #0000004d}.win-loss-bar{width:100%;margin-top:1rem}.win-loss-bar .bar-container{display:flex;height:24px;border-radius:12px;overflow:hidden;background:#2a2a2a;margin-bottom:.5rem}.win-loss-bar .win-bar{background:#4caf50;transition:width .3s ease;display:flex;align-items:center;justify-content:center;min-width:0;position:relative}.win-loss-bar .win-bar .label{color:#fff;font-size:.8rem;font-weight:500;white-space:nowrap;opacity:0;transition:opacity .2s ease}.win-loss-bar .win-bar:hover .label{opacity:1}.win-loss-bar .loss-bar{background:#f44336;transition:width .3s ease;display:flex;align-items:center;justify-content:center;min-width:0;position:relative}.win-loss-bar .loss-bar .label{color:#fff;font-size:.8rem;font-weight:500;white-space:nowrap;opacity:0;transition:opacity .2s ease}.win-loss-bar .loss-bar:hover .label{opacity:1}.win-loss-bar .no-games-bar{width:100%;background:#666;display:flex;align-items:center;justify-content:center;height:100%}.win-loss-bar .no-games-bar .label{color:#fff;font-size:.8rem;font-weight:500}.win-loss-bar .numbers{display:flex;justify-content:space-between;font-size:.8rem;color:#888}.win-loss-bar .numbers .wins{color:#4caf50}.win-loss-bar .numbers .losses{color:#f44336}.win-loss-bar .numbers .no-games{color:#666;width:100%;text-align:center}.win-streak{display:flex;gap:.2rem;align-items:center;justify-content:center;min-height:2rem}.win-streak .win-letter{font-family:Anton,sans-serif;color:#4caf50;font-size:1.5rem;text-shadow:0 2px 4px rgba(0,0,0,.2);animation:popIn .3s ease-out forwards;opacity:0;transform:scale(.5)}.win-streak .win-letter:nth-child(1){animation-delay:.1s}.win-streak .win-letter:nth-child(2){animation-delay:.2s}.win-streak .win-letter:nth-child(3){animation-delay:.3s}.win-streak .win-letter:nth-child(4){animation-delay:.4s}.win-streak .win-letter:nth-child(5){animation-delay:.5s}.win-streak .win-letter:nth-child(6){animation-delay:.6s}.win-streak .win-letter:nth-child(7){animation-delay:.7s}.win-streak .win-letter:nth-child(8){animation-delay:.8s}.win-streak .win-letter:nth-child(9){animation-delay:.9s}.win-streak .win-letter:nth-child(10){animation-delay:1s}.win-streak .no-streak{color:#666;font-size:.9rem;font-style:italic}.lose-streak{display:flex;gap:.2rem;align-items:center;justify-content:center;min-height:2rem}.lose-streak .lose-letter{font-family:Anton,sans-serif;color:#f44336;font-size:1.5rem;text-shadow:0 2px 4px rgba(0,0,0,.2);animation:popIn .3s ease-out forwards;opacity:0;transform:scale(.5)}.lose-streak .lose-letter:nth-child(1){animation-delay:.1s}.lose-streak .lose-letter:nth-child(2){animation-delay:.2s}.lose-streak .lose-letter:nth-child(3){animation-delay:.3s}.lose-streak .lose-letter:nth-child(4){animation-delay:.4s}.lose-streak .lose-letter:nth-child(5){animation-delay:.5s}.lose-streak .lose-letter:nth-child(6){animation-delay:.6s}.lose-streak .lose-letter:nth-child(7){animation-delay:.7s}.lose-streak .lose-letter:nth-child(8){animation-delay:.8s}.lose-streak .lose-letter:nth-child(9){animation-delay:.9s}.lose-streak .lose-letter:nth-child(10){animation-delay:1s}.lose-streak .no-streak{color:#666;font-size:.9rem;font-style:italic}@keyframes popIn{0%{opacity:0;transform:scale(.5)}70%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.versus-stats{background:var(--bg-layer2, rgba(42, 42, 42, .8));border-radius:var(--border-radius-md, 12px);padding:var(--spacing-md, 1.5rem);margin-bottom:var(--spacing-md, 1.5rem);border:1px solid rgba(255,255,255,.1)}.versus-stats .versus-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md, 1.5rem);flex-wrap:wrap;gap:var(--spacing-sm, 1rem)}.versus-stats .versus-header h3{margin:0;font-size:var(--font-size-lg, 1.25rem);font-weight:600;color:var(--text-light, #fff)}.versus-stats .game-mode-selector{display:flex;gap:var(--spacing-xs, .5rem)}.versus-stats .game-mode-selector button{padding:var(--spacing-xs, .5rem) var(--spacing-sm, 1rem);background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:var(--border-radius-sm, 8px);color:var(--text-secondary, rgba(255, 255, 255, .6));font-size:var(--font-size-sm, .875rem);font-weight:500;cursor:pointer;transition:all .2s ease}.versus-stats .game-mode-selector button:hover{background:#ffffff26;color:var(--text-light, #fff)}.versus-stats .game-mode-selector button.active{background:var(--primary-color, #2196f3);border-color:var(--primary-color, #2196f3);color:var(--text-light, #fff)}.versus-stats .no-stats{text-align:center;padding:var(--spacing-md, 1.5rem);color:var(--text-secondary, rgba(255, 255, 255, .6))}.versus-stats .no-stats p{margin:0}.versus-stats .stats-content{display:flex;flex-direction:column;gap:var(--spacing-md, 1.5rem)}.versus-stats .overall-stats{display:flex;justify-content:space-around;gap:var(--spacing-md, 1.5rem);padding:var(--spacing-sm, 1rem);background:#ffffff0d;border-radius:var(--border-radius-sm, 8px)}.versus-stats .stat-row{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs, .5rem)}.versus-stats .stat-row .stat-label{font-size:var(--font-size-sm, .875rem);color:var(--text-secondary, rgba(255, 255, 255, .6))}.versus-stats .stat-row .stat-value{font-size:var(--font-size-xl, 1.5rem);font-weight:700;color:var(--text-light, #fff)}.versus-stats .stat-row .stat-value.win{color:var(--success-color, #4CAF50)}.versus-stats .win-loss-bar{width:100%}.versus-stats .win-loss-bar .bar-container{display:flex;height:28px;border-radius:14px;overflow:hidden;background:#2a2a2a;margin-bottom:var(--spacing-xs, .5rem)}.versus-stats .win-loss-bar .win-bar{background:var(--success-color, #4CAF50);transition:width .3s ease;display:flex;align-items:center;justify-content:center;min-width:0;position:relative}.versus-stats .win-loss-bar .win-bar .label{color:#fff;font-size:var(--font-size-xs, .75rem);font-weight:600;white-space:nowrap}.versus-stats .win-loss-bar .draw-bar{background:var(--warning-color, #ff9800);transition:width .3s ease;display:flex;align-items:center;justify-content:center;min-width:0;position:relative}.versus-stats .win-loss-bar .draw-bar .label{color:#fff;font-size:var(--font-size-xs, .75rem);font-weight:600;white-space:nowrap}.versus-stats .win-loss-bar .loss-bar{background:var(--error-color, #f44336);transition:width .3s ease;display:flex;align-items:center;justify-content:center;min-width:0;position:relative}.versus-stats .win-loss-bar .loss-bar .label{color:#fff;font-size:var(--font-size-xs, .75rem);font-weight:600;white-space:nowrap}.versus-stats .win-loss-bar .numbers{display:flex;justify-content:space-between;font-size:var(--font-size-sm, .875rem);gap:var(--spacing-xs, .5rem)}.versus-stats .win-loss-bar .numbers .wins{color:var(--success-color, #4CAF50);font-weight:600}.versus-stats .win-loss-bar .numbers .draws{color:var(--warning-color, #ff9800);font-weight:600}.versus-stats .win-loss-bar .numbers .losses{color:var(--error-color, #f44336);font-weight:600}.versus-stats .breakdown{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md, 1.5rem);margin-top:var(--spacing-sm, 1rem)}.versus-stats .breakdown-section{padding:var(--spacing-sm, 1rem);background:#ffffff0d;border-radius:var(--border-radius-sm, 8px)}.versus-stats .breakdown-section h4{margin:0 0 var(--spacing-sm, 1rem) 0;font-size:var(--font-size-md, 1rem);font-weight:600;color:var(--text-light, #fff);text-align:center}.versus-stats .breakdown-stats{display:flex;flex-direction:column;gap:var(--spacing-xs, .5rem)}.versus-stats .breakdown-stat{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs, .5rem) 0}.versus-stats .breakdown-stat .breakdown-label{font-size:var(--font-size-sm, .875rem);color:var(--text-secondary, rgba(255, 255, 255, .6))}.versus-stats .breakdown-stat .breakdown-value{font-size:var(--font-size-md, 1rem);font-weight:600;color:var(--text-light, #fff)}.versus-stats .breakdown-stat .breakdown-value.win{color:var(--success-color, #4CAF50)}.versus-stats .breakdown-stat .breakdown-value.loss{color:var(--error-color, #f44336)}@media(max-width:768px){.versus-stats .breakdown{grid-template-columns:1fr}.versus-stats .overall-stats{flex-direction:column;gap:var(--spacing-sm, 1rem)}}.tabs{width:100%}.tabs .tabs-header{display:flex;gap:var(--spacing-xs, .5rem);border-bottom:2px solid rgba(255,255,255,.1);margin-bottom:var(--spacing-md, 1.5rem);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tabs .tabs-header::-webkit-scrollbar{display:none}.tabs .tabs-header .tab-button{padding:var(--spacing-sm, 1rem) var(--spacing-md, 1.5rem);background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary, rgba(255, 255, 255, .6));font-size:var(--font-size-md, 1rem);font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;position:relative;margin-bottom:-2px}.tabs .tabs-header .tab-button:hover{color:var(--text-light, #fff);border-bottom-color:#fff3}.tabs .tabs-header .tab-button.active{color:var(--primary-color, #2196f3);border-bottom-color:var(--primary-color, #2196f3);font-weight:600}.tabs .tabs-content{width:100%;min-height:200px}.player-page{max-width:var(--max-width-xl);margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-xl)}.player-page .player-header{margin:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.player-page .player-content{display:flex;flex-direction:column;gap:var(--spacing-xl);padding:var(--spacing-sm)}.player-page .player-content h2{color:var(--text-light);font-size:var(--font-size-xl);margin-bottom:var(--spacing-md)}.player-page .player-content .versus-stats-container{display:flex;flex-direction:column;gap:var(--spacing-lg)}.player-page .player-content .versus-stats-container .versus-players{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-layer1, rgba(42, 42, 42, .8));border-radius:var(--border-radius-lg, 12px);flex-wrap:nowrap}.player-page .player-content .versus-stats-container .versus-players .versus-divider{display:flex;align-items:center;justify-content:center;min-width:60px;flex-shrink:0}.player-page .player-content .versus-stats-container .versus-players .versus-divider span{font-size:var(--font-size-lg, 1.25rem);font-weight:700;color:var(--primary-color, #2196f3);text-transform:uppercase;letter-spacing:2px}.player-page .player-content .stats-section{padding:var(--spacing-sm);gap:var(--spacing-md)}.player-page .player-content .stats-section .section-header{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.player-page .player-content .stats-section .section-header h2{margin:0}.player-page .player-content .stats-section .stats-container{display:flex;background:var(--bg-layer1);border-radius:var(--border-radius-lg);padding:var(--spacing-md);flex-direction:column;gap:var(--spacing-md);width:100%}.player-page .player-content .stats-section .stats-container .overall-stats{display:flex;justify-content:space-around;gap:var(--spacing-md, 1.5rem);padding:var(--spacing-sm, 1rem);background:#ffffff0d;border-radius:var(--border-radius-sm, 8px)}.player-page .player-content .stats-section .stats-container .overall-stats .stat-row{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs, .5rem)}.player-page .player-content .stats-section .stats-container .overall-stats .stat-row .stat-label{font-size:var(--font-size-sm, .875rem);color:var(--text-secondary, rgba(255, 255, 255, .6))}.player-page .player-content .stats-section .stats-container .overall-stats .stat-row .stat-value{font-size:var(--font-size-xl, 1.5rem);font-weight:700;color:var(--text-light, #fff)}.player-page .player-content .stats-section .stats-container .overall-stats .stat-row .stat-value.win{color:var(--success-color, #4CAF50)}.player-page .player-content .stats-section .stats-container .overall-stats .stat-row .stat-value.loss{color:var(--error-color, #f44336)}.player-page .player-content .stats-section .stats-container .rating-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.player-page .player-content .stats-section .stats-container .rating-header h2{margin:0}.player-page .player-content .stats-section .stats-container .rating-header .timeframe-selector{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.player-page .player-content .stats-section .stats-container .rating-header .timeframe-selector button{padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-layer1);border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius-sm);color:var(--text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all .2s ease}.player-page .player-content .stats-section .stats-container .rating-header .timeframe-selector button:hover{background:var(--bg-layer2);border-color:#fff3}.player-page .player-content .stats-section .stats-container .rating-header .timeframe-selector button.active{background:var(--primary-color);border-color:var(--primary-color);color:var(--text-light)}.player-page .player-content .stats-section .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.player-page .player-content .stats-section .stats-grid .stat-card{background:var(--bg-layer1);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);text-align:center;box-shadow:var(--shadow-sm);transition:transform .2s ease}.player-page .player-content .stats-section .stats-grid .stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.player-page .player-content .stats-section .stats-grid .stat-card h3{color:var(--text-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm)}.player-page .player-content .stats-section .stats-grid .stat-card .stat-number{color:var(--text-light);font-size:var(--font-size-2xl);font-weight:600}.player-page .player-content .matches-section .matches-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding:var(--spacing-sm)}.player-page .player-content .matches-section .matches-header .matches-count{color:var(--text-muted);font-size:var(--font-size-sm)}.player-page .player-content .matches-section .matches-list{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.player-page .player-content .matches-section .pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding:var(--spacing-md) 0}.player-page .player-content .matches-section .pagination .pagination-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--primary-color);color:var(--text-light);border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:background-color .2s ease}.player-page .player-content .matches-section .pagination .pagination-button:hover:not(:disabled){background:var(--secondary-color)}.player-page .player-content .matches-section .pagination .pagination-button:disabled{background:var(--text-muted);cursor:not-allowed}.player-page .player-content .matches-section .pagination .page-info{color:var(--text-primary);font-size:var(--font-size-sm)}.player-page .player-content .matches-section .no-matches{text-align:center;padding:var(--spacing-xl);color:var(--text-muted);background:var(--bg-layer1);border-radius:var(--border-radius-lg)}@media(max-width:480px){.player-page .stats-section .stats-grid{grid-template-columns:1fr}.player-page .player-content .versus-stats-container .versus-players{gap:var(--spacing-sm);padding:var(--spacing-sm)}.player-page .player-content .versus-stats-container .versus-players .versus-divider{min-width:40px}.player-page .player-content .versus-stats-container .versus-players .versus-divider span{font-size:var(--font-size-md, 1rem)}}@media(min-width:768px){.player-page{padding:var(--spacing-lg)}.player-page .stats-section .stats-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.player-page{max-width:1024px}}.forgot-password-container{display:flex;justify-content:center;align-items:center;height:100vh;background-color:#f5f5f5;color:#222}.forgot-password-container .forgot-password-box{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;width:100%;max-width:400px}.forgot-password-container .forgot-password-box h1{margin-bottom:1rem;text-align:center}.forgot-password-container .forgot-password-box p{margin-bottom:1.5rem;text-align:center}.forgot-password-container .forgot-password-box .forgot-password-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.forgot-password-container .forgot-password-box .forgot-password-form label{color:#222}.forgot-password-container .forgot-password-box .forgot-password-form .submit-button{margin-top:1rem}.forgot-password-container .forgot-password-box .links{text-align:center;margin-top:1rem}.forgot-password-container .forgot-password-box .links a{color:#3498db;text-decoration:none}.forgot-password-container .forgot-password-box .links a:hover{text-decoration:underline}.reset-password-container{display:flex;justify-content:center;align-items:center;height:100vh;background-color:#f5f5f5;color:#222}.reset-password-container .reset-password-box{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;width:100%;max-width:400px}.reset-password-container .reset-password-box label{color:#222}.reset-password-container .reset-password-box h1{margin-bottom:1rem;text-align:center}.reset-password-container .reset-password-box p{margin-bottom:1.5rem;text-align:center}.reset-password-container .reset-password-box .reset-password-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.reset-password-container .reset-password-box .reset-password-form .submit-button{margin-top:1rem}.reset-password-container .reset-password-box a{color:#3498db;text-decoration:none}.reset-password-container .reset-password-box a:hover{text-decoration:underline}.admin-sidebar{width:280px;background-color:#2c3e50;color:#fff;display:flex;flex-direction:column;overflow-y:auto;transition:transform .3s ease;z-index:1000}.admin-sidebar.mobile{position:fixed;left:0;top:0;bottom:0;height:100vh;transform:translate(-100%)}.admin-sidebar.mobile.open{transform:translate(0)}.admin-sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:999}.admin-sidebar-toggle{position:fixed;top:70px;left:15px;z-index:1001;background-color:#2c3e50;color:#fff;border:none;padding:10px;border-radius:4px;cursor:pointer;display:none}@media(max-width:768px){.admin-sidebar-toggle{display:block}}.admin-sidebar-toggle:hover{background-color:#34495e}.admin-sidebar-header{padding:20px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center}.admin-sidebar-header h2{margin:0;font-size:20px;font-weight:600}.admin-sidebar-close{background:none;border:none;color:#fff;cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center}.admin-sidebar-close:hover{opacity:.8}.admin-navigation{flex:1;padding:10px 0}.nav-section-title{padding:15px 20px 10px;font-size:12px;font-weight:600;text-transform:uppercase;color:#fff9;letter-spacing:1px;margin:0}.server-section-header{margin:0;padding:0}.server-section-header .nav-section-title{padding-bottom:10px}.server-search-container{position:relative;margin:0 20px 10px;display:flex;align-items:center;visibility:visible;opacity:1;width:calc(100% - 40px);border-color:#222}.server-search-container .search-icon{position:absolute;left:8px;color:#222;font-size:18px;pointer-events:none;z-index:1}.server-search-container .server-search-input{width:100%;padding:8px 30px 8px 32px;background-color:#fff3!important;border:1px solid rgba(255,255,255,.4)!important;border-radius:4px;color:#222!important;font-size:14px;transition:all .2s ease;visibility:visible!important;opacity:1!important;display:block!important}.server-search-container .server-search-input::placeholder{color:#565656b3!important}.server-search-container .server-search-input:focus{outline:none;background-color:#ffffff4d!important;border-color:#fff9!important}.server-search-container .server-search-clear{position:absolute;right:4px;background:none;border:none;color:#fffc;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;z-index:1}.server-search-container .server-search-clear:hover{background-color:#fff3;color:#fff}.server-search-container .server-search-clear i{font-size:16px}.nav-divider{height:1px;background-color:#ffffff1a;margin:10px 20px}.admin-nav-item{display:flex;align-items:center;padding:12px 20px;color:#fffc;text-decoration:none;transition:all .2s ease;cursor:pointer;border-left:3px solid transparent}.admin-nav-item i{margin-right:12px;font-size:20px;flex-shrink:0}.admin-nav-item:hover{background-color:#ffffff1a;color:#fff}.admin-nav-item.active{background-color:#ffffff26;color:#fff;font-weight:500}.admin-nav-item.disabled{opacity:.5;cursor:not-allowed}.admin-nav-item.loading{justify-content:center;opacity:.7}.admin-nav-item.loading .rotating{animation:spin 1s linear infinite}.server-nav-group.active .server-nav-item{background-color:#7b7b7b1a}.server-nav-group.favorite .server-nav-item .server-name:before{content:"★ ";color:#f39c12;margin-right:4px}.server-nav-item{font-weight:500;display:flex;align-items:center;justify-content:space-between;position:relative}.server-nav-item .server-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#222}.server-nav-item .material-icons{color:#222}.server-nav-item .favorite-button{background:none;border:none;color:#ffffff80;cursor:pointer;padding:4px;margin-left:8px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;opacity:0}.server-nav-item .favorite-button i{font-size:18px}.server-nav-item .favorite-button:hover{color:#f39c12;background-color:#f39c121a}.server-nav-item:hover .favorite-button{opacity:1}.server-nav-item .favorite-button i[class*=star]:not([class*=border]){color:#f39c12;opacity:1}.server-subnav{padding-left:20px}.server-subnav .subnav-item{padding-left:50px;font-size:14px}.server-subnav .subnav-item i{font-size:18px}@media(max-width:768px){.admin-sidebar{width:260px}}.admin-page{display:flex;flex-direction:column;min-height:100vh;background-color:#f5f7fa;color:#1a1a1a}.admin-container{display:flex;flex:1;padding:20px;gap:20px;max-width:1600px;margin:0 auto;width:100%}.admin-sidebar{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;padding:20px;min-width:220px;height:fit-content}.admin-sidebar h2{margin-top:0;padding-bottom:15px;border-bottom:1px solid #eaeaea;font-weight:600;color:#1a1a1a}@media(max-width:768px){.admin-sidebar{min-width:180px}}@media(max-width:576px){.admin-sidebar{display:none}}.server-selector{margin:15px 0}.server-selector label{display:block;margin-bottom:8px;font-size:14px;color:#333;font-weight:500}.server-selector .server-select{width:100%;padding:10px;border-radius:6px;border:1px solid #eaeaea;background-color:#f8f9fd;font-size:14px;color:#1a1a1a;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 10px center;background-size:16px}.server-selector .server-select:focus{outline:none;border-color:#4a66fa;box-shadow:0 0 0 3px #4a66fa1a}.server-selector .server-select option{padding:10px}.admin-navigation{display:flex;flex-direction:column;gap:10px}.admin-navigation .nav-section-title{font-size:12px;text-transform:uppercase;color:#777;margin:8px 0 5px;padding:0 5px;font-weight:600;letter-spacing:.5px}.admin-navigation .nav-divider{height:1px;background-color:#e5e8f5;margin:10px 0}.admin-nav-item{padding:12px 15px;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease;color:#1a1a1a}.admin-nav-item:hover{background-color:#f0f0f0;color:#000}.admin-nav-item.active{background-color:#4a66fa;color:#fff;font-weight:600}.admin-content{flex:1;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;padding:30px;overflow-y:auto}.admin-content h1{margin-top:0;margin-bottom:20px;font-weight:600;color:#1a1a1a}.admin-context{margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid #eaeaea}.admin-context .admin-context-info h3{margin:0 0 5px;font-size:18px;color:#1a1a1a;font-weight:600}.admin-context .admin-context-info .admin-context-description{margin:0;font-size:14px;color:#333}.admin-context .admin-context-info .admin-context-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600}.admin-context .admin-context-info .admin-context-badge.owner-badge{background-color:#4a66fa;color:#fff}.admin-section{max-width:100%}.admin-section p{color:#1a1a1a}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;margin-top:30px;margin-bottom:40px}.admin-stat-card{background-color:#f8f9fd;border-radius:8px;padding:20px;box-shadow:0 2px 5px #00000008;border:1px solid #edf0fa}.admin-stat-card h3{margin-top:0;margin-bottom:10px;font-size:14px;color:#333;font-weight:500}.admin-stat-card .stat-number{font-size:24px;font-weight:600;color:#1a1a1a;margin:0}.admin-action-section{margin-top:30px}.admin-action-section h3{margin-bottom:20px;font-weight:500;color:#1a1a1a}.admin-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px}.admin-action-button{background-color:#f0f2fa;border:1px solid #e5e8f5;border-radius:6px;padding:14px;cursor:pointer;font-weight:500;transition:all .2s ease;text-align:center;color:#1a1a1a}.admin-action-button:hover{background-color:#e8ebf7;transform:translateY(-2px);color:#000}.admin-action-button:active{transform:translateY(0)}.mobile-server-selector-container{position:sticky;top:0;z-index:10;background-color:#fff;padding:15px;margin-bottom:10px;box-shadow:0 2px 10px #0000000d;display:none}@media(max-width:576px){.mobile-server-selector-container{display:block}}.mobile-server-selector-container .server-selector{margin:0}.admin-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:1;visibility:visible;transition:all .3s ease}.admin-modal{background:#fff!important;border-radius:8px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 30px #0000001a;transform:translateY(20px);transition:transform .3s ease;color:#333!important}.admin-modal-overlay.active .admin-modal{transform:translateY(0)}.admin-page .modal-overlay .modal-content,.admin-container .modal-overlay .modal-content{background:#fff!important;color:#333!important}.admin-page .modal-overlay .modal-content .modal-header h2,.admin-page .modal-overlay .modal-content .modal-header h3,.admin-container .modal-overlay .modal-content .modal-header h2,.admin-container .modal-overlay .modal-content .modal-header h3{color:#333!important}.admin-page .modal-overlay .modal-content .modal-header .close-button,.admin-page .modal-overlay .modal-content .modal-header .modal-close,.admin-container .modal-overlay .modal-content .modal-header .close-button,.admin-container .modal-overlay .modal-content .modal-header .modal-close{color:#666!important}.admin-page .modal-overlay .modal-content .modal-header .close-button:hover,.admin-page .modal-overlay .modal-content .modal-header .modal-close:hover,.admin-container .modal-overlay .modal-content .modal-header .close-button:hover,.admin-container .modal-overlay .modal-content .modal-header .modal-close:hover,.admin-page .modal-overlay .modal-content .modal-body,.admin-container .modal-overlay .modal-content .modal-body{color:#333!important}.admin-modal-header{padding:20px;border-bottom:1px solid #eaeaea;display:flex;justify-content:space-between;align-items:center}.admin-modal-header h2,.admin-modal-header h3{margin:0;font-weight:600;color:#1a1a1a}.admin-modal-header .admin-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666;line-height:1;padding:0}.admin-modal-header .admin-modal-close:hover{color:#333}.admin-modal-body{padding:20px}.admin-modal-body p{margin:0 0 12px;color:#333}.admin-modal-body p.admin-modal-warning{color:#dc3545;font-weight:500;margin-top:12px}.admin-modal-footer{padding:20px;border-top:1px solid #eaeaea;display:flex;justify-content:flex-end;gap:12px}.admin-form .admin-form-group{margin-bottom:20px}.admin-form .admin-form-group label{display:block;margin-bottom:8px;font-weight:500;color:#1a1a1a}.admin-form .admin-form-group input[type=text],.admin-form .admin-form-group input[type=number],.admin-form .admin-form-group textarea{width:100%;padding:12px;border-radius:6px;border:1px solid #ddd;font-size:14px;color:#1a1a1a}.admin-form .admin-form-group input[type=text]:focus,.admin-form .admin-form-group input[type=number]:focus,.admin-form .admin-form-group textarea:focus{outline:none;border-color:#4a66fa;box-shadow:0 0 0 3px #4a66fa1a}.admin-form .admin-form-group input[type=file]{width:100%;padding:10px 0}.admin-form .admin-form-group small{display:block;margin-top:5px;color:#666;font-size:12px}.admin-form .admin-form-group.checkbox{display:flex;align-items:center}.admin-form .admin-form-group.checkbox label{display:flex;align-items:center;cursor:pointer}.admin-form .admin-form-group.checkbox label input[type=checkbox]{margin-right:10px;width:16px;height:16px}.admin-form .admin-form-error{background-color:#fff2f2;color:#e53e3e;padding:12px;border-radius:6px;margin-bottom:20px;font-size:14px}.admin-form .admin-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.admin-button{padding:12px 18px;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.admin-button.primary{background-color:#4a66fa;color:#fff}.admin-button.primary:hover{background-color:#3a56ea}.admin-button.primary:active{background-color:#2a46da}.admin-button.primary:disabled{background-color:#7286f5;color:#fff;opacity:.8}.admin-button.secondary{background-color:#fff;color:#1a1a1a;border-color:#ccc}.admin-button.secondary:hover{background-color:#f2f2f2}.admin-button.secondary:active{background-color:#e6e6e6}.admin-button.secondary:disabled{color:#777;border-color:#ddd}.admin-button.danger{background-color:#dc3545;color:#fff}.admin-button.danger:hover{background-color:#c82333}.admin-button.danger:active{background-color:#bd2130}.admin-button.danger:disabled{background-color:#e4606d;opacity:.8}.admin-button:disabled{cursor:not-allowed}.admin-actions-top{display:flex;justify-content:flex-end;margin-bottom:20px}.admin-servers-list,.admin-users-list{margin-top:20px}.admin-table{width:100%;border-collapse:collapse}.admin-table th{text-align:left;padding:10px;background-color:#f5f5f5;border-bottom:1px solid #e0e0e0;font-weight:600;color:#1a1a1a}.admin-table td{padding:10px;border-bottom:1px solid #e0e0e0;color:#1a1a1a}.admin-table td .user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;display:flex;justify-content:center;align-items:center}.admin-table td .user-avatar img{width:100%;height:100%;object-fit:cover}.admin-table td .user-avatar .avatar-placeholder{width:100%;height:100%;background-color:#4a66fa;color:#fff;display:flex;justify-content:center;align-items:center;font-weight:600;font-size:16px}.admin-table .admin-table-actions{display:flex;gap:5px}.admin-table .admin-action-icon{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px}.admin-table .admin-action-icon:hover{background-color:#f0f0f0}.admin-table .admin-action-icon.approve{color:#4caf50}.admin-table .admin-action-icon.reject{color:#f44336}.admin-table .admin-action-icon.edit{color:#2196f3}.admin-table .admin-action-icon.delete{color:#f44336}.admin-table tr.status-success{background-color:#4caf500d}.admin-table tr.status-failed{background-color:#f443360d}.admin-table tr.status-blocked{background-color:#2121210d}.status-badge{display:inline-block;padding:4px 8px;border-radius:12px;font-weight:500;font-size:12px;text-align:center;min-width:80px}.status-badge.success{background-color:#4caf5033;color:#1b5e20}.status-badge.failed{background-color:#f4433633;color:#b71c1c}.status-badge.blocked{background-color:#21212133;color:#000}.admin-filter-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:10px;background-color:#f9f9f9;border-radius:6px}.admin-filter-controls .admin-filter-item{display:flex;align-items:center;gap:10px}.admin-filter-controls .admin-filter-item label{font-weight:500;color:#1a1a1a}.admin-filter-controls .admin-filter-item .admin-select{padding:6px 10px;border:1px solid #ddd;border-radius:4px;background-color:#fff}.admin-pagination{display:flex;justify-content:center;align-items:center;margin-top:20px;gap:10px}.admin-pagination .admin-pagination-btn{display:flex;justify-content:center;align-items:center;width:32px;height:32px;border:1px solid #e0e0e0;border-radius:4px;background-color:#fff;cursor:pointer}.admin-pagination .admin-pagination-btn:hover:not(:disabled){background-color:#f0f0f0}.admin-pagination .admin-pagination-btn:disabled{opacity:.5;cursor:not-allowed}.admin-pagination .admin-pagination-info{font-size:14px;color:#1a1a1a}@media(max-width:768px){.admin-container{padding:10px;flex-direction:column}.admin-content{padding:20px}.admin-stats-grid,.admin-actions{grid-template-columns:repeat(2,1fr)}.admin-table th,.admin-table td{padding:8px}.admin-search-container .admin-search-input{max-width:100%}}@media(max-width:576px){.admin-stats-grid,.admin-actions{grid-template-columns:1fr}.admin-modal{max-width:90%}.admin-table{display:block;overflow-x:auto}.user-avatar{width:30px;height:30px}}.server-admin-section{margin-bottom:40px}.server-admin-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.server-admin-section .section-header h2{font-size:1.5rem;font-weight:600;color:#333}.server-list-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;overflow:hidden}.server-list-container .server-header{padding:15px 20px;background-color:#f7f9fc;border-bottom:1px solid #eaedf3;display:flex;justify-content:space-between;align-items:center}.server-list-container .server-header h3{font-size:1.1rem;font-weight:600;color:#333;margin:0}.server-list-container .server-header .server-actions{display:flex;gap:10px}.server-list-container .server-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;padding:20px}.server-list-container .server-stats .stat-card{background-color:#f7f9fc;border-radius:6px;padding:15px}.server-list-container .server-stats .stat-card .stat-label{font-size:.85rem;color:#777;margin-bottom:5px}.server-list-container .server-stats .stat-card .stat-value{font-size:1.5rem;font-weight:600;color:#333}.server-detail-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;padding:20px;margin-bottom:20px}.server-detail-card .server-name{font-size:1.2rem;font-weight:600;color:#333;margin-bottom:15px}.server-detail-card .server-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.server-detail-card .server-info-grid .info-item .info-label{font-size:.85rem;color:#777;margin-bottom:5px}.server-detail-card .server-info-grid .info-item .info-value{font-size:1rem;color:#333}.server-detail-card .server-status{display:inline-block;padding:5px 10px;border-radius:4px;font-size:.85rem;font-weight:600}.server-detail-card .server-status.online{background-color:#d0f5e6;color:#0a6e42}.server-detail-card .server-status.offline{background-color:#fde3e3;color:#c52727}.server-detail-card .server-status.maintenance{background-color:#fff1d0;color:#b57d0a}.server-form .server-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media(max-width:768px){.server-form .server-form-grid{grid-template-columns:1fr}}.server-form .server-config-section{margin-top:25px;padding-top:20px;border-top:1px solid #eaedf3}.server-form .server-config-section h4{font-size:1rem;font-weight:600;margin-bottom:15px}@media(max-width:992px){.server-stats{grid-template-columns:repeat(2,1fr)!important}}@media(max-width:576px){.server-stats,.server-info-grid{grid-template-columns:1fr!important}}.server-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:20px}.server-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;overflow:hidden;border:1px solid #eaedf3;display:flex;flex-direction:column;padding:1rem;gap:1rem}.server-card h2{color:#1a1a1a}.server-card .server-image{height:120px;background-color:#f5f7fa;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #eaedf3}.server-card .server-image img{max-height:100%;max-width:100%;object-fit:contain}.server-card .server-image .server-placeholder{width:60px;height:60px;background-color:#4a66fa;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:600}.server-card .server-details{padding:15px}.server-card .server-details .server-name{margin:0 0 10px;font-size:1.1rem;font-weight:600;color:#333}.server-card .server-details .server-owner,.server-card .server-details .server-status{margin:0 0 8px;font-size:14px;color:#555}.server-card .server-details .status-active{color:#0a6e42;font-weight:600}.server-card .server-details .status-inactive{color:#777;font-weight:600}.server-card .server-details .server-actions{display:flex;gap:10px;margin-top:15px}.server-card .server-details .server-actions button{padding:8px 12px;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.server-card .server-details .server-actions button.edit-button{background-color:#f0f2fa;color:#3b52c9;border-color:#dfe4f8}.server-card .server-details .server-actions button.edit-button:hover{background-color:#e8ebf7;color:#2a3e9f}.server-card .server-details .server-actions button.delete-button{background-color:#fde3e3;color:#c52727;border-color:#f8d1d1}.server-card .server-details .server-actions button.delete-button:hover{background-color:#fcd3d3;color:#b51e1e}.empty-message{padding:30px;text-align:center;color:#555;background-color:#f5f5f5;border-radius:6px;margin-top:20px;border:1px solid #e0e0e0;font-weight:500}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2{font-size:1.5rem;font-weight:600;color:#333;margin:0}.section-header .section-actions{display:flex;gap:10px}.section-header .section-actions .refresh-button,.section-header .section-actions .add-button{padding:8px 12px;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;border:1px solid transparent}.section-header .section-actions .refresh-button i,.section-header .section-actions .add-button i{font-size:14px}.section-header .section-actions .refresh-button{background-color:#f0f2fa;color:#3b52c9;border-color:#dfe4f8}.section-header .section-actions .refresh-button:hover{background-color:#e8ebf7;color:#2a3e9f}.section-header .section-actions .refresh-button:disabled{opacity:.7;cursor:not-allowed}.section-header .section-actions .refresh-button .loading-spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .75s linear infinite}.section-header .section-actions .add-button{background-color:#4a66fa;color:#fff}.section-header .section-actions .add-button:hover{background-color:#3a56ea}@keyframes spin{to{transform:rotate(360deg)}}.overview-container{display:flex;flex-direction:column;gap:30px;margin-top:20px}.overview-section{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px;margin-bottom:30px}.overview-section.full-width{width:100%}.overview-section h2{font-size:1.4rem;margin-bottom:15px;color:#333;border-bottom:2px solid #f0f0f0;padding-bottom:10px}.overview-section .admin-table{max-height:400px;overflow-y:auto}@media(max-width:768px){.overview-container{gap:15px}.overview-section{padding:15px}.overview-section h2{font-size:1.2rem}.overview-section .admin-table{font-size:.9rem}}.material-icons{vertical-align:middle;margin-right:5px}.material-icons.rotating{animation:spin 1.5s linear infinite}.join-requests-section{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color)}.join-requests-section h2{display:flex;align-items:center;font-size:1.4rem;margin-bottom:1rem;color:var(--text-primary)}.join-requests-section .batch-actions{display:flex;gap:1rem;margin-bottom:1rem}.join-requests-section .batch-actions button{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:14px}.join-requests-section .batch-actions button i{font-size:18px}.admin-action-icon.approve{color:var(--success-color, #28a745)}.admin-action-icon.approve:hover{background-color:#28a7451a}.admin-action-icon.reject{color:var(--danger-color, #dc3545)}.admin-action-icon.reject:hover{background-color:#dc35451a}.server-details-section{margin-top:2rem;margin-bottom:2rem}.server-details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem;margin-top:1rem}.server-detail-card{background-color:#f8f9fa;border-radius:8px;padding:1.5rem;box-shadow:0 2px 4px #0000001a}.server-detail-card h3{margin-top:0;margin-bottom:1rem;font-size:1.2rem;color:#333;border-bottom:1px solid #e0e0e0;padding-bottom:.5rem}.server-detail-card ul{list-style-type:none;padding:0;margin:0}.server-detail-card li{padding:.5rem 0;border-bottom:1px solid #f0f0f0}.server-detail-card li:last-child{border-bottom:none}.server-detail-card strong{font-weight:600;margin-right:.5rem}.server-actions-section{margin-top:2rem}.server-actions-section h2{margin-bottom:1rem;font-size:1.4rem;color:#333}.no-server-selected{background-color:#f9f9f9;border-radius:8px;padding:2rem;text-align:center;margin:2rem 0;border:1px dashed #ddd}.no-server-selected h1{margin-top:0;color:#555}.no-server-selected p{color:#777;margin-bottom:0}.status-badge,.visibility-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:500;margin-left:.5rem}.status-badge.active{background-color:#4caf5033;color:#1b5e20}.status-badge.inactive{background-color:#9e9e9e33;color:#424242}.visibility-badge.public{background-color:#d1ecf1;color:#0c5460}.visibility-badge.private{background-color:#f8f9fa;color:#5a6268}@media(max-width:768px){.server-details-grid{grid-template-columns:1fr}}.servers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:25px;margin-top:20px;width:100%}.server-card{background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;overflow:hidden;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;height:100%}.server-card:hover{transform:translateY(-3px);box-shadow:0 6px 12px #00000026}.server-card .server-card-header{background-color:#f5f7fa;padding:16px 20px;border-bottom:1px solid #eaedf3;display:flex;justify-content:space-between;align-items:center}.server-card .server-card-header h2{margin:0;font-size:1.2rem;font-weight:600;color:#1a1a1a;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.server-card .server-card-header .server-status{display:flex;gap:8px}.server-card .server-card-header .server-status .status-badge,.server-card .server-card-header .server-status .visibility-badge{font-size:.7rem;padding:3px 8px;border-radius:12px;font-weight:500}.server-card .server-card-header .server-status .status-badge.active{background-color:#e5f7ed;color:#0a9e50}.server-card .server-card-header .server-status .status-badge.inactive{background-color:#f8e8e8;color:#e53e3e}.server-card .server-card-header .server-status .visibility-badge.public{background-color:#ebf3ff;color:#3182ce}.server-card .server-card-header .server-status .visibility-badge.private{background-color:#f0e9ff;color:#7e57c2}.server-card .server-card-content{padding:20px;flex-grow:1;display:flex;flex-direction:column}.server-card .server-card-content .server-info-section{margin-bottom:20px}.server-card .server-card-content .server-info-section p{margin:8px 0;color:#1a1a1a;font-size:.9rem}.server-card .server-card-content .server-info-section p strong{color:#000;font-weight:600}.server-card .server-card-content .server-actions{margin-top:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.server-card .server-card-content .server-actions .admin-button{padding:8px 12px;font-size:.85rem;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background-color:#f1f5f9;color:#1a1a1a;cursor:pointer;transition:background-color .2s,color .2s}.server-card .server-card-content .server-actions .admin-button i{margin-right:5px;font-size:1rem}.server-card .server-card-content .server-actions .admin-button:hover{background-color:#e2e8f0;color:#000}.server-card .server-card-content .server-actions .admin-button.danger{background-color:#fee2e2;color:#b91c1c}.server-card .server-card-content .server-actions .admin-button.danger:hover{background-color:#fecaca}@media(max-width:480px){.server-card .server-card-content .server-actions{grid-template-columns:1fr}}.server-card.add-server{background-color:#f7fafc;border:2px dashed #cbd5e0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:20px}.server-card.add-server:hover{border-color:#4a5568;background-color:#f0f5fa}.server-card.add-server .add-server-content{text-align:center}.server-card.add-server .add-server-content i{font-size:2.5rem;color:#4a5568;margin-bottom:15px}.server-card.add-server .add-server-content h3{margin:0 0 5px;color:#2d3748}.server-card.add-server .add-server-content p{margin:0;color:#718096;font-size:.9rem}@media(max-width:768px){.servers-grid{grid-template-columns:1fr}}.no-data-message{padding:30px;text-align:center;color:#1a1a1a;background-color:#f5f5f5;border-radius:6px;margin-top:20px;border:1px solid #e0e0e0}.loading-indicator,.error-message{padding:20px;text-align:center;border-radius:6px;margin:20px 0;font-weight:500}.loading-indicator{background-color:#f0f3f8;color:#444;border:1px solid #e4e9f2}.error-message{background-color:#fde9e9;color:#c52727;border:1px solid #f8d1d1}.admin-search-container{margin:20px 0;position:relative}.admin-search-container .admin-search-input{width:100%;max-width:400px;padding:12px 12px 12px 40px;border-radius:6px;border:1px solid #ddd;font-size:14px;color:#1a1a1a}.admin-search-container .admin-search-input:focus{outline:none;border-color:#4a66fa;box-shadow:0 0 0 3px #4a66fa1a}.admin-search-container:before{content:"search";font-family:Material Icons;position:absolute;left:15px;top:50%;transform:translateY(-50%);color:#999}.server-actions{display:flex;gap:10px;align-items:center}.server-actions .edit-button{background-color:#2196f3;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;transition:background-color .2s}.server-actions .edit-button:hover{background-color:#1976d2}.server-actions .delete-button{background-color:#f44336;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;transition:background-color .2s}.server-actions .delete-button:hover{background-color:#d32f2f}.form-group label{display:block;margin-bottom:8px;font-weight:500}.form-group input[type=text],.form-group textarea{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-group input[type=text]:focus,.form-group textarea:focus{outline:none;border-color:#2196f3}.form-group textarea{min-height:100px;resize:vertical}.form-group input[type=checkbox]{margin-right:8px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.modal-actions .cancel-button{background-color:#9e9e9e;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;transition:background-color .2s}.modal-actions .cancel-button:hover{background-color:#757575}.modal-actions .submit-button{background-color:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;transition:background-color .2s}.modal-actions .submit-button:hover{background-color:#388e3c}.modal-actions .submit-button:disabled{background-color:#a5d6a7;cursor:not-allowed}.admin-page{min-height:100vh;display:flex;flex-direction:column}.admin-container{display:flex;flex:1;overflow:hidden}.admin-content{flex:1;padding:20px;overflow-y:auto;background-color:#f5f5f5}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:40px;text-align:center}.error-container p{margin-bottom:20px;font-size:18px;color:#666}@media(max-width:768px){.admin-container{flex-direction:column}.admin-content{padding:15px}}.statistics-tab{padding:20px;max-width:1400px;margin:0 auto}.statistics-header{margin-bottom:30px}.statistics-header h1{margin:0 0 8px;color:#2c3e50;font-size:32px;font-weight:600}.statistics-header .subtitle{color:#666;font-size:16px;margin:0}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;display:flex;align-items:flex-start;gap:16px;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.stat-card .stat-icon{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card .stat-icon i{font-size:28px}.stat-card .stat-content{flex:1}.stat-card .stat-content h3{margin:0 0 8px;color:#666;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat-card .stat-content .stat-value{margin:0 0 8px;color:#2c3e50;font-size:36px;font-weight:700;line-height:1}.stat-card .stat-content .stat-change{margin:0;font-size:14px;font-weight:500}.stat-card .stat-content .stat-change.positive{color:#27ae60}.stat-card .stat-content .stat-change.negative{color:#e74c3c}.stat-card .stat-content .stat-description{margin:8px 0 0;color:#999;font-size:13px}@media(max-width:768px){.statistics-grid{grid-template-columns:1fr}.statistics-header h1{font-size:24px}}.user-edit-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.user-edit-modal-content{background:#fff!important;border-radius:8px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d;color:#333!important}.user-edit-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e9ecef}.user-edit-modal-header h3{margin:0;color:#2c3e50;font-size:20px;font-weight:600}.user-edit-modal-close{background:none;border:none;color:#999;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.user-edit-modal-close:hover{background-color:#f0f0f0;color:#333}.admin-form{padding:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#495057;font-weight:500;font-size:14px}.form-group input{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s ease}.form-group input:focus{outline:none;border-color:#3498db}.error-message{padding:12px;background-color:#ffebee;color:#c62828;border-radius:6px;margin-bottom:20px;font-size:14px}.user-edit-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.admin-button{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.admin-button.primary{background-color:#3498db;color:#fff}.admin-button.primary:hover:not(:disabled){background-color:#2980b9}.admin-button.secondary{background-color:#e9ecef;color:#495057}.admin-button.secondary:hover:not(:disabled){background-color:#dee2e6}.admin-button.secondary.small{padding:8px 16px;font-size:13px}.admin-button:disabled{opacity:.6;cursor:not-allowed}.profile-picture-group .profile-picture-container{display:flex;align-items:center;gap:16px}.profile-picture-group .profile-picture-preview{width:80px;height:80px;border-radius:50%;overflow:hidden;flex-shrink:0;border:2px solid #e9ecef;position:relative}.profile-picture-group .profile-picture-preview .profile-picture-preview-img{width:100%;height:100%;object-fit:cover}.profile-picture-group .profile-picture-preview .profile-picture-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:600}.image-editor-section{margin:20px 0;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.image-editor-section .editor-container{display:flex;justify-content:center;margin-bottom:16px}.image-editor-section .scale-control{display:flex;align-items:center;gap:12px;margin-bottom:16px}.image-editor-section .scale-control label{font-size:14px;color:#495057;font-weight:500;min-width:50px}.image-editor-section .scale-control input[type=range]{flex:1;height:6px;border-radius:3px;background:#ddd;outline:none;-webkit-appearance:none}.image-editor-section .scale-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#3498db;cursor:pointer}.image-editor-section .scale-control input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#3498db;cursor:pointer;border:none}.image-editor-section .image-editor-actions{display:flex;justify-content:flex-end;gap:12px}.modal-overlay .modal-content.delete-modal{background:#fff!important;color:#333!important}.modal-overlay .modal-content.delete-modal .modal-header h3{color:#333!important}.modal-overlay .modal-content.delete-modal .modal-header .modal-close{color:#666!important}.modal-overlay .modal-content.delete-modal .modal-header .modal-close:hover{color:#333!important}.delete-modal{background:#fff!important;color:#333!important}.delete-modal .modal-body{padding:20px;text-align:center}.delete-modal .modal-body .warning-icon{margin-bottom:16px}.delete-modal .modal-body .warning-icon i{font-size:64px;color:#f39c12}.delete-modal .modal-body p{margin:12px 0;color:#333!important;font-size:16px}.delete-modal .modal-body p.user-name{font-weight:600;font-size:18px;color:#2c3e50!important}.delete-modal .modal-body p.warning-text{color:#e74c3c!important;font-weight:500}.delete-modal .admin-button.danger{background-color:#e74c3c;color:#fff}.delete-modal .admin-button.danger:hover:not(:disabled){background-color:#c0392b}.link-account-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.link-account-modal{background:#fff!important;border-radius:8px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000001a;color:#333!important}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.modal-header h2{margin:0;font-size:20px;color:#2c3e50}.modal-header .close-button{background:none;border:none;cursor:pointer;color:#666;padding:4px;display:flex;align-items:center;justify-content:center}.modal-content{padding:20px;overflow-y:auto;flex:1}.selected-user-info{margin-bottom:24px;padding:16px;background:#f5f5f5;border-radius:6px}.selected-user-info h3{margin:0 0 8px;font-size:14px;color:#666;font-weight:600}.selected-user-info p{margin:0;color:#2c3e50}.selected-user-info p .auth0-id{display:block;margin-top:4px;font-size:12px;color:#666;font-family:monospace}.linkable-users-section h3{margin:0 0 16px;font-size:16px;color:#2c3e50}.search-container{position:relative;margin-bottom:16px}.search-container .material-icons{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#999;pointer-events:none}.search-container .search-input{width:100%;padding:10px 12px 10px 40px;border:1px solid #ddd;border-radius:6px;font-size:14px}.search-container .search-input:focus{outline:none;border-color:#3498db}.error-message{padding:12px;background:#fee;color:#c33;border-radius:6px;margin-bottom:16px;font-size:14px}.loading,.no-results{padding:40px;text-align:center;color:#666}.users-list{max-height:300px;overflow-y:auto;border:1px solid #e0e0e0;border-radius:6px}.user-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s}.user-item:hover{background-color:#f9f9f9}.user-item:last-child{border-bottom:none}.user-item.selected{background-color:#e3f2fd}.user-item .user-info{flex:1}.user-item .user-info .user-name{font-weight:600;color:#2c3e50;margin-bottom:4px}.user-item .user-info .user-email{font-size:14px;color:#666;margin-bottom:2px}.user-item .user-info .auth0-id{font-size:12px;color:#999;font-family:monospace}.user-item .check-icon{color:#3498db;margin-left:12px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px;border-top:1px solid #e0e0e0}.admin-button{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.admin-button.secondary{background:#f0f0f0;color:#333}.admin-button.secondary:hover:not(:disabled){background:#e0e0e0}.admin-button.primary{background:#3498db;color:#fff}.admin-button.primary:hover:not(:disabled){background:#2980b9}.admin-button:disabled{opacity:.5;cursor:not-allowed}.merge-user-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.merge-user-modal{background:#fff!important;border-radius:8px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000004d;color:#333!important;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0}.modal-header h2{margin:0;font-size:24px;font-weight:600;color:#333}.modal-header .close-button{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s}.modal-header .close-button:hover{color:#333}.modal-header .close-button i{font-size:24px}.merge-info{display:flex;align-items:center;gap:20px;margin-bottom:32px;padding:24px 24px 0;background:#f5f5f5;border-radius:8px}.merge-info .info-box{flex:1;padding:16px;border-radius:6px;background:#fff;border:2px solid #e0e0e0}.merge-info .info-box.keep-user{border-color:#4caf50;background:#f1f8f4}.merge-info .info-box.merge-user{border-color:#ff9800;background:#fff8f0}.merge-info .info-box h3{margin:0 0 12px;font-size:14px;font-weight:600;color:#666;text-transform:uppercase}.merge-info .info-box .user-display{display:flex;align-items:center;gap:12px}.merge-info .info-box .user-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}.merge-info .info-box .user-details{flex:1}.merge-info .info-box .user-details .user-name{font-size:16px;margin-bottom:4px;color:#333}.merge-info .info-box .user-details .user-email{font-size:14px;color:#666;margin-bottom:4px}.merge-info .info-box .user-details .user-id{font-size:12px;color:#999}.merge-info .info-box .placeholder{color:#999;font-style:italic;padding:12px 0}.merge-info .merge-arrow{color:#666;display:flex;align-items:center}.merge-info .merge-arrow i{font-size:32px}.users-section{margin-bottom:24px;padding:0 24px;overflow-y:auto;flex:1}.users-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#333}.users-section .search-container{position:relative;margin-bottom:16px}.users-section .search-container i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#999}.users-section .search-container .search-input{width:100%;padding:10px 12px 10px 40px;border:1px solid #ddd;border-radius:4px;font-size:14px}.users-section .search-container .search-input:focus{outline:none;border-color:#2196f3}.users-section .users-list{max-height:300px;overflow-y:auto;border:1px solid #e0e0e0;border-radius:4px}.users-section .user-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s}.users-section .user-item:hover{background-color:#f5f5f5}.users-section .user-item:last-child{border-bottom:none}.users-section .user-item.selected{background-color:#e3f2fd;border-left:3px solid #2196f3}.users-section .user-item .user-info{display:flex;align-items:center;gap:12px;flex:1}.users-section .user-item .user-avatar-small{width:32px;height:32px;border-radius:50%;object-fit:cover}.users-section .user-item .user-details{flex:1}.users-section .user-item .user-details .user-name{font-size:14px;font-weight:500;color:#333;margin-bottom:2px}.users-section .user-item .user-details .user-email{font-size:12px;color:#666}.users-section .user-item .check-icon{color:#2196f3;font-size:24px}.users-section .loading,.users-section .no-results{padding:24px;text-align:center;color:#999}.users-section .error-message{padding:12px;background:#ffebee;color:#c62828;border-radius:4px;margin-bottom:16px;font-size:14px}.merge-warning{display:flex;gap:12px;padding:16px 24px;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;margin:0 24px 24px}.merge-warning i{color:#ff9800;font-size:24px;flex-shrink:0}.merge-warning p{margin:0;font-size:14px;color:#856404;line-height:1.5}.merge-warning p strong{font-weight:600}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e0e0e0}.modal-footer .admin-button{padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.modal-footer .admin-button:disabled{opacity:.5;cursor:not-allowed}.modal-footer .admin-button.secondary{background:#f5f5f5;color:#333}.modal-footer .admin-button.secondary:hover:not(:disabled){background:#e0e0e0}.modal-footer .admin-button.primary{background:#2196f3;color:#fff}.modal-footer .admin-button.primary:hover:not(:disabled){background:#1976d2}.modal-footer .admin-button.primary.danger{background:#f44336}.modal-footer .admin-button.primary.danger:hover:not(:disabled){background:#d32f2f}.users-tab{padding:20px;max-width:1400px;margin:0 auto}.users-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.users-header h1{margin:0 0 8px;color:#2c3e50;font-size:32px;font-weight:600}.users-header .subtitle{color:#666;font-size:16px;margin:0}.users-header .header-actions{display:flex;gap:12px}.users-filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px;flex-wrap:wrap}.users-filters .search-container{position:relative;flex:1;min-width:300px;display:flex;align-items:center}.users-filters .search-container .material-icons{position:absolute;left:12px;color:#999;pointer-events:none}.users-filters .search-container .search-input{width:100%;padding:10px 40px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s ease}.users-filters .search-container .search-input:focus{outline:none;border-color:#3498db}.users-filters .search-container .search-clear{position:absolute;right:8px;background:none;border:none;color:#999;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.users-filters .search-container .search-clear:hover{background-color:#f0f0f0;color:#333}.users-filters .users-count{color:#666;font-size:14px;white-space:nowrap}.users-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto;overflow-y:visible;position:relative}.admin-table{width:100%;border-collapse:separate;border-spacing:0;min-width:800px}.admin-table thead th{padding:12px 16px;text-align:left;font-weight:600;color:#495057;font-size:14px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.admin-table thead th:first-child{position:sticky;left:0;z-index:10;background-color:#f8f9fa;border-right:2px solid #e9ecef;box-shadow:2px 0 4px #0000001a}.admin-table tbody td{padding:16px;color:#333;font-size:14px;white-space:nowrap}.admin-table tbody td:first-child{position:sticky;left:0;z-index:9;background-color:#fff;border-right:2px solid #e9ecef;box-shadow:2px 0 4px #0000001a;min-width:200px}.admin-table tbody tr:hover td:first-child{background-color:#f8f9fa}.user-name-cell{display:flex;align-items:center;gap:12px}.user-name-cell .user-avatar-wrapper{position:relative;flex-shrink:0}.user-name-cell .user-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid #e9ecef;display:block}.user-name-cell .user-avatar-placeholder{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;border:2px solid #e9ecef}.user-name-cell .user-name{font-weight:500}.roles-cell{display:flex;flex-wrap:wrap;gap:6px}.role-badge{display:inline-block;padding:4px 8px;background-color:#e9ecef;color:#495057;border-radius:4px;font-size:12px;font-weight:500;text-transform:capitalize}.action-buttons{display:flex;gap:8px}.action-button{background:none;border:none;padding:6px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.action-button i{font-size:18px}.action-button.link{color:#3498db}.action-button.link:hover{background-color:#e3f2fd}.action-button.edit{color:#3498db}.action-button.edit:hover{background-color:#e3f2fd}.action-button.delete{color:#e74c3c}.action-button.delete:hover{background-color:#ffebee}@media(max-width:768px){.users-header{flex-direction:column;gap:16px}.users-filters{flex-direction:column;align-items:stretch}.admin-table{font-size:12px}.admin-table th,.admin-table td{padding:8px}}.servers-tab{padding:20px;max-width:1400px;margin:0 auto}.servers-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.servers-header h1{margin:0 0 8px;color:#2c3e50;font-size:32px;font-weight:600}.servers-header .subtitle{color:#666;font-size:16px;margin:0}.servers-header .header-actions{display:flex;gap:12px}.servers-filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px;flex-wrap:wrap}.servers-filters .search-container{position:relative;flex:1;min-width:300px;display:flex;align-items:center}.servers-filters .search-container .material-icons{position:absolute;left:12px;color:#999;pointer-events:none}.servers-filters .search-container .search-input{width:100%;padding:10px 40px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s ease}.servers-filters .search-container .search-input:focus{outline:none;border-color:#3498db}.servers-filters .search-container .search-clear{position:absolute;right:8px;background:none;border:none;color:#999;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.servers-filters .search-container .search-clear:hover{background-color:#f0f0f0;color:#333}.servers-filters .filter-group{display:flex;align-items:center;gap:8px}.servers-filters .filter-group label{color:#666;font-size:14px;font-weight:500}.servers-filters .filter-group .status-filter{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s ease}.servers-filters .filter-group .status-filter:focus{outline:none;border-color:#3498db}.servers-filters .servers-count{color:#666;font-size:14px;white-space:nowrap}.servers-list{display:flex;flex-direction:column;gap:16px}.server-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;transition:all .3s ease;cursor:pointer;display:flex;flex-direction:row;align-items:stretch}.server-card:hover{box-shadow:0 4px 12px #00000026;transform:translate(4px)}.server-image-container{position:relative;width:200px;min-width:200px;height:auto;background:linear-gradient(135deg,#667eea,#764ba2);overflow:hidden;flex-shrink:0}.server-image-container .server-image{width:100%;height:100%;min-height:150px;object-fit:cover}.server-image-container .server-image-placeholder{width:100%;height:150px;min-height:150px;display:flex;align-items:center;justify-content:center;color:#fff;opacity:.7}.server-image-container .server-image-placeholder i{font-size:48px}.server-content{flex:1;display:flex;flex-direction:column;gap:12px;min-width:0}.server-content .server-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.server-content .server-name{margin:0;color:#2c3e50;font-size:22px;font-weight:600;flex:1}.server-content .status-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.server-content .status-badge.status-active{background-color:#27ae60;color:#fff}.server-content .status-badge.status-inactive{background-color:#95a5a6;color:#fff}.server-content .status-badge.status-suspended{background-color:#e74c3c;color:#fff}.server-content .server-description{margin:0;color:#666;font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.server-content .server-info{display:flex;flex-wrap:wrap;gap:16px;margin-top:auto}.server-content .server-info>div{display:flex;align-items:center;gap:6px;color:#666;font-size:14px}.server-content .server-info>div i{font-size:18px;color:#999}.server-content .server-info .server-created{margin-left:auto;color:#999;font-size:12px}.server-content .server-info .server-last-active{color:#666;font-size:13px;font-weight:500}.server-actions{padding:20px;border-left:1px solid #e9ecef;display:flex;align-items:center;justify-content:center;flex-shrink:0}.server-actions .action-button{padding:12px;border:none;border-radius:50%;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;width:48px;height:48px}.server-actions .action-button.view{background-color:#3498db;color:#fff}.server-actions .action-button.view:hover{background-color:#2980b9;transform:scale(1.1)}.server-actions .action-button i{font-size:24px}@media(max-width:768px){.servers-header{flex-direction:column;gap:16px}.servers-filters{flex-direction:column;align-items:stretch}.server-card{flex-direction:column}.server-image-container{width:100%;height:200px}.server-actions{border-left:none;border-top:1px solid #e9ecef;padding:12px}}.login-attempts-tab{padding:20px;max-width:1400px;margin:0 auto}.login-attempts-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.login-attempts-header h1{margin:0 0 8px;color:#2c3e50;font-size:32px;font-weight:600}.login-attempts-header .subtitle{color:#666;font-size:16px;margin:0}.login-attempts-header .header-actions{display:flex;gap:12px}.login-attempts-filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px;flex-wrap:wrap}.login-attempts-filters .search-container{position:relative;flex:1;min-width:300px;display:flex;align-items:center}.login-attempts-filters .search-container .material-icons{position:absolute;left:12px;color:#999;pointer-events:none}.login-attempts-filters .search-container .search-input{width:100%;padding:10px 40px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s ease}.login-attempts-filters .search-container .search-input:focus{outline:none;border-color:#3498db}.login-attempts-filters .search-container .search-clear{position:absolute;right:8px;background:none;border:none;color:#999;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.login-attempts-filters .search-container .search-clear:hover{background-color:#f0f0f0;color:#333}.login-attempts-filters .filter-group{display:flex;align-items:center;gap:8px}.login-attempts-filters .filter-group label{color:#666;font-size:14px;font-weight:500}.login-attempts-filters .filter-group .status-filter{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s ease}.login-attempts-filters .filter-group .status-filter:focus{outline:none;border-color:#3498db}.login-attempts-filters .attempts-count{color:#666;font-size:14px;white-space:nowrap}.attempts-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;min-width:1000px}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.status-success{background-color:#d4edda;color:#155724}.status-badge.status-failed{background-color:#f8d7da;color:#721c24}.status-badge.status-blocked{background-color:#fff3cd;color:#856404}.no-user{color:#999;font-style:italic}.country{color:#666}.failure-reason{color:#e74c3c;font-size:13px}@media(max-width:768px){.login-attempts-header{flex-direction:column;gap:16px}.login-attempts-filters{flex-direction:column;align-items:stretch}.attempts-table-container{overflow-x:scroll}}.audit-log-tab{padding:20px;max-width:1400px;margin:0 auto}.audit-log-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.audit-log-header h1{margin:0 0 8px;color:#2c3e50;font-size:32px;font-weight:600}.audit-log-header .subtitle{color:#666;font-size:16px;margin:0}.audit-log-header .header-actions{display:flex;gap:12px}.audit-log-filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px;flex-wrap:wrap}.audit-log-filters .search-container{position:relative;flex:1;min-width:300px;display:flex;align-items:center}.audit-log-filters .search-container .material-icons{position:absolute;left:12px;color:#999;pointer-events:none}.audit-log-filters .search-container .search-input{width:100%;padding:10px 40px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s ease}.audit-log-filters .search-container .search-input:focus{outline:none;border-color:#3498db}.audit-log-filters .search-container .search-clear{position:absolute;right:8px;background:none;border:none;color:#999;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.audit-log-filters .search-container .search-clear:hover{background-color:#f0f0f0;color:#333}.audit-log-filters .filter-group{display:flex;align-items:center;gap:8px}.audit-log-filters .filter-group label{color:#666;font-size:14px;font-weight:500}.audit-log-filters .filter-group .action-filter,.audit-log-filters .filter-group .resource-filter{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s ease}.audit-log-filters .filter-group .action-filter:focus,.audit-log-filters .filter-group .resource-filter:focus{outline:none;border-color:#3498db}.audit-log-filters .logs-count{color:#666;font-size:14px;white-space:nowrap}.logs-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;min-width:1200px}.admin-table thead{background-color:#f8f9fa;border-bottom:2px solid #e9ecef}.admin-table thead th{padding:12px 16px;text-align:left;font-weight:600;color:#495057;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.admin-table tbody tr{border-bottom:1px solid #e9ecef;transition:background-color .2s ease}.admin-table tbody tr:hover{background-color:#f8f9fa}.admin-table tbody tr:last-child{border-bottom:none}.admin-table tbody td{padding:16px;color:#333;font-size:14px}.action-cell{display:flex;align-items:center;gap:8px}.action-cell i{font-size:18px;color:#666}.resource-cell{display:flex;align-items:center;gap:8px}.resource-cell .resource-type{font-weight:500;color:#2c3e50}.resource-cell .resource-id{color:#999;font-size:12px;font-family:Courier New,monospace}.details-cell details{cursor:pointer}.details-cell details summary{color:#3498db;font-size:13px;-webkit-user-select:none;user-select:none;outline:none}.details-cell details summary:hover{text-decoration:underline}.details-cell details pre{margin-top:8px;padding:12px;background-color:#f8f9fa;border-radius:4px;font-size:12px;max-width:400px;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word}.details-cell .no-details{color:#999;font-style:italic}.user-name{font-weight:500;color:#2c3e50}.ip-address{font-family:Courier New,monospace;font-size:13px;color:#666}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px;padding:16px}.pagination .pagination-button{padding:8px 16px;border:1px solid #ddd;border-radius:6px;background:#fff;color:#495057;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s ease}.pagination .pagination-button:hover:not(:disabled){background-color:#f8f9fa;border-color:#3498db}.pagination .pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination .pagination-button i{font-size:18px}.pagination .pagination-info{color:#666;font-size:14px}.no-results{text-align:center;padding:60px 20px;color:#999}.no-results i{font-size:64px;margin-bottom:16px;opacity:.5}.no-results p{font-size:16px;margin:0}@media(max-width:768px){.audit-log-header{flex-direction:column;gap:16px}.audit-log-filters{flex-direction:column;align-items:stretch}.logs-table-container{overflow-x:scroll}}.settings-tab{padding:20px;max-width:1200px;margin:0 auto}.settings-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.settings-header h1{margin:0 0 8px;color:#2c3e50;font-size:32px;font-weight:600}.settings-header .subtitle{color:#666;font-size:16px;margin:0}.settings-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px}.settings-section .section-title{display:flex;align-items:center;gap:12px;margin:0 0 24px;color:#2c3e50;font-size:20px;font-weight:600;padding-bottom:16px;border-bottom:2px solid #e9ecef}.settings-section .section-title i{font-size:24px;color:#3498db}.setting-item label{display:flex;align-items:center;gap:8px;color:#2c3e50;font-size:14px;font-weight:500}.setting-item label span{cursor:pointer}.setting-item input[type=text],.setting-item input[type=email],.setting-item input[type=number]{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s ease}.setting-item input[type=text]:focus,.setting-item input[type=email]:focus,.setting-item input[type=number]:focus{outline:none;border-color:#3498db}.setting-item input[type=text]:disabled,.setting-item input[type=email]:disabled,.setting-item input[type=number]:disabled{background-color:#f5f5f5;cursor:not-allowed}.setting-item .setting-description{margin:0;color:#666;font-size:12px;line-height:1.4}.info-item{display:flex;flex-direction:column;gap:4px;padding:12px;background-color:#f8f9fa;border-radius:6px}.info-item .info-label{color:#666;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.info-item .info-value{color:#2c3e50;font-size:14px;font-weight:500;font-family:Courier New,monospace}.server-statistics{padding:0;max-width:1400px;margin:0 auto}.statistics-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid #e9ecef}.statistics-header h1{margin:0 0 8px;color:#1a252f;font-size:28px;font-weight:700;letter-spacing:-.5px}.statistics-header .subtitle{color:#6c757d;font-size:15px;margin:0;font-weight:400}.statistics-header .header-actions{display:flex;gap:12px}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.stat-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:28px;display:flex;align-items:flex-start;gap:20px;transition:all .2s ease;border:1px solid #f0f0f0}.stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px);border-color:#e0e0e0}.stat-card .stat-icon{flex-shrink:0;width:64px;height:64px;border-radius:14px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #667eea4d}.stat-card .stat-icon i{font-size:32px}.stat-card .stat-content{flex:1;min-width:0}.stat-card .stat-content h3{margin:0 0 12px;color:#495057;font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-card .stat-content .stat-value{margin:0 0 8px;color:#1a252f;font-size:38px;font-weight:700;line-height:1;letter-spacing:-1px}.stat-card .stat-content .stat-change{margin:0;font-size:13px;font-weight:600}.stat-card .stat-content .stat-change.positive{color:#28a745}.stat-card .stat-content .stat-change.negative{color:#dc3545}.stat-card .stat-content .stat-description{margin:8px 0 0;color:#6c757d;font-size:13px;line-height:1.5}@media(max-width:768px){.statistics-header{flex-direction:column;gap:16px}.statistics-grid{grid-template-columns:1fr}}.players-tab{padding:0;max-width:1400px;margin:0 auto}.players-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid #e9ecef}.players-header h1{margin:0 0 8px;color:#1a252f;font-size:28px;font-weight:700;letter-spacing:-.5px}.players-header .subtitle{color:#6c757d;font-size:15px;margin:0;font-weight:400}.players-header .header-actions{display:flex;gap:12px}.filters-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px;margin-bottom:24px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;border:1px solid #f0f0f0}.search-box{flex:1;min-width:250px;display:flex;align-items:center;gap:12px;padding:10px 16px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.search-box i{color:#666;font-size:20px}.search-box input{flex:1;border:none;background:transparent;font-size:14px;outline:none;color:#2c3e50}.search-box input::placeholder{color:#999}.filter-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.role-filter{padding:10px 16px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;color:#2c3e50;cursor:pointer;outline:none}.role-filter:focus{border-color:#3498db}.toggle-requests{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-requests input[type=checkbox]{width:18px;height:18px;cursor:pointer}.toggle-requests span{font-size:14px;color:#2c3e50}.requests-section,.members-section{margin-bottom:32px}.section-title{display:flex;align-items:center;gap:12px;margin:0 0 20px;color:#2c3e50;font-size:20px;font-weight:600}.members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.member-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:20px;display:flex;align-items:center;gap:16px;transition:all .2s ease;border:1px solid #f0f0f0}.member-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px);border-color:#e0e0e0}.member-card.request-card{border-left:4px solid #f39c12;background:linear-gradient(to right,#fffbf0,#fff 10%)}.member-card.clickable{cursor:pointer}.member-card.clickable:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px);border-color:#3498db}.member-avatar{flex-shrink:0;width:50px;height:50px;border-radius:50%;overflow:hidden;position:relative}.member-avatar img{width:100%;height:100%;object-fit:cover}.member-avatar .avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}.member-info{flex:1;min-width:0}.member-info h3{margin:0 0 4px;color:#2c3e50;font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-info .member-role{margin:0 0 4px;color:#666;font-size:14px;font-weight:500}.member-info .member-date{margin:0;color:#999;font-size:12px}.member-actions{display:flex;gap:8px}.action-button{width:36px;height:36px;border-radius:6px;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.action-button i{font-size:20px}.action-button.approve{background:#e8f5e9;color:#27ae60}.action-button.approve:hover{background:#c8e6c9}.action-button.reject{background:#ffebee;color:#e74c3c}.action-button.reject:hover{background:#ffcdd2}.action-button.remove{background:#fff3e0;color:#f39c12}.action-button.remove:hover{background:#ffe0b2}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.empty-state i{font-size:64px;color:#ddd;margin-bottom:16px}@media(max-width:768px){.players-header{flex-direction:column;gap:16px}.filters-section{flex-direction:column;align-items:stretch}.members-grid{grid-template-columns:1fr}}.player-page{padding:0;max-width:1400px;margin:0 auto}.player-header{display:flex;flex-direction:column;gap:24px;margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid #e9ecef}.player-header .back-button{display:flex;align-items:center;gap:8px;background:none;border:none;color:#3498db;font-size:14px;cursor:pointer;padding:8px 0;transition:color .2s ease}.player-header .back-button:hover{color:#2980b9}.player-header .back-button i{font-size:20px}.player-header .player-info{display:flex;align-items:center;gap:24px}.player-header .player-info .player-avatar{width:80px;height:80px;border-radius:50%;overflow:hidden;flex-shrink:0}.player-header .player-info .player-avatar img{width:100%;height:100%;object-fit:cover}.player-header .player-info .player-avatar .avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:600}.player-header .player-info h1{margin:0 0 8px;color:#1a252f;font-size:32px;font-weight:700}.player-header .player-info .player-role{margin:0;color:#6c757d;font-size:16px;font-weight:500}.player-tabs{display:flex;gap:8px;margin-bottom:32px;border-bottom:2px solid #e9ecef;overflow-x:auto}.player-tabs .tab-button{display:flex;align-items:center;gap:8px;padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;color:#6c757d;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.player-tabs .tab-button i{font-size:20px}.player-tabs .tab-button:hover{color:#3498db;background:#f8f9fa}.player-tabs .tab-button.active{color:#3498db;border-bottom-color:#3498db}.player-content{min-height:400px}.tab-content h2{margin:0 0 24px;color:#1a252f;font-size:24px;font-weight:600}.overview-tab .overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.overview-tab .overview-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px;border:1px solid #f0f0f0}.overview-tab .overview-card h3{margin:0 0 16px;color:#2c3e50;font-size:18px;font-weight:600}.overview-tab .overview-card p{margin:8px 0;color:#666;font-size:14px}.overview-tab .overview-card p strong{color:#2c3e50;font-weight:600}.matches-tab .matches-list{display:flex;flex-direction:column;gap:16px}.matches-tab .match-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:20px;border:1px solid #f0f0f0}.matches-tab .match-card .match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.matches-tab .match-card .match-header h3{margin:0;color:#2c3e50;font-size:16px;font-weight:600}.matches-tab .match-card .match-header .match-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.matches-tab .match-card .match-header .match-status.completed{background:#e8f5e9;color:#27ae60}.matches-tab .match-card .match-header .match-status.in_progress{background:#fff3e0;color:#f39c12}.matches-tab .match-card .match-header .match-status.canceled{background:#ffebee;color:#e74c3c}.matches-tab .match-card .match-teams{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.matches-tab .match-card .match-teams .team{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px}.matches-tab .match-card .match-teams .team .team-score{font-size:24px;font-weight:700;color:#2c3e50}.matches-tab .match-card .match-teams .team .team-players{display:flex;flex-direction:column;gap:4px;text-align:center}.matches-tab .match-card .match-teams .team .team-players span{font-size:14px;color:#666}.matches-tab .match-card .match-teams .vs{font-size:18px;font-weight:600;color:#999}.matches-tab .match-card .match-date{text-align:center;font-size:12px;color:#999}.unlocks-tab .unlocks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.unlocks-tab .unlock-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:20px;border:1px solid #f0f0f0;transition:all .2s ease}.unlocks-tab .unlock-card.unlocked{border-left:4px solid #27ae60;background:linear-gradient(to right,#e8f5e9,#fff 10%)}.unlocks-tab .unlock-card.locked{opacity:.7}.unlocks-tab .unlock-card .unlock-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.unlocks-tab .unlock-card .unlock-header h3{margin:0;color:#2c3e50;font-size:16px;font-weight:600}.unlocks-tab .unlock-card .unlock-header .toggle-button{padding:6px 16px;border-radius:6px;border:none;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.unlocks-tab .unlock-card .unlock-header .toggle-button.add{background:#e8f5e9;color:#27ae60}.unlocks-tab .unlock-card .unlock-header .toggle-button.add:hover{background:#c8e6c9}.unlocks-tab .unlock-card .unlock-header .toggle-button.remove{background:#ffebee;color:#e74c3c}.unlocks-tab .unlock-card .unlock-header .toggle-button.remove:hover{background:#ffcdd2}.unlocks-tab .unlock-card .unlock-description{margin:0 0 12px;color:#666;font-size:14px;line-height:1.5}.unlocks-tab .unlock-card .unlock-type .badge{display:inline-block;padding:4px 12px;background:#f0f0f0;color:#666;border-radius:12px;font-size:12px;font-weight:500}.achievements-tab .achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.achievements-tab .achievement-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:20px;border:1px solid #f0f0f0;text-align:center}.achievements-tab .achievement-card .achievement-icon{width:64px;height:64px;margin:0 auto 16px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center}.achievements-tab .achievement-card .achievement-icon i{font-size:32px;color:#fff}.achievements-tab .achievement-card h3{margin:0 0 8px;color:#2c3e50;font-size:18px;font-weight:600}.achievements-tab .achievement-card p{margin:0 0 12px;color:#666;font-size:14px;line-height:1.5}.achievements-tab .achievement-card .achievement-meta{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #f0f0f0}.achievements-tab .achievement-card .achievement-meta .points{font-weight:600;color:#f39c12;font-size:14px}.achievements-tab .achievement-card .achievement-meta .date{font-size:12px;color:#999}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014}.empty-state p{color:#666;font-size:16px;margin:0}@media(max-width:768px){.player-header .player-info{flex-direction:column;align-items:flex-start}.player-tabs .tab-button{padding:10px 16px;font-size:14px}.player-tabs .tab-button span{display:none}.overview-tab .overview-grid,.unlocks-tab .unlocks-grid,.achievements-tab .achievements-grid{grid-template-columns:1fr}}.matches-tab{padding:0;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.matches-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid #e9ecef;width:100%;max-width:1000px}.matches-header h1{margin:0 0 8px;color:#1a252f;font-size:28px;font-weight:700;letter-spacing:-.5px}.matches-header .subtitle{color:#6c757d;font-size:15px;margin:0;font-weight:400}.matches-header .header-actions{display:flex;gap:12px}.matches-filters{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px;margin-bottom:24px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;width:100%;max-width:1000px;border:1px solid #f0f0f0}.search-container{flex:1;min-width:250px;display:flex;align-items:center;gap:12px;padding:10px 16px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.search-container i{color:#666;font-size:20px}.search-container input{flex:1;border:none;background:transparent;font-size:14px;outline:none;color:#2c3e50}.search-container input::placeholder{color:#999}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:14px;color:#2c3e50;font-weight:500}.filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;color:#2c3e50;cursor:pointer;outline:none}.filter-group select:focus{border-color:#3498db}.matches-count{margin-left:auto;font-size:14px;color:#666}.matches-list{display:flex;flex-direction:column;gap:16px;width:100%;max-width:1000px}.matches-tab .admin-match-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px;transition:all .2s ease;border:1px solid #f0f0f0}.matches-tab .admin-match-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#e0e0e0}.matches-tab .admin-match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.matches-tab .admin-match-info{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.matches-tab .admin-match-id{font-weight:600;color:#2c3e50;font-size:16px}.matches-tab .admin-status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.matches-tab .admin-status-badge.status-completed{background:#e8f5e9;color:#27ae60}.matches-tab .admin-status-badge.status-in-progress{background:#e3f2fd;color:#2196f3}.matches-tab .admin-status-badge.status-canceled{background:#ffebee;color:#e74c3c}.matches-tab .admin-match-type-badge,.matches-tab .admin-game-mode-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;background:#f0f0f0;color:#666}.matches-tab .admin-match-date{color:#666;font-size:14px;white-space:nowrap}.matches-tab .admin-delete-match-button{background:transparent;border:none;color:#dc3545;cursor:pointer;padding:8px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.matches-tab .admin-delete-match-button:hover{background:#fee;color:#c82333}.matches-tab .admin-delete-match-button:active{transform:scale(.95)}.matches-tab .admin-delete-match-button i{font-size:20px}.matches-tab .admin-match-details{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.matches-tab .admin-detail-item{display:flex;align-items:center;gap:8px;color:#666;font-size:14px}.matches-tab .admin-detail-item i{font-size:18px;color:#999}.matches-tab .admin-match-teams{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:start}.matches-tab .admin-team{display:flex;flex-direction:column;gap:12px}.matches-tab .admin-team-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.matches-tab .admin-team-header h3{margin:0;font-size:18px;font-weight:600;color:#2c3e50}.matches-tab .admin-team-header .admin-team-score{font-size:24px;font-weight:700;color:#3498db}.matches-tab .admin-team-1 .admin-team-score{color:#3498db}.matches-tab .admin-team-2 .admin-team-score{color:#e74c3c}.matches-tab .admin-team-players{display:flex;flex-direction:column;gap:8px}.matches-tab .admin-player-item{display:flex;align-items:center;gap:12px;padding:8px;background:#f8f9fa;border-radius:6px}.matches-tab .admin-player-avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;overflow:hidden;position:relative}.matches-tab .admin-player-avatar img{width:100%;height:100%;object-fit:cover}.matches-tab .admin-player-avatar .admin-avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}.matches-tab .admin-player-info{flex:1;display:flex;flex-direction:column;gap:2px}.matches-tab .admin-player-info .admin-player-name{font-size:14px;font-weight:500;color:#2c3e50}.matches-tab .admin-player-info .admin-player-position{font-size:12px;color:#666;text-transform:capitalize}.matches-tab .admin-player-score{font-size:16px;font-weight:600;color:#2c3e50;min-width:30px;text-align:right}.matches-tab .admin-vs-divider{display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#999;padding:0 16px}.matches-tab .admin-no-players{color:#999;font-size:14px;font-style:italic;margin:0;padding:8px}.no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.no-results i{font-size:64px;color:#ddd;margin-bottom:16px}.no-results p{color:#666;font-size:16px;margin:0}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;width:100%;max-width:1000px}.pagination-button{display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid #ddd;border-radius:6px;background:#fff;color:#2c3e50;font-size:14px;cursor:pointer;transition:all .2s ease}.pagination-button:hover:not(:disabled){background:#f8f9fa;border-color:#3498db}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-button i{font-size:20px}.pagination-info{font-size:14px;color:#666}@media(max-width:768px){.matches-header{flex-direction:column;gap:16px}.matches-filters{flex-direction:column;align-items:stretch}.admin-match-teams{grid-template-columns:1fr;gap:16px}.admin-vs-divider{padding:16px 0;transform:rotate(90deg)}}.settings-tab{padding:0;max-width:1200px;margin:0 auto}.settings-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid #e9ecef}.settings-header h1{margin:0 0 8px;color:#1a252f;font-size:28px;font-weight:700;letter-spacing:-.5px}.settings-header .subtitle{color:#6c757d;font-size:15px;margin:0;font-weight:400}.settings-header .header-actions{display:flex;gap:12px}.save-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;margin-bottom:20px}.save-error i{font-size:20px}.settings-content{display:flex;flex-direction:column;gap:32px}.settings-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:28px;border:1px solid #f0f0f0}.section-title{display:flex;align-items:center;gap:12px;margin:0 0 24px;color:#2c3e50;font-size:20px;font-weight:600}.section-title i{font-size:24px;color:#3498db}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.setting-item{display:flex;flex-direction:column;gap:8px}.setting-item.full-width{grid-column:1/-1}.setting-item label{font-size:14px;font-weight:500;color:#2c3e50;display:flex;align-items:center;gap:8px}.setting-item label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.setting-item input[type=text],.setting-item input[type=number],.setting-item textarea,.setting-item select{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;color:#2c3e50;background:#fff;transition:border-color .2s ease}.setting-item input[type=text]:focus,.setting-item input[type=number]:focus,.setting-item textarea:focus,.setting-item select:focus{outline:none;border-color:#3498db}.setting-item input[type=text].read-only-input,.setting-item input[type=number].read-only-input,.setting-item textarea.read-only-input,.setting-item select.read-only-input{background:#f8f9fa;cursor:not-allowed}.setting-item textarea{resize:vertical;font-family:inherit}.setting-item .setting-description{font-size:12px;color:#666;margin:0;line-height:1.4}.invite-code-container{display:flex;gap:8px;align-items:center}.invite-code-container input{flex:1}.invite-code-container button{flex-shrink:0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:#f8f9fa;border-radius:6px}.info-item .info-label{font-size:12px;color:#666;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.info-item .info-value{font-size:14px;color:#2c3e50;font-weight:500}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.loading-container i,.error-container i{font-size:48px;margin-bottom:16px;color:#999}.loading-container i.rotating,.error-container i.rotating{animation:spin 1s linear infinite}.loading-container p,.error-container p{color:#666;font-size:16px;margin-bottom:20px}.error-container i{color:#e74c3c}@media(max-width:768px){.settings-header{flex-direction:column;gap:16px}.settings-grid,.info-grid{grid-template-columns:1fr}}@font-face{font-family:GogoPosterpunch;src:url(/assets/fonts/GoGoPosterPunch.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}.card{background-color:var(--bg-card, #2a2a2a);border-radius:var(--border-radius-md, 8px);box-shadow:var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, .2));padding:var(--spacing-md, 1.5rem);transition:transform .2s,box-shadow .2s;height:100%;display:flex;flex-direction:column;border:1px solid var(--border-color, #3a3a3a)}.card.hoverable{cursor:pointer}.card.hoverable:hover{transform:translateY(-5px);box-shadow:var(--shadow-md, 0 10px 20px rgba(0, 0, 0, .3))}.card .card-title{font-size:1.25rem;font-weight:600;margin-bottom:.75rem;color:#fff}.card .card-description{margin-bottom:1rem;color:#ccc;font-size:.95rem;line-height:1.5}.card .card-content{flex:1}.card .card-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #3a3a3a);display:flex;justify-content:flex-end}.card .card-footer button{background-color:var(--primary-color, #1c447b);color:#fff;border:1px solid var(--primary-color, #1c447b);padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s,transform .1s}.card .card-footer button:hover:not(:disabled){background-color:var(--primary-color-dark, #15325b);transform:translateY(-2px)}.card .card-footer button:active:not(:disabled){transform:translateY(0)}.card .card-footer button:disabled{opacity:.5;cursor:not-allowed;background-color:var(--bg-disabled, #555);border-color:var(--border-disabled, #666)}.card .card-footer button.secondary{background-color:transparent;color:var(--primary-color, #1c447b);border:1px solid var(--primary-color, #1c447b)}.card .card-footer button.secondary:hover:not(:disabled){background-color:#1c447b1a}.no-server-container{max-width:1200px;margin:0 auto;padding:2rem}.no-server-container .header-section{text-align:center;margin-bottom:2rem}.no-server-container .header-section h1{margin-bottom:1rem;color:#1c447b}.no-server-container .header-section .lead{font-size:1.1rem;color:#ccc;max-width:800px;margin:0 auto}.no-server-container .button-section{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem}.no-server-container .button-section .primary-button,.no-server-container .button-section .secondary-button{padding:.75rem 1.5rem;font-weight:500;font-size:1rem;border-radius:4px;cursor:pointer;transition:background-color .2s,transform .1s}.no-server-container .button-section .primary-button:hover,.no-server-container .button-section .secondary-button:hover{transform:translateY(-2px)}.no-server-container .button-section .primary-button:active,.no-server-container .button-section .secondary-button:active{transform:translateY(0)}.no-server-container .button-section .primary-button{background-color:#1c447b;color:#fff;border:none}.no-server-container .button-section .primary-button:hover{background-color:#15325b}.no-server-container .button-section .secondary-button{background-color:transparent;color:#1c447b;border:1px solid #1c447b}.no-server-container .button-section .secondary-button:hover{background-color:#1c447b1a}.no-server-container .error-message{background-color:#f8d7da;color:#721c24;padding:1rem;margin-bottom:1rem;border-radius:4px}.no-server-container .success-message{background-color:#d4edda;color:#155724;padding:1rem;margin-bottom:1rem;border-radius:4px}.no-server-container .servers-section{margin-bottom:2rem}.no-server-container .servers-section h2{margin-bottom:1rem;color:#ccc}.no-server-container .servers-section .server-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.no-server-container .form-group{margin-bottom:1.5rem}.no-server-container .form-group label{display:block;margin-bottom:.5rem;font-weight:500}.no-server-container .form-group input,.no-server-container .form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.no-server-container .form-group input:focus,.no-server-container .form-group textarea:focus{outline:none;border-color:#1c447b;box-shadow:0 0 0 2px #1c447b33}.no-server-container .form-group textarea{resize:vertical;min-height:100px}.no-server-container .checkbox-group .checkbox-label{display:flex;align-items:center;cursor:pointer}.no-server-container .checkbox-group .checkbox-label input[type=checkbox]{width:auto;margin-right:.5rem}.no-server-container .button-group{display:flex;justify-content:flex-end;gap:.75rem}.no-server-container .button-group button{padding:.6rem 1.2rem;border-radius:4px;font-weight:500;cursor:pointer}.no-server-container .button-group .cancel-button{background-color:transparent;border:1px solid #ddd;color:#555}.no-server-container .button-group .cancel-button:hover{background-color:#f5f5f5}.no-server-container .button-group .submit-button{background-color:#1c447b;color:#fff;border:none}.no-server-container .button-group .submit-button:hover:not(:disabled){background-color:#15325b}.no-server-container .button-group .submit-button:disabled{opacity:.5;cursor:not-allowed}.no-server-container .member-count{color:#ccc;font-size:.9rem;margin-bottom:1rem}.no-server-container .join-button{background-color:var(--primary-color, #1c447b);color:#fff;border:1px solid var(--primary-color, #1c447b);padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s,transform .1s}.no-server-container .join-button:hover:not(:disabled){background-color:var(--primary-color-dark, #15325b);transform:translateY(-2px)}.no-server-container .join-button:active:not(:disabled){transform:translateY(0)}.no-server-container .join-button:disabled{opacity:.5;cursor:not-allowed;background-color:var(--bg-disabled, #555);border-color:var(--border-disabled, #666)}.no-server-container .request-sent{background-color:var(--bg-disabled, #555)!important;border-color:var(--border-disabled, #666)!important;color:var(--text-muted, #aaa)!important;cursor:not-allowed!important;opacity:.8;transform:none!important;transition:none!important}.no-server-container .request-sent:hover,.no-server-container .request-sent:focus,.no-server-container .request-sent:active{transform:none!important;background-color:var(--bg-disabled, #555)!important;box-shadow:none!important}.no-server-container button:disabled,.no-server-container .button:disabled{transform:none!important;transition:none!important}.no-server-container button:disabled:hover,.no-server-container button:disabled:focus,.no-server-container button:disabled:active,.no-server-container .button:disabled:hover,.no-server-container .button:disabled:focus,.no-server-container .button:disabled:active{transform:none!important;box-shadow:none!important}.server-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.server-info .member-count{margin:0;color:#666}.server-info .visibility-badge{padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:500}.server-info .visibility-badge.public{background-color:#e3f2fd;color:#1976d2}.server-info .visibility-badge.private{background-color:#f5f5f5;color:#616161}.server-card .card-footer{margin-top:1rem}.server-card .card-footer button{width:100%}.server-card .card-footer button.request-sent{background-color:#e0e0e0;color:#616161;cursor:not-allowed}.lobby-card{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:40px;margin-bottom:32px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;position:relative;overflow:hidden;min-height:200px;display:flex;flex-direction:column;height:100%}.lobby-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000004d;border-color:#ffffff4d}.lobby-card.compact{padding:16px;margin-bottom:12px;min-height:auto}.lobby-card .lobby-info{margin-bottom:32px}.lobby-card .lobby-info .lobby-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.lobby-card .lobby-info .lobby-header .player-count{font-weight:600;color:#fff;font-size:24px}.lobby-card .lobby-info .lobby-header .lobby-id{color:#ffffffb3;font-size:18px;font-weight:500}.lobby-card .lobby-info .lobby-settings{display:flex;gap:24px;flex-wrap:wrap}.lobby-card .lobby-info .lobby-settings .game-type,.lobby-card .lobby-info .lobby-settings .match-type,.lobby-card .lobby-info .lobby-settings .max-score{background:#ffffff1a;padding:8px 16px;border-radius:8px;font-size:16px;font-weight:500;color:#fff}.lobby-card .lobby-info .lobby-settings .match-type{background:#4caf504d;border:1px solid rgba(76,175,80,.5)}.lobby-card .lobby-info .lobby-settings .game-type{background:#2196f34d;border:1px solid rgba(33,150,243,.5)}.lobby-card .players-preview{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:16px;width:100%}.lobby-card .players-preview .player-preview{min-width:0;max-width:none;width:100%}.lobby-card .players-preview .player-preview:nth-child(1),.lobby-card .players-preview .player-preview:nth-child(2){grid-row:1}.lobby-card .players-preview .player-preview:nth-child(3),.lobby-card .players-preview .player-preview:nth-child(4){grid-row:2}.lobby-card .players-preview .player-preview.empty .empty-slot{background:#ffffff0d;border:1px dashed rgba(255,255,255,.3);border-radius:8px;padding:10px;text-align:center;color:#ffffff80;font-size:14px;font-weight:500;min-height:68px;display:flex;align-items:center;justify-content:center;width:100%}.lobby-card .lobby-actions{display:flex;gap:16px;justify-content:flex-end;margin-top:auto;flex-shrink:0}.lobby-card .lobby-actions .join-button,.lobby-card .lobby-actions .leave-button{min-width:200px;padding:24px 32px;font-size:18px;font-weight:600}@media(max-width:768px){.lobby-card{padding:16px}.lobby-card .players-preview .player-preview{min-width:100px;max-width:120px}}.lobby-card.compact .lobby-info{margin-bottom:12px}.lobby-card.compact .lobby-info .lobby-header{margin-bottom:8px}.lobby-card.compact .lobby-info .lobby-header .player-count{font-size:14px}.lobby-card.compact .lobby-info .lobby-header .lobby-id{font-size:12px}.lobby-card.compact .lobby-info .lobby-settings{gap:8px}.lobby-card.compact .lobby-info .lobby-settings .game-type,.lobby-card.compact .lobby-info .lobby-settings .match-type,.lobby-card.compact .lobby-info .lobby-settings .max-score{font-size:11px;padding:3px 6px}.lobby-card.compact .players-preview{gap:6px;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);min-height:120px}.lobby-card.compact .players-preview .player-preview{min-width:0;max-width:none;width:100%}.lobby-card.compact .players-preview .player-preview:nth-child(1),.lobby-card.compact .players-preview .player-preview:nth-child(2){grid-row:1}.lobby-card.compact .players-preview .player-preview:nth-child(3),.lobby-card.compact .players-preview .player-preview:nth-child(4){grid-row:2}.lobby-card.compact .lobby-actions .join-button,.lobby-card.compact .lobby-actions .leave-button{min-width:80px;font-size:14px;padding:12px 16px;font-weight:600}.table-display{min-height:100vh;padding:2rem;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);color:#fff;position:relative;overflow:hidden;display:flex;flex-direction:column;animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.table-display .gradient-background{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#2196f31a,#2196f30d);z-index:0}.table-display .title-container{text-align:center;margin-bottom:2rem;color:#fff;position:relative;z-index:1}.table-display .title-container .beta-banner{background:linear-gradient(45deg,#ff6b6b,#ff8e8e);color:#fff;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:700;display:inline-block;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px;box-shadow:0 2px 8px #ff6b6b4d}.table-display .title-container h1{font-family:GoGoPosterPunch,cursive;font-size:4rem;font-weight:400;margin:0;text-shadow:0 4px 8px rgba(0,0,0,.3);line-height:.9;letter-spacing:2px}.table-display .table-display-header{text-align:center;margin-bottom:2rem;color:#fff;position:relative;z-index:1}.table-display .table-display-header h2{font-size:2rem;font-weight:600;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3);opacity:.9}.table-display .table-display-header .arduino-controls{position:absolute;top:20px;right:20px;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.table-display .table-display-header .arduino-controls .arduino-connect-button{padding:10px 20px;background-color:#2196f3;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s;white-space:nowrap}.table-display .table-display-header .arduino-controls .arduino-connect-button:hover:not(:disabled){background-color:#1976d2}.table-display .table-display-header .arduino-controls .arduino-connect-button:disabled{background-color:#4caf50;cursor:not-allowed}.table-display .table-display-header .arduino-controls .arduino-error{background-color:#f44336;color:#fff;padding:10px 15px;border-radius:4px;font-size:14px;max-width:300px;text-align:right;box-shadow:0 2px 4px #0003}.table-display .main-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;width:100%;max-width:1800px;margin:0 auto;z-index:1;min-height:70vh;position:relative}.table-display .lobbies-section{display:flex;flex-direction:column;gap:1.5rem;overflow-y:auto;max-height:calc(100vh - 200px);padding-right:1rem}.table-display .lobbies-section::-webkit-scrollbar{width:8px}.table-display .lobbies-section::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.table-display .lobbies-section::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.table-display .lobbies-section::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.table-display .lobbies-section .no-lobbies-message{text-align:center;padding:3rem 2rem;background:#ffffff0d;border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.table-display .lobbies-section .no-lobbies-message h2{color:#fff;font-size:1.8rem;margin-bottom:1rem;font-weight:600}.table-display .lobbies-section .no-lobbies-message p{color:#ffffffb3;font-size:1.1rem}.table-display .lobbies-section .lobby-list{display:flex;flex-direction:column;gap:1.5rem}.table-display .join-section{display:flex;align-items:flex-start;justify-content:center;position:sticky;top:2rem;height:fit-content}.table-display .join-section .join-content{background:#ffffff1a;border-radius:16px;padding:2.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);width:100%;max-width:500px;text-align:center}.table-display .join-section .join-content h2{color:#fff;font-size:2rem;margin-bottom:1rem;font-weight:600}.table-display .join-section .join-content>p{color:#fffc;font-size:1.1rem;margin-bottom:2rem;line-height:1.5}.table-display .join-section .join-content .instruction-steps{display:flex;flex-direction:column;gap:1.5rem;align-items:flex-start;margin-bottom:2.5rem}.table-display .join-section .join-content .instruction-steps .step{display:flex;align-items:center;gap:1rem;color:#ffffffe6;font-size:1.1rem;width:100%}.table-display .join-section .join-content .instruction-steps .step .step-number{background:#4caf50;color:#fff;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}.table-display .join-section .join-content .qr-code-container{margin-bottom:2rem}.table-display .join-section .join-content .qr-code-container .qr-code{width:200px;height:200px;border-radius:12px;box-shadow:0 4px 20px #0000004d;background:#fff;padding:15px;margin:0 auto 1rem;display:block}.table-display .join-section .join-content .qr-code-container .qr-instruction{color:#fffc;font-size:1rem;margin:0;font-weight:500}.table-display .join-section .join-content .register-text{color:#ffffffb3;font-size:1rem;margin:0;margin-top:1rem}.table-display .lobby-card{background:#ffffff14;border-radius:12px;padding:1.5rem;box-shadow:0 2px 4px #0000000d;cursor:pointer;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:220px}.table-display .lobby-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.table-display .lobby-card .lobby-info{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.table-display .lobby-card .lobby-info>div{padding:.5rem 1rem;background:#2196f314;border-radius:20px;font-size:.95rem;color:#bdbdbd}.table-display .lobby-card .lobby-info .player-count{color:#4caf50;font-weight:700}.table-display .lobby-card .lobby-info .game-type{color:#2196f3;font-weight:700}.table-display .lobby-card .lobby-info .match-type{color:#bdbdbd}.table-display .lobby-card .join-button{width:100%;padding:.8rem;border:none;border-radius:6px;background:#2ecc71;color:#fff;font-size:1rem;cursor:pointer;transition:background .2s;margin-top:auto}.table-display .lobby-card .join-button:hover:not(.disabled){background:#27ae60}.table-display .lobby-card .join-button.disabled{background:#ccc;cursor:not-allowed}.table-display .loading,.table-display .error-message{display:flex;justify-content:center;align-items:center;min-height:50vh;font-size:2rem;color:#fff;position:relative;z-index:1}.table-display .error-message{color:#ff5252}.table-display .lobby-carousel,.table-display .navigation-buttons{display:none!important}@media(max-width:1200px){.table-display .main-content{grid-template-columns:1fr;gap:2rem}.table-display .main-content .join-section{position:relative;top:0}}@media(max-width:768px){.table-display{padding:1rem}.table-display .title-container{margin-bottom:1.5rem}.table-display .title-container h1{font-size:2.5rem}.table-display .main-content{gap:1.5rem}.table-display .lobbies-section{max-height:none;padding-right:0}.table-display .join-section .join-content{padding:2rem 1.5rem}}.lobby-page{position:relative;min-height:100vh;padding:2rem;background:var(--bg-dark);display:flex;justify-content:center;align-items:flex-start;gap:2rem;background:var(--bg-gradient);background-size:200rem 200rem}@media(max-width:1200px){.lobby-page{flex-direction:column;align-items:center}}@media(max-width:768px){.lobby-page{padding:.5rem}}.lobby-page .lobby-container{width:100%;max-width:1200px;display:flex;flex-direction:column;min-height:80vh}.lobby-page .lobby-header{text-align:center;margin-bottom:2rem}.lobby-page .lobby-header h1{font-size:2rem;margin-bottom:1rem}.lobby-page .lobby-header .lobby-info{display:flex;justify-content:flex-start;flex-direction:row;align-items:center;flex-wrap:wrap;gap:1.5rem}.lobby-page .join-section{display:flex;align-items:flex-start;justify-content:center;position:sticky;top:2rem;height:fit-content;flex-shrink:0;width:100%;max-width:400px}@media(max-width:1200px){.lobby-page .join-section{position:relative;top:0;max-width:100%}}.lobby-page .join-section .join-content{background:#ffffff1a;border-radius:16px;padding:2.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);width:100%;text-align:center}.lobby-page .join-section .join-content h2{color:#fff;font-size:2rem;margin-bottom:1rem;font-weight:600}.lobby-page .join-section .join-content>p{color:#fffc;font-size:1.1rem;margin-bottom:2rem;line-height:1.5}.lobby-page .join-section .join-content .qr-code-container{margin-bottom:2rem}.lobby-page .join-section .join-content .qr-code-container .qr-code{width:200px;height:200px;border-radius:12px;box-shadow:0 4px 20px #0000004d;background:#fff;padding:15px;margin:0 auto 1rem;display:block}.lobby-page .join-section .join-content .qr-code-container .qr-instruction{color:#fffc;font-size:1rem;margin:0;font-weight:500}.lobby-page .join-section .join-content .register-text{color:#ffffffb3;font-size:.9rem;margin:0;margin-top:1rem;word-break:break-all}.lobby-page .lobby-settings{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}.lobby-page .lobby-settings .settings-group{display:flex;background:#00000075;border-radius:20px;padding:.5rem;gap:.5rem;align-items:center}.lobby-page .lobby-settings .settings-group .setting-button{padding:.5rem 1rem;border-radius:16px;border-style:none;background:transparent;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;color:var(--text-light)}.lobby-page .lobby-settings .settings-group .setting-button.active{background:#1e3c72;color:#fff}.lobby-page .lobby-settings .settings-group .setting-button:hover:not(.active):not(:disabled){background:var(--bg-layer3)}.lobby-page .lobby-settings .settings-group .setting-button.disabled{color:#000}.lobby-page .lobby-settings .settings-group .setting-button:disabled{cursor:not-allowed}.lobby-page .lobby-settings .settings-group.score-settings .setting-label{color:var(--text-secondary);font-size:.9rem;margin-right:.5rem}.lobby-page .lobby-settings .settings-group.score-settings input{width:50px;background:var(--bg-layer3);border:none;border-radius:12px;padding:.5rem;color:var(--text-primary);text-align:center;font-weight:500}.lobby-page .lobby-settings .settings-group.score-settings input:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary)}.lobby-page .teams-container{display:flex;justify-content:space-between;align-items:stretch;gap:20px;width:100%;margin:2rem 0}@media(max-width:768px){.lobby-page .teams-container{margin:1rem 0;flex-direction:column}}.lobby-page .teams-container .team{flex:1;display:flex;flex-direction:column;align-items:center}.lobby-page .teams-container .team .team-players{width:100%;display:flex;flex-direction:column;gap:10px;align-items:center}.lobby-page .teams-container .vs-divider{display:flex;align-items:center;font-weight:700;color:var(--text-light)}.lobby-page .swap-roles-button{display:flex;align-items:center;justify-content:center;background:var(--bg-layer3);border:none;border-radius:var(--border-radius-sm);cursor:pointer;transition:all .2s ease;width:32px;height:32px;margin:8px;font-size:1.5rem}.lobby-page .swap-roles-button:hover{background:var(--bg-layer4);transform:scale(1.1)}.lobby-page .swap-roles-button:active{transform:scale(.95)}.lobby-page .lobby-controls{display:flex;justify-content:center;align-items:center;gap:1.5rem;padding:1.5rem 0;margin-top:auto}@media(max-width:768px){.lobby-page .lobby-controls{flex-direction:column;gap:1rem;padding:1rem 0}}.lobby-page .lobby-controls .lobby-button{min-width:200px;padding:1.2rem 2.5rem;font-size:1.4rem;font-weight:600;border-radius:8px;box-shadow:0 2px 8px #00000014}.lobby-page .lobby-controls .lobby-button.start{background:#4f4;color:#fff}.lobby-page .lobby-controls .lobby-button.start:hover{background:#2f2}.lobby-page .lobby-controls .lobby-button.shuffle{background:var(--color-secondary);color:#fff}.lobby-page .lobby-controls .lobby-button.shuffle:hover{background:var(--color-secondary-dark)}.lobby-page .table-lobby-loading,.lobby-page .table-lobby-error{text-align:center;padding:2rem;font-size:1.2rem;color:#666}.table-match{position:relative;min-height:100vh;width:100%;background:var(--bg-gradient);background-size:200rem 200rem}.table-match .gradient-background{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#2196f31a,#2196f30d);z-index:0}.table-match .match-header{position:sticky;top:0;z-index:5;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);background-color:var(--bg-dark)}.table-match .match-header .match-type-tag{display:flex;align-items:center}.table-match .match-header .match-type-tag .tag{padding:4px 12px;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.table-match .match-header .match-type-tag .tag.ranked{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;box-shadow:0 2px 8px #4caf504d}.table-match .match-header .match-type-tag .tag.unranked{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);color:var(--text-secondary);border:1px solid rgba(255,255,255,.2)}.table-match .match-header .match-time-container{position:absolute;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-top:1rem}.table-match .match-header .match-time{font-size:1.5rem;font-weight:700}.table-match .match-header .match-time.completed{color:var(--text-secondary);font-style:italic}.table-match .match-header .menu-button{min-width:unset;width:36px;height:36px;padding:0}.table-match .teams-container{position:relative;z-index:2;flex:1;display:flex;flex-direction:row;justify-content:center;gap:.5rem;width:100%;max-width:100%;padding:0 .5rem;padding-bottom:70px}@media(min-width:768px){.table-match .teams-container{gap:4rem;padding:4rem;padding-bottom:80px}}.table-match .team-section{display:flex;flex-direction:column;justify-content:space-between;align-items:center;width:100%;background:var(--bg-layer1);border-radius:var(--border-radius-sm);box-sizing:border-box;padding:.5rem}@media(min-width:768px){.table-match .team-section{border-radius:var(--border-radius-md)}}.table-match .team-section.team-one .players{order:1}.table-match .team-section.team-one .team-score,.table-match .team-section.team-two .team-score{order:2}.table-match .team-section.team-two .players{order:1}.table-match .team-section .players{flex:1;display:flex;flex-direction:column;gap:.25rem;width:100%}@media(min-width:768px){.table-match .team-section .players{gap:.5rem}}.table-match .team-section .players .player-wrapper{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.table-match .team-section .players .player-wrapper .player-actions{display:flex;gap:.25rem;margin-top:.25rem}.table-match .team-section .players .player-wrapper .player-actions .swap-roles-button,.table-match .team-section .players .player-wrapper .player-actions .undo-goal-button{background:var(--bg-layer2);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);padding:.5rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:56px;height:56px;color:var(--text-color)}.table-match .team-section .players .player-wrapper .player-actions .swap-roles-button:hover,.table-match .team-section .players .player-wrapper .player-actions .undo-goal-button:hover{background:var(--bg-layer3);border-color:var(--accent-color)}.table-match .team-section .players .player-wrapper .player-actions .swap-roles-button svg,.table-match .team-section .players .player-wrapper .player-actions .undo-goal-button svg{width:32px;height:32px;color:var(--text-color)}.table-match .team-section .players .player-wrapper .player-actions .undo-goal-button:hover{background:var(--error-color);border-color:var(--error-color)}.table-match .team-section .players .player-wrapper .player-actions .undo-goal-button:hover svg{color:#fff}.table-match .team-section .team-score{font-size:2.5rem;font-weight:700;min-width:50px;text-align:center;margin:.25rem}@media(min-width:768px){.table-match .team-section .team-score{font-size:16rem;min-width:60px;margin:.5rem}}.table-match .team-section .player-wrapper .player-card-container{display:flex;align-items:center;width:100%;gap:1rem;padding-right:.75rem}.table-match .team-section .player-wrapper .player-card-container .undo-goal-button{width:40px;height:40px;border-radius:50%;border:2px solid var(--text-secondary);background-color:var(--bg-layer1);color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.table-match .team-section .player-wrapper .player-card-container .undo-goal-button:hover:not(.disabled){background-color:var(--accent-color);border-color:var(--accent-color);color:#fff}.table-match .team-section .player-wrapper .player-card-container .undo-goal-button.disabled{opacity:.3;cursor:not-allowed;background-color:var(--bg-layer2);border-color:var(--text-secondary)}.table-match .team-section .player-wrapper .player-card-container .undo-goal-button:disabled{opacity:.3;cursor:not-allowed;background-color:var(--bg-layer2);border-color:var(--text-secondary)}@media(min-width:768px){.table-match .team-section .player-wrapper .player-card-container .undo-goal-button{width:50px;height:50px}}.table-match .control-buttons{position:fixed;z-index:10;bottom:0;left:0;right:0;display:flex;justify-content:center;padding:.75rem 1rem;margin-top:0;background-color:var(--bg-dark);box-shadow:0 -2px 10px #0003;opacity:1;transition:opacity .3s ease}@media(min-width:768px){.table-match .control-buttons{padding:1rem 2rem}}.table-match .control-buttons .whoops-button{flex:1;height:50px;font-size:1rem;font-weight:700;margin-right:.5rem}@media(min-width:768px){.table-match .control-buttons .whoops-button{height:60px;font-size:1.2rem;margin-right:1rem}}.table-match .control-buttons .goal-button{flex:1;height:50px;font-size:1.25rem;font-weight:700;background-color:var(--bg-layer1)}@media(min-width:768px){.table-match .control-buttons .goal-button{height:60px;font-size:1.5rem}}.table-match .game-over-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:3;background:#000000b3;display:flex;justify-content:center;align-items:center;padding:1rem}.table-match .game-over-modal .modal-content{background:var(--bg-modal);padding:1.5rem;border-radius:8px;text-align:center;max-width:100%;width:100%}@media(min-width:576px){.table-match .game-over-modal .modal-content{padding:2rem;max-width:400px;width:90%}}.table-match .game-over-modal .modal-content h2{margin-bottom:.75rem;color:var(--text-color-light);font-size:1.5rem}@media(min-width:768px){.table-match .game-over-modal .modal-content h2{margin-bottom:1rem;font-size:1.75rem}}.table-match .game-over-modal .modal-content p{margin:.5rem 0;font-size:1rem}@media(min-width:768px){.table-match .game-over-modal .modal-content p{font-size:1.2rem}}.table-match .game-over-modal .modal-content .modal-buttons{margin-top:1.5rem;display:flex;flex-direction:column;gap:.5rem}@media(min-width:576px){.table-match .game-over-modal .modal-content .modal-buttons{flex-direction:row;gap:1rem;margin-top:2rem;justify-content:center}}.table-match .game-over-modal .modal-content .modal-buttons .button{min-width:100%}@media(min-width:576px){.table-match .game-over-modal .modal-content .modal-buttons .button{min-width:120px}}.table-match .loading{position:relative;z-index:2;padding:1rem;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;height:50vh;font-size:1.2rem;color:var(--text-secondary);gap:1rem}.table-match .loading .spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.table-match .error-message{position:relative;z-index:2;padding:1rem;text-align:center}@media(min-width:768px){.table-match .error-message{padding:2rem}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.table-match .game-over-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:modalFadeIn .4s ease-out}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.table-match .game-over-modal .modal-content{background:var(--bg-layer1);border-radius:24px;padding:3rem;max-width:95vw;max-height:95vh;overflow-y:auto;box-shadow:0 25px 50px #0006,0 0 0 1px #ffffff1a,inset 0 1px #ffffff1a;border:3px solid var(--accent-color);position:relative;animation:modalSlideIn .5s ease-out .1s both;scrollbar-width:none;-ms-overflow-style:none}.table-match .game-over-modal .modal-content::-webkit-scrollbar{display:none}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.table-match .game-over-modal .modal-content.large{min-width:700px;max-width:900px}@media(max-width:768px){.table-match .game-over-modal .modal-content.large{min-width:95vw;padding:2rem}}.table-match .game-over-modal .modal-content .game-over-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:3px solid var(--accent-color);position:relative}.table-match .game-over-modal .modal-content .game-over-header .celebration-emoji{font-size:4rem;margin-bottom:1rem;animation:bounce 1s ease-in-out infinite alternate}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}.table-match .game-over-modal .modal-content .game-over-header .game-over-title{font-size:3.5rem;font-weight:900;color:var(--accent-color);margin:0 0 1.5rem}@media(max-width:768px){.table-match .game-over-modal .modal-content .game-over-header .game-over-title{font-size:2.5rem}}.table-match .game-over-modal .modal-content .game-over-header .final-score{font-size:2rem;font-weight:700;color:var(--text-primary);background:var(--bg-layer2);padding:1rem 2rem;border-radius:16px;display:inline-block;border:2px solid var(--accent-color);box-shadow:0 8px 16px #0003;animation:scorePulse 1.5s ease-in-out infinite}@keyframes scorePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.table-match .game-over-modal .modal-content .winners-section{margin-bottom:3rem}.table-match .game-over-modal .modal-content .winners-section h3{font-size:2rem;color:var(--accent-color);margin-bottom:2rem;text-align:center;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.table-match .game-over-modal .modal-content .winners-section .winners-players{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap}.table-match .game-over-modal .modal-content .winners-section .winners-players .winner-player{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:2rem;background:var(--bg-layer2);border-radius:20px;border:3px solid var(--accent-color);min-width:250px;box-shadow:0 10px 20px #0003;transition:all .3s ease;position:relative;overflow:hidden}.table-match .game-over-modal .modal-content .winners-section .winners-players .winner-player:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0000004d}.table-match .game-over-modal .modal-content .winners-section .winners-players .winner-player .rating-change{text-align:center;padding:1rem;background:var(--bg-layer1);border-radius:12px;border:2px solid var(--accent-color);box-shadow:0 4px 8px #0000001a}.table-match .game-over-modal .modal-content .winners-section .winners-players .winner-player .rating-change .rating-label{font-size:1rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:600}.table-match .game-over-modal .modal-content .winners-section .winners-players .winner-player .rating-change .rating-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.table-match .game-over-modal .modal-content .winners-section .winners-players .winner-player .rating-change .rating-value .rating-delta{font-size:1rem;margin-left:.5rem;padding:.25rem .5rem;border-radius:6px}.table-match .game-over-modal .modal-content .winners-section .winners-players .winner-player .rating-change .rating-value .rating-delta.positive{color:#4ade80;background:#4ade8033}.table-match .game-over-modal .modal-content .winners-section .winners-players .winner-player .rating-change .rating-value .rating-delta.negative{color:#f87171;background:#f8717133}.table-match .game-over-modal .modal-content .rating-changes-section{margin-bottom:3rem}.table-match .game-over-modal .modal-content .rating-changes-section h3{font-size:1.8rem;color:var(--text-primary);margin-bottom:1.5rem;text-align:center;font-weight:700}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list{display:flex;flex-direction:column;gap:1rem}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:var(--bg-layer2);border-radius:12px;border:2px solid var(--border-color);transition:all .3s ease;position:relative}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item.winner{border-color:var(--accent-color);background:var(--bg-layer2);box-shadow:0 4px 12px #0000001a}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item:hover{transform:translate(5px);box-shadow:0 8px 16px #0000001a}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .player-info{display:flex;align-items:center;gap:.75rem}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .player-info .player-name{font-weight:700;color:var(--text-primary);font-size:1.1rem}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .player-info .winner-badge{font-size:1.5rem;animation:badgeSpin 2s linear infinite}@keyframes badgeSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .rating-info{display:flex;align-items:center;gap:.75rem;font-size:1rem}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .rating-info .old-rating,.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .rating-info .new-rating{font-weight:700;color:var(--text-primary);font-size:1.1rem}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .rating-info .arrow{color:var(--accent-color);font-size:1.2rem;font-weight:700}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .rating-info .rating-delta{font-weight:700;padding:.5rem 1rem;border-radius:8px;font-size:1rem}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .rating-info .rating-delta.positive{color:#4ade80;background:#4ade8033;border:1px solid rgba(74,222,128,.3)}.table-match .game-over-modal .modal-content .rating-changes-section .rating-changes-list .rating-change-item .rating-info .rating-delta.negative{color:#f87171;background:#f8717133;border:1px solid rgba(248,113,113,.3)}.table-match .game-over-modal .modal-content .modal-buttons{display:flex;justify-content:center;margin-top:3rem;padding-top:2rem;border-top:2px solid var(--border-color)}.table-match .game-over-modal .modal-content .modal-buttons .button{min-width:200px;padding:1rem 2rem;font-size:1.1rem;font-weight:700;border-radius:12px;transition:all .3s ease}.table-match .game-over-modal .modal-content .modal-buttons .button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0003}.character-creator-page{display:flex;flex-direction:column;height:100vh;width:100%;position:relative;overflow:hidden}.character-creator-page .character-viewer{flex:1;position:relative}.character-creator-page .character-viewer canvas{width:100%;height:100%}.character-creator-page .character-viewer .floating-save-button{position:absolute;top:20px;right:20px;padding:10px 20px;background-color:#3498db;color:#fff;border:none;border-radius:30px;font-weight:700;box-shadow:0 2px 5px #0003;z-index:10;cursor:pointer}.character-creator-page .character-viewer .floating-save-button:hover{background-color:#2980b9}.character-creator-page .character-viewer .save-form-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:20}.character-creator-page .character-viewer .save-form-overlay .save-form-container{background-color:#fff;padding:20px;border-radius:8px;width:80%;max-width:400px}.character-creator-page .character-viewer .save-form-overlay .save-form-container h3{margin-top:0;margin-bottom:15px;text-align:center}.character-creator-page .character-viewer .save-form-overlay .save-form-container input{width:100%;padding:10px;margin-bottom:15px;border:1px solid #ddd;border-radius:4px}.character-creator-page .character-viewer .save-form-overlay .save-form-container .save-button{width:100%;padding:10px;background-color:#2ecc71;color:#fff;border:none;border-radius:4px;font-weight:700;cursor:pointer}.character-creator-page .character-viewer .save-form-overlay .save-form-container .save-button:hover{background-color:#27ae60}.character-creator-page .character-viewer .save-form-overlay .save-form-container .save-button:disabled{background-color:#95a5a6;cursor:not-allowed}.character-creator-page .character-viewer .save-form-overlay .save-form-container .save-message{margin-top:10px;text-align:center;color:#e74c3c}.character-creator-page .character-viewer .save-form-overlay .save-form-container .save-message.success{color:#2ecc71}.character-creator-page .character-controls-mobile{position:fixed;bottom:0;left:0;right:0;background-color:#fff;box-shadow:0 -2px 10px #0000001a;z-index:10}.character-creator-page .character-controls-mobile .category-tabs{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.character-creator-page .character-controls-mobile .category-tabs::-webkit-scrollbar{display:none}.character-creator-page .character-controls-mobile .category-tabs .category-tab{flex:0 0 auto;padding:12px 20px;background-color:#f8f9fa;border:none;border-bottom:3px solid transparent;font-weight:700;cursor:pointer;white-space:nowrap}.character-creator-page .character-controls-mobile .category-tabs .category-tab.active{border-bottom-color:#3498db;color:#3498db}.character-creator-page .character-controls-mobile .category-tabs .category-tab:hover{background-color:#e9ecef}.character-creator-page .character-controls-mobile .category-content{max-height:35vh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.character-creator-page .character-controls-mobile .category-content::-webkit-scrollbar{width:6px}.character-creator-page .character-controls-mobile .category-content::-webkit-scrollbar-track{background:#0000001a;border-radius:10px}.character-creator-page .character-controls-mobile .category-content::-webkit-scrollbar-thumb{background:#0000004d;border-radius:10px}.character-creator-page .character-controls-mobile .category-content .part-options{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding-bottom:10px;margin-bottom:5px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.character-creator-page .character-controls-mobile .category-content .part-options::-webkit-scrollbar{height:6px}.character-creator-page .character-controls-mobile .category-content .part-options::-webkit-scrollbar-track{background:#0000001a;border-radius:10px}.character-creator-page .character-controls-mobile .category-content .part-options::-webkit-scrollbar-thumb{background:#0000004d;border-radius:10px}.character-creator-page .character-controls-mobile .category-content .part-options .part-option{flex:0 0 auto;min-width:120px;padding:10px;background-color:#f8f9fa;border:2px solid #ddd;border-radius:4px;text-align:center;cursor:pointer}.character-creator-page .character-controls-mobile .category-content .part-options .part-option.selected{border-color:#3498db;background-color:#e1f0fa;font-weight:700}.character-creator-page .character-controls-mobile .category-content .part-options .part-option:hover{background-color:#e9ecef}@media(min-width:768px){.character-creator-page{flex-direction:row}.character-creator-page .character-viewer{flex:2}.character-creator-page .character-controls-mobile{position:relative;flex:1;max-width:300px;box-shadow:none;border-left:1px solid #ddd}.character-creator-page .character-controls-mobile .category-tabs{flex-direction:column}.character-creator-page .character-controls-mobile .category-tabs .category-tab{border-bottom:none;border-left:3px solid transparent}.character-creator-page .character-controls-mobile .category-tabs .category-tab.active{border-left-color:#3498db;border-bottom-color:transparent}.character-creator-page .character-controls-mobile .category-content{max-height:none;height:calc(100vh - 60px);overflow-y:auto}}.color-options{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding:1rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.color-options::-webkit-scrollbar{height:6px}.color-options::-webkit-scrollbar-track{background:#0000001a;border-radius:10px}.color-options::-webkit-scrollbar-thumb{background:#0000004d;border-radius:10px}.color-options .color-option{width:50px;height:50px;border-radius:50%;border:2px solid #ddd;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0}.color-options .color-option.selected{border-color:#3498db;box-shadow:0 0 0 2px #3498db}.color-options .color-option .checkmark{color:#fff;text-shadow:0 0 2px black;font-size:20px}.size-slider-container{padding:1rem}.size-slider-container label{color:#333;font-size:14px;margin-bottom:10px;display:block}.size-slider-container .size-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:#ddd;outline:none;opacity:.7;transition:opacity .2s}.size-slider-container .size-slider:hover{opacity:1}.size-slider-container .size-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#3498db;cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.size-slider-container .size-slider::-webkit-slider-thumb:hover{background:#2980b9}.size-slider-container .size-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#3498db;cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.size-slider-container .size-slider::-moz-range-thumb:hover{background:#2980b9}@font-face{font-family:GogoPosterpunch;src:url(/assets/fonts/GoGoPosterPunch.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--font-special: "GogoPosterpunch", sans-serif}:root{--primary-color: #177e74;--secondary-color: #2a5298;--accent-color: #e6c88a;--success-color: #4CAF50;--error-color: #ff4444;--warning-color: #ff9800;--bg-base: rgba(0, 0, 0, .8);--bg-layer1: rgb(32, 32, 32);--bg-layer2: rgba(45, 45, 45);--bg-modal: rgba(30, 30, 30);--bg-light: #ffffff;--bg-gradient: linear-gradient( 45deg, #000000, #1a1a1a, rgba(64, 224, 208, .4), #1a1a1a, rgba(186, 85, 211, .4), rgba(77, 17, 93, .4), #1a1a1a, #000000 );--text-primary: #cccccc;--text-secondary: #888888;--text-light: #ffffff;--text-muted: rgba(255, 255, 255, .6);--font-primary: "Roboto", sans-serif;--font-secondary: "Open Sans", sans-serif;--font-special: "GogoPosterpunch", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 16px;--border-radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--icon-spacing-sm: .5rem;--icon-spacing-md: .75rem;--neon-primary: rgba(30, 60, 114, .8);--neon-secondary: rgba(34, 183, 191, .8);--neon-accent: rgba(187, 77, 195, .8)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body,#root,.App{margin:0;padding:0;min-height:100vh;font-family:var(--font-primary);color:var(--text-light)}body{background:#000;background-size:5000px 5000px}#root{background:var(--bg-gradient);background-size:5000px 5000px}.bg-layer1{background-color:var(--bg-layer1)}.bg-layer2,.card:hover,.player-card:hover,.match-card:hover{background-color:var(--bg-layer2)}.icon-margin{margin-right:var(--icon-spacing-sm)}.icon-margin-left{margin-left:var(--icon-spacing-sm)}
