:root{--primary-bg: #0f102c;--secondary-bg: #1e1f48;--card-bg: #2a2b5e;--text-primary: #ffffff;--text-secondary: #c0c0e1;--accent-color: #e032ff;--accent-gradient: linear-gradient(90deg, #e032ff, #7f00ff);--success-color: #39e3b1;--warning-color: #ffc107;--border-color: #4a4a7c;--font-family: "Poppins", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--primary-bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{max-width:800px;margin:0 auto;padding:1rem}button{font-family:var(--font-family);cursor:pointer;border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;background-color:var(--secondary-bg);color:var(--text-primary);transition:all .25s;border:1px solid var(--border-color)}button:hover{border-color:var(--accent-color)}button.primary{background:var(--accent-gradient);color:#fff;border:none}button:disabled{background-color:#3a3a5a;color:#7a7a9a;cursor:not-allowed;border-color:transparent}input,select{font-family:var(--font-family);padding:.6em;border-radius:6px;border:1px solid var(--border-color);background-color:var(--secondary-bg);color:var(--text-primary);text-align:center}.app-header{background-color:var(--secondary-bg);padding:1rem;border-radius:12px;margin-bottom:2rem;border:1px solid var(--border-color)}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.header-top h1{font-size:1.8rem;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.header-user-info{display:flex;align-items:center;gap:1rem;color:var(--text-secondary)}.header-user-info button{font-size:.9em;padding:.5em 1em}.navigation{display:flex;gap:.5rem;background-color:var(--primary-bg);padding:.5rem;border-radius:8px;flex-wrap:wrap}.navigation button{flex-grow:1}.navigation button.active{background:var(--accent-gradient);color:#fff;border:none}.classification-page .leaderboard{margin-bottom:2rem}.leaderboard{background-color:var(--secondary-bg);padding:1.5rem;border-radius:12px}.leaderboard h2{margin-bottom:1rem;text-align:center;font-size:1.5rem}.leaderboard-list{list-style:none}.leaderboard-item{display:flex;align-items:center;padding:1rem;border-radius:8px;margin-bottom:.5rem;background-color:var(--card-bg);border:1px solid var(--border-color);transition:transform .2s}.leaderboard-item.current-user{border-left:4px solid var(--accent-color);transform:scale(1.02)}.leaderboard-item:first-child{background:linear-gradient(90deg,#d4af37,#b48a00);color:#111;font-weight:700}.player-rank{font-weight:700;margin-right:1rem}.player-name-and-stats{flex-grow:1}.player-name{font-weight:600}.player-stats{display:flex;flex-wrap:wrap;gap:.25rem 1rem;margin-top:.25rem;font-size:.85em;font-weight:400;color:var(--text-secondary)}.leaderboard-item:first-child .player-stats{color:#333}.player-score{font-weight:700;font-size:1.2rem;margin-left:1rem}.jornada-card{background-color:var(--secondary-bg);padding:1.5rem;border-radius:12px;margin-bottom:1.5rem;border:1px solid var(--border-color)}.jornada-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.jornada-header h3{font-size:1.4rem}.jornada-type{background-color:var(--primary-bg);padding:.3rem .8rem;border-radius:12px;font-size:.9rem;font-weight:500;color:var(--text-secondary)}.match-card{background-color:var(--card-bg);padding:1rem;border-radius:8px;margin-bottom:1rem;border:1px solid var(--border-color)}.match-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.match-info span{font-size:1.1rem;font-weight:600;text-align:center;flex:1}.match-prediction,.match-result{display:flex;justify-content:center;align-items:center;gap:.5rem}.match-prediction input,.match-result input{width:50px;font-size:1.2rem;font-weight:700}.match-footer{margin-top:1rem;text-align:right;display:flex;justify-content:space-between;align-items:center;min-height:30px}.match-footer .points{font-weight:700;color:var(--success-color);font-size:1.1rem}.match-footer .status{font-style:italic;color:var(--text-secondary)}.admin-panel{text-align:center;padding:1rem;background-color:var(--secondary-bg);border-radius:12px;margin-bottom:1.5rem}.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}.modal-content{background-color:var(--secondary-bg);padding:2rem;border-radius:12px;width:90%;max-width:500px;border:1px solid var(--border-color);overflow-y:auto;max-height:90vh}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-header h2{font-size:1.5rem}.modal-body .form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-secondary)}.form-group input,.form-group select{width:100%;text-align:left;padding:.8em}.modal-body .match-inputs{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.match-inputs input{flex:1;text-align:left}.match-inputs span{padding:0 .5rem}.match-inputs button{padding:.4rem .8rem;background-color:var(--card-bg)}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.chart-container{background-color:var(--secondary-bg);padding:1.5rem;border-radius:12px}.chart-container h2{margin-bottom:1rem;text-align:center;font-size:1.5rem}.chart-wrapper{position:relative;width:100%}.chart-wrapper svg{width:100%;height:auto}.chart-wrapper .grid-line line{stroke:var(--border-color);stroke-dasharray:2,4}.chart-wrapper text{fill:var(--text-secondary);font-size:18px}.chart-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:.4rem;margin-bottom:.25rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.7em}.legend-color{width:12px;height:12px;border-radius:3px}.chart-tooltip{position:fixed;transform:translate(-50%,-120%);background-color:var(--primary-bg);border:1px solid var(--accent-color);border-radius:8px;padding:.5rem 1rem;font-size:.9em;pointer-events:none;z-index:10;box-shadow:0 4px 12px #0000004d;white-space:nowrap}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh}.login-box{background-color:var(--secondary-bg);padding:2.5rem;border-radius:12px;border:1px solid var(--border-color);width:100%;max-width:400px;text-align:center}.login-box h1{margin-bottom:2rem;font-size:1.8rem}.login-form{display:flex;flex-direction:column;gap:1rem}.login-form input{text-align:left;padding:.8rem;font-size:1rem}.login-form button{margin-top:1rem;padding:.8rem;font-size:1.1rem}.form-toggle{background:none;border:none;color:var(--accent-color);margin-top:1.5rem;font-size:.9em;padding:0}.form-toggle:hover{text-decoration:underline}.loading-container{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:1.5rem;color:var(--text-secondary)}.profile-view{background-color:var(--secondary-bg);padding:1.5rem;border-radius:12px}.profile-view h2{margin-bottom:2rem;text-align:center}.profile-section{background-color:var(--card-bg);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);margin-bottom:1.5rem}.profile-section h3{margin-bottom:1.5rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.profile-section form{display:flex;flex-direction:column;gap:1rem}.profile-section .form-group input{width:100%}.results-viewer-container{background-color:var(--secondary-bg);padding:1.5rem;border-radius:12px}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.results-header h3{font-size:1.5rem;text-align:center;flex-grow:1}.results-header button{font-size:1.5rem;background:var(--card-bg);padding:.2em .8em}.results-body{display:grid;gap:1rem}.results-match-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.match-teams{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--border-color);font-weight:600}.match-final-result{font-size:1.5rem;font-weight:700;padding:0 1.5rem;color:var(--accent-color)}.predictions-list{list-style:none;display:grid;gap:.5rem}.prediction-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-radius:6px;background-color:var(--primary-bg);font-size:.9rem;color:var(--text-secondary)}.prediction-item.exact-match{background-color:#39e3b126;color:var(--text-primary);border-left:3px solid var(--success-color)}.prediction-item.outcome-match{background-color:#ffc1071a;color:var(--text-primary);border-left:3px solid var(--warning-color)}.prediction-player-name{font-weight:500;flex-basis:40%}.player-prediction{font-weight:600;flex-basis:30%;text-align:center}.prediction-points{font-weight:600;flex-basis:30%;text-align:right}.prediction-item.exact-match .prediction-points{color:var(--success-color)}.prediction-item.outcome-match .prediction-points{color:var(--warning-color)}.user-predictions-view{background-color:var(--secondary-bg);padding:1.5rem;border-radius:12px;margin-top:1.5rem;border:1px solid var(--border-color)}.user-predictions-view h3{margin-bottom:1.5rem;text-align:center;font-size:1.4rem;color:var(--accent-color)}.user-predictions-block{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-bottom:1rem}.user-predictions-block h4{margin-bottom:1rem;border-bottom:1px dashed var(--border-color);padding-bottom:.5rem}.user-prediction-item .tab{display:inline-block;margin-left:20px}.rules-view{background-color:var(--secondary-bg);padding:1.5rem 2rem;border-radius:12px}.rules-view h2{margin-bottom:2rem;text-align:center;font-size:1.5rem}.rules-section{margin-bottom:2rem}.rules-section:last-child{margin-bottom:0}.rules-section h3{color:var(--accent-color);margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.rules-section p,.rules-section ul{line-height:1.6;color:var(--text-secondary)}.rules-section ul{padding-left:20px;list-style:disc}.rules-section ul li{margin-bottom:.5rem}.rules-table{width:100%;border-collapse:collapse;margin-top:1rem}.rules-table th,.rules-table td{padding:.8rem 1rem;border:1px solid var(--border-color);text-align:left}.rules-table th{background-color:var(--card-bg);font-weight:600}.rules-table td:nth-child(2),.rules-table td:nth-child(3){text-align:center;font-weight:700;font-size:1.1em}.rules-table tr:nth-child(2n){background-color:#0000001a}
