body{margin:0;font-family:Inter,-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;background-color:#1a1d24}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--background-gradient-start: #28112B;--background-gradient-end: #2A342B;--card-color: rgba(30, 31, 40, .6);--primary-accent: #4f772d;--primary-accent-hover: #90a955;--success-color: #6EE7B7;--danger-color: #F87171;--danger-hover: #f65353;--text-primary: #EFEFEF;--text-secondary: #A9B1BD;--border-color: rgba(255, 255, 255, .1)}body{margin:0;font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-gradient-start);background-image:linear-gradient(160deg,var(--background-gradient-start) 0%,var(--background-gradient-end) 100%);background-attachment:fixed}.form-container,.match-card-new,.scoreboard,.rivalry-card,.found-user-card,.empty-state-message{background-color:var(--card-color);border:1px solid var(--border-color);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.dashboard-container,.login-container{min-height:100vh;padding:2rem;box-sizing:border-box;background-color:var(--background-color);color:var(--text-primary);display:flex;flex-direction:column;align-items:center;background-color:#fffc;padding:20px;border-radius:8px}.dashboard-content{width:100%;max-width:600px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:15px}h2,h3{font-weight:700}h1{font-size:2rem;margin-bottom:.5rem}p{color:var(--text-secondary);margin-top:0;max-width:60ch;text-align:center}.scoreboard{border:1px solid var(--card-color);border-radius:12px}.scoreboard{display:flex;justify-content:space-around;align-items:center;width:100%;padding:20px;border:1px solid var(--border-color);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:12px;box-shadow:0 8px 24px #00000080}.score-item{display:flex;flex-direction:column;align-items:center}.score-label{font-size:1.2rem;color:var(--text-secondary);margin-bottom:5px;font-weight:500}.score-value{font-size:2.5rem;font-weight:700}.score-item.wins .score-value{color:var(--success-color)}.score-item.losses .score-value{color:var(--danger-color)}.score-item.draws .score-value{color:khaki}.match-form,.form-container{display:flex;flex-direction:column;gap:15px;margin-top:20px;padding:2rem;background-color:var(--card-color);border-radius:12px;max-width:400px;box-shadow:0 8px 24px #0003;border:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;max-width:320px;box-sizing:border-box}input,select{width:100%;padding:12px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--text-primary);font-size:16px;box-sizing:border-box;transition:border-color .2s,box-shadow .2s}input:focus,select:focus{outline:none;border-color:var(--primary-accent);box-shadow:0 0 0 3px #0af3}.score-inputs{display:flex;gap:10px}.score-inputs input{text-align:center}button{padding:12px 20px;border-radius:8px;border:none;background-color:var(--primary-accent);color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .2s,transform .1s}button:hover{background-color:var(--primary-accent-hover)}button:active{transform:scale(.98)}button:disabled{background-color:#555;cursor:not-allowed}.logout-button{background-color:transparent;border:1px solid var(--danger-color);color:var(--danger-color);margin-top:40px}.match-card{background-color:var(--card-color);border-radius:12px;padding:15px 20px;margin-bottom:15px;box-shadow:0 4px 12px #00000026;position:relative;border:1px solid var(--border-color)}.match-card-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:10px;margin-bottom:10px}.match-card-header strong{font-size:1.2rem;color:var(--primary-accent);font-weight:700}.match-card-header span{font-size:.8rem;color:var(--text-secondary)}.match-card-body{font-size:1.1rem;margin-bottom:10px;display:flex;justify-content:space-around}.match-card-footer{font-size:.9rem;color:var(--text-secondary)}.match-card-footer strong{color:var(--text-primary)}.delete-button{position:absolute;top:15px;right:-35px;background-color:transparent;color:var(--text-secondary);width:30px;height:30px;opacity:.5;transition:opacity .2s,color .2s}.match-card:hover .delete-button{opacity:1}.delete-button:hover{color:var(--danger-color);background-color:transparent}.empty-state-message{text-align:center;margin-top:30px;padding:20px;background-color:var(--card-color);border-radius:8px;color:var(--text-secondary)}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;background-color:var(--background-color);color:var(--text-primary)}.back-button{align-self:flex-start;margin-bottom:20px;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.back-button:hover{background-color:var(--card-color);color:var(--text-primary)}.found-user-card{margin-top:20px;padding:20px;background-color:var(--card-color);border-radius:12px;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:15px}.found-user-card p{margin:0;color:var(--text-primary);font-size:1.1rem}.found-user-avatar{width:80px;height:80px;border-radius:50%;border:3px solid var(--border-color);object-fit:cover}.logout-button-secondary{margin-top:20px;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);font-weight:500}.logout-button-secondary:hover{background-color:var(--card-color);color:var(--text-primary)}.rivalry-card{background-color:var(--card-color);border:1px solid var(--border-color);border-radius:12px;padding:20px;margin-bottom:15px;display:flex;justify-content:space-between;align-items:center}.rivalry-card p{margin:0;color:var(--text-primary)}.accept-button{background-color:var(--success-color)}.accept-button:hover{background-color:#4cae4c}.decline-button{background-color:var(--danger-color)}.decline-button:hover{background-color:var(--danger-hover)}.info-message{text-align:center;color:var(--text-secondary);font-style:italic}.avatar-picker{width:100%;max-width:400px;text-align:center;margin-bottom:20px}.avatar-list{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;margin-top:10px}.avatar-list img{width:60px;height:60px;border-radius:50%;cursor:pointer;border:3px solid transparent;transition:border-color .2s,transform .2s}.avatar-list img:hover{transform:scale(1.1)}.avatar-list img.selected{border-color:var(--primary-accent);transform:scale(1.1)}.welcome-header h1{margin:0}.welcome-header p{margin:0;font-size:1.1rem}.dashboard-header{display:flex;justify-content:space-around;align-items:center;width:100%;margin-bottom:20px;background-color:var(--card-color);padding:1rem 2rem;border-radius:12px;border:1px solid var(--border-color)}.dashboard-header,.scoreboard,.match-form,.matches-list{margin-top:0;margin-bottom:0;width:100%}.match-form{max-width:none}.matches-list h2{margin-bottom:20px}.player-display{display:flex;flex-direction:column;align-items:center;gap:8px}.header-avatar{width:70px;height:70px;border-radius:50%;border:3px solid var(--border-color)}.player-username{font-weight:500;color:var(--text-secondary);font-size:.9rem}.vs-text{font-size:2.5rem;font-weight:700;color:var(--primary-accent)}.scoreboard-avatar{width:50px;height:50px;border-radius:50%;margin-bottom:5px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:var(--card-color);padding:2rem;border-radius:12px;width:90%;max-width:500px;position:relative;box-shadow:0 10px 30px #0000004d}.close-button{position:absolute;top:15px;right:15px;background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer}.modal-content h2{text-align:center;margin-top:0}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:20px;margin-top:20px}.game-item{display:flex;flex-direction:column;align-items:center;gap:10px;cursor:pointer;padding:10px;border-radius:8px;transition:background-color .2s}.game-item:hover{background-color:var(--background-color)}.game-item img{width:80px;height:80px;object-fit:cover;border-radius:8px}.game-item span{font-weight:500;color:var(--text-primary)}.game-selector{display:flex;align-items:center;gap:15px;width:95.8%;padding:12px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--background-color);cursor:pointer;transition:border-color .2s,box-shadow .2s;justify-content:center}.game-selector:hover{border-color:var(--primary-accent)}.game-selector img{width:40px;height:40px;border-radius:6px}.game-selector span{font-size:1rem;font-weight:500;color:var(--text-primary)}.game-selector .placeholder-text{color:var(--text-secondary)}.matches-list{margin-top:40px;width:100%}.matches-list h2{text-align:center}.match-card-new{display:flex;align-items:center;background-color:var(--card-color);border:1px solid var(--border-color);border-radius:12px;padding:1rem;margin-bottom:1rem;gap:1rem}.match-card-game-logo{flex-shrink:0}.match-card-game-logo img{width:50px;height:50px;border-radius:8px;object-fit:cover;background-color:var(--background-color)}.match-card-details{flex-grow:1;display:flex;flex-direction:column;gap:.5rem}.match-card-players{display:flex;align-items:center;justify-content:center;gap:1rem;font-size:1.5rem;font-weight:700}.player-score{display:flex;align-items:center;gap:.75rem}.player-avatar{width:35px;height:35px;border-radius:50%;object-fit:cover}.score-separator{color:var(--text-secondary)}.winner{color:var(--success-color)}.winner-icon{color:gold;margin-bottom:-2px}.match-card-date{font-size:.8rem;color:var(--text-secondary);text-align:center}.match-card-actions{flex-shrink:0}.delete-button-new{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1rem;padding:.5rem;border-radius:50%;transition:color .2s,background-color .2s}.delete-button-new:hover{color:var(--danger-color);background-color:#d9534f1a}.toggle-form{margin-top:20px;color:var(--text-secondary);cursor:pointer;text-decoration:underline;transition:color .2s}.toggle-form:hover{color:var(--primary-accent)}.layout-bottom{justify-content:flex-end;padding-bottom:8vh}.background-video-container{position:fixed;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:-1}.background-video{position:absolute;top:50%;left:50%;min-width:100%;min-height:100%;width:auto;height:auto;transform:translate(-50%,-50%)}.overlay-content{position:relative;z-index:1;width:100%;height:100%;display:flex;flex-direction:column;align-items:center}.app-container{position:relative;width:100vw;height:100vh;overflow:hidden}.video-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.video-background video{width:100%;height:100%;object-fit:cover}.video-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080}.content-wrapper{position:relative;z-index:2;width:100%;height:100%;overflow-y:auto}.dashboard-container,.login-container{background-color:transparent}.login-logo{width:100%;height:auto;display:block;margin:0 auto;max-height:150px;max-width:250px;margin-bottom:4rem}.dashboard-container{min-height:100vh;padding:2rem;box-sizing:border-box;color:var(--text-primary);display:flex;flex-direction:column;align-items:center;background-color:transparent}.dashboard-content{width:100%;max-width:600px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:30px}.welcome-header{display:flex;align-items:center;gap:15px;width:100%;margin-bottom:20px}.welcome-avatar{width:60px;height:60px;border-radius:50%;border:2px solid var(--primary-accent)}.rivalry-section{width:100%}.rivalry-section h2{text-align:center;margin-bottom:15px;color:var(--text-secondary)}.rivalry-card{display:flex;justify-content:space-between;align-items:center;padding:20px}.rivalry-card.active{cursor:pointer;transition:background-color .2s}.rivalry-card.active:hover{background-color:#3c414d}.rival-info{display:flex;align-items:center;gap:12px}.rival-info img{width:40px;height:40px;border-radius:50%}.rivalry-actions{display:flex;gap:10px}.rivalry-arrow-icon{color:var(--text-secondary);font-size:1.5rem;opacity:.7;transition:opacity .2s,transform .2s}.rivalry-card.active:hover .rivalry-arrow-icon{opacity:1;transform:translate(5px)}.empty-state-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;opacity:.7;filter:invert(.45)}.empty-state-illustration{width:100%;max-width:150px;margin-bottom:1rem}.info-message{text-align:center;color:var(--text-secondary);font-style:italic;margin:0}.logout-button-top-right{align-self:flex-end;position:absolute;margin-bottom:20px;background-image:none;background-color:transparent;border:1px solid var(--danger-color);color:var(--danger-color);font-weight:500;padding:.5rem 1rem;height:44px}.logout-button-top-right:hover{background-color:var(--danger-hover);color:#fff;background-position:initial}.accept-button{background-image:none;background-color:var(--success-color)}.decline-button{background-image:none;background-color:var(--danger-color)}.logout-button{background-image:none;background-color:transparent;border:1px solid var(--danger-color);color:var(--danger-color)}.logout-button:hover{background-color:var(--danger-color);color:#fff}.friends-fab{position:fixed;bottom:2rem;right:2rem;width:60px;height:60px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:1.5rem;z-index:1001;box-shadow:0 4px 12px #0000004d}.friends-panel{position:fixed;bottom:0;right:2rem;width:100%;max-width:380px;height:500px;background-color:var(--card-base-color);border:1px solid var(--border-color);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:12px 12px 0 0;box-shadow:0 -4px 20px #0000004d;z-index:1000;transform:translateY(100%);transition:transform .3s ease-in-out;display:flex;flex-direction:column}.friends-panel.open{transform:translateY(0)}.friends-panel-header h2{margin:0;font-size:1.2rem}.friends-panel-header button{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;padding:0}.friends-panel-content{padding:1.5rem;overflow-y:auto;flex-grow:1}.friends-panel-tabs{display:flex;justify-content:space-between;border-bottom:1px solid var(--border-color);flex-shrink:0}.tab-button{flex-grow:1;text-align:center;padding:1rem;background-color:transparent;border:none;border-bottom:2px solid transparent;color:#ffffff80;transition:all .2s ease-in-out}.tab-button:hover{color:var(--text-primary);background-color:#ffffff0d}.tab-button.active{border-bottom-color:var(--highlight-color);color:var(--text-primary);font-weight:700;background-color:#ffffff1a}.friend-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.friend-item{display:flex;justify-content:space-between;align-items:center;background-color:#ffffff0d;padding:.75rem 1rem;border-radius:8px;cursor:pointer}.request-actions{display:flex;gap:.5rem}.accept-btn{background-color:#4caf4f41;color:#fff;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer}.remove-btn{background-color:#f443364b;color:#fff;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer}.empty-list-message{text-align:center;color:var(--text-secondary);font-style:italic;margin-top:2rem}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{padding:2rem;border-radius:12px;box-shadow:0 0 20px #00000080;width:90%;max-width:400px;display:flex;flex-direction:column;gap:1.5rem}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:1rem}.modal-header h2{color:#fff;margin:0}.add-friend-form{display:flex;flex-direction:column;gap:1rem}.add-friend-form input{padding:.75rem 1rem;background-color:#ffffff0d;border:1px solid var(--border-color);border-radius:8px;color:#fff}.add-friend-form button{padding:.75rem 1rem;background-color:var(--highlight-color);color:#000;border:none;border-radius:8px;font-weight:700;cursor:pointer}.add-friend-header-btn{background:none;border:none;color:var(--text-primary);font-size:1.2rem;padding:0;cursor:pointer}.friends-panel-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.add-friend-form button{background:var(--primary-accent);border:none;color:var(--text-secondary);font-size:1.2em;padding:5px;cursor:pointer}.profile-picture{width:40px;height:40px;border-radius:50%;object-fit:cover;margin-right:1rem}.profile-icon{width:40px;height:40px;color:var(--text-secondary);margin-right:1rem}.friend-item{display:flex;justify-content:space-between;align-items:center;background-color:#ffffff0d;padding:.75rem 1rem;border-radius:8px;transition:background-color .2s ease-in-out}.friend-item:hover{background-color:#ffffff1a}.friend-info{display:flex;align-items:center;flex-grow:1}.friend-info span{font-weight:700}.username-text{color:var(--text-primary);font-size:1rem}
