.leaderboard-container{min-height:100vh;background:transparent;padding:48px 20px}.leaderboard-header{max-width:1000px;margin:0 auto 40px;text-align:center;color:var(--fg)}.leaderboard-header h1{font-size:48px;margin-bottom:10px;text-transform:uppercase;letter-spacing:.08em;text-shadow:0 18px 60px rgba(0,0,0,.55)}.subtitle{font-size:18px;color:var(--muted);margin-bottom:10px}.last-update{font-size:14px;color:var(--muted-2)}.leaderboard-main{max-width:1000px;margin:0 auto}.loading,.error,.no-data{background:var(--panel);border:1px solid var(--border);padding:60px 40px;border-radius:var(--r-lg);text-align:center;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.loading{color:var(--muted);font-size:18px}.error{color:#eaf1f7eb;background:#e14c3b1f;border-color:#e14c3b40;font-size:18px}.no-data p{font-size:20px;color:#eaf1f7eb;margin-bottom:10px}.no-data-subtitle{font-size:16px!important;color:var(--muted)!important}.table-wrapper{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.leaderboard-table{width:100%;border-collapse:collapse}.leaderboard-table thead{background:transparent;color:#eaf1f7d9;border-bottom:1px solid rgba(255,255,255,.1)}.leaderboard-table th{padding:20px;text-align:left;font-weight:600;font-size:16px;text-transform:uppercase;letter-spacing:.5px}.leaderboard-table tbody tr{border-bottom:1px solid rgba(255,255,255,.08);transition:background .3s}.leaderboard-table tbody tr:hover{background:#ffffff0a}.leaderboard-table tbody tr:last-child{border-bottom:none}.leaderboard-table td{padding:20px;font-size:16px}.rank-col{width:80px;text-align:center}.score-col,.precision-col{width:120px;text-align:center}.medal{font-size:28px}.rank-number{font-weight:600;color:#eaf1f7bf;font-size:18px}.name-col,.lastname-col{font-weight:500;color:#eaf1f7eb}.score-value{display:inline-block;padding:6px 16px;background:linear-gradient(135deg,#e14c3bf2,#2ad3c78c);color:#fff;border-radius:20px;font-weight:600;font-size:18px}.precision-value{font-weight:600;color:var(--accent-2);font-size:18px}.top-1{background:linear-gradient(90deg,rgba(255,215,0,.1) 0%,transparent 100%)}.top-2{background:linear-gradient(90deg,rgba(192,192,192,.1) 0%,transparent 100%)}.top-3{background:linear-gradient(90deg,rgba(205,127,50,.1) 0%,transparent 100%)}.leaderboard-footer{max-width:1000px;margin:30px auto 0;text-align:center;color:var(--muted);font-size:14px}@media (max-width: 768px){.leaderboard-header h1{font-size:36px}.leaderboard-table th,.leaderboard-table td{padding:12px 8px;font-size:14px}.score-value{font-size:16px;padding:4px 12px}.precision-value{font-size:16px}.medal{font-size:24px}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:transparent;padding:24px 16px}.login-box{background:var(--panel);padding:40px;border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:100%;max-width:400px}.login-box h1{margin-bottom:8px;color:var(--fg);font-size:28px;text-align:center;text-transform:uppercase;letter-spacing:.06em}.login-subtitle{text-align:center;color:var(--muted);margin-bottom:30px;font-size:14px}.form-group label{display:block;margin-bottom:8px;color:#eaf1f7d9;font-weight:500;font-size:14px}.form-group input:disabled{background:#0000001f;cursor:not-allowed;opacity:.75}.login-button{width:100%;padding:14px;background:linear-gradient(135deg,#e14c3bf2,#2ad3c78c);color:#fff;border:none;border-radius:var(--r-sm);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 50px #00000059}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed}.admin-container{min-height:100vh;background:transparent}.admin-header{background:#ffffff0f;color:var(--fg);border-bottom:1px solid rgba(255,255,255,.12);padding:20px 0;box-shadow:0 2px 10px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-header-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}.admin-header-left{display:flex;flex-direction:column;gap:8px}.admin-header h1{font-size:28px;margin:0}.admin-nav{display:flex;gap:10px}.admin-navlink{display:inline-flex;align-items:center;padding:8px 12px;border-radius:var(--r-sm);text-decoration:none;color:var(--fg);background:#0000002e;border:1px solid rgba(255,255,255,.12);font-weight:600;font-size:14px}.admin-navlink:hover{background:#ffffff0f;border-color:#2ad3c759}.admin-navlink.active{background:#2ad3c729;border-color:#2ad3c773}.admin-header-actions{display:flex;align-items:center;gap:20px}.username{font-size:14px;color:var(--muted)}.logout-button{padding:8px 20px;background:#0003;color:var(--fg);border:1px solid rgba(255,255,255,.2);border-radius:var(--r-sm);cursor:pointer;font-weight:600;transition:background .3s}.logout-button:hover{background:#ffffff14}.admin-main{max-width:1200px;margin:0 auto;padding:40px 20px}.search-section{background:var(--panel);border:1px solid var(--border);padding:30px;border-radius:var(--r-lg);box-shadow:var(--shadow);margin-bottom:30px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.search-section h2{margin-bottom:20px;color:var(--fg);font-size:20px}.search-box{display:flex;gap:10px}.search-box input{flex:1;padding:12px;background:#00000038;border:1px solid rgba(255,255,255,.14);border-radius:var(--r-sm);font-size:16px;color:var(--fg)}.search-box input:focus{outline:none;border-color:#2ad3c78c;box-shadow:0 0 0 3px #2ad3c72e}.search-box button{padding:12px 30px;background:linear-gradient(135deg,#e14c3bf2,#2ad3c78c);color:#fff;border:none;border-radius:var(--r-sm);font-weight:600;cursor:pointer;transition:background .3s}.search-box button:hover:not(:disabled){background:linear-gradient(135deg,#e14c3b,#2ad3c7a6)}.search-box button:disabled{opacity:.5;cursor:not-allowed}.games-section{background:var(--panel);border:1px solid var(--border);padding:30px;border-radius:var(--r-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.games-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.games-header h2{color:var(--fg);font-size:20px;margin:0}.refresh-button{padding:8px 20px;background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:var(--r-sm);cursor:pointer;font-weight:600;transition:background .3s}.refresh-button:hover{background:#ffffff1f}.loading,.error,.no-games{text-align:center;padding:40px;color:var(--muted)}.games-list{display:grid;gap:15px}.game-card{display:block;padding:20px;background:#0000002e;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);text-decoration:none;color:inherit;transition:all .3s}.game-card:hover{border-color:#2ad3c759;background:#ffffff0f;transform:translateY(-2px);box-shadow:0 16px 50px #00000059}.game-id{font-size:16px;margin-bottom:10px;color:#eaf1f7eb}.game-id strong{color:var(--accent-2)}.game-info{display:flex;gap:20px;margin-bottom:8px;font-size:14px;color:var(--muted)}.game-date{font-size:13px;color:var(--muted-2)}@media (max-width: 768px){.admin-header-content{flex-direction:column;align-items:flex-start;gap:12px}}.adminlb-container{min-height:100vh;background:transparent}.adminlb-header{background:#ffffff0f;color:var(--fg);border-bottom:1px solid rgba(255,255,255,.12);padding:20px 0;box-shadow:0 2px 10px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.adminlb-header-content{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;gap:16px}.adminlb-title h1{font-size:28px;margin:0 0 8px}.adminlb-nav{display:flex;gap:10px}.adminlb-navlink{display:inline-flex;align-items:center;padding:8px 12px;border-radius:var(--r-sm);text-decoration:none;color:var(--fg);background:#0000002e;border:1px solid rgba(255,255,255,.12);font-weight:600;font-size:14px}.adminlb-navlink:hover{background:#ffffff0f;border-color:#2ad3c759}.adminlb-navlink.active{background:#2ad3c729;border-color:#2ad3c773}.adminlb-actions{display:flex;align-items:center;gap:16px}.adminlb-username{font-size:14px;color:var(--muted)}.adminlb-logout{padding:8px 20px;background:#0003;color:var(--fg);border:1px solid rgba(255,255,255,.2);border-radius:var(--r-sm);cursor:pointer;font-weight:600;transition:background .3s}.adminlb-logout:hover{background:#ffffff14}.adminlb-main{max-width:1200px;margin:0 auto;padding:40px 20px}.adminlb-panel{background:var(--panel);border:1px solid var(--border);padding:30px;border-radius:var(--r-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.adminlb-filter{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px}.adminlb-filter-left{display:flex;flex-direction:column;gap:8px}.adminlb-label{color:var(--muted);font-size:14px;font-weight:600}.adminlb-date{padding:10px 12px;background:#00000038;border:1px solid rgba(255,255,255,.14);border-radius:var(--r-sm);font-size:14px;color:var(--fg)}.adminlb-date:focus{outline:none;border-color:#2ad3c78c;box-shadow:0 0 0 3px #2ad3c72e}.adminlb-refresh{padding:10px 18px;background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:var(--r-sm);cursor:pointer;font-weight:600;transition:background .3s;height:40px}.adminlb-refresh:hover{background:#ffffff1f}.adminlb-loading,.adminlb-error,.adminlb-empty{text-align:center;padding:30px;color:var(--muted)}.adminlb-error{color:#eaf1f7eb;background:#e14c3b1f;border:1px solid rgba(225,76,59,.25);border-radius:var(--r-md)}.adminlb-table-wrap{overflow:hidden;border-radius:var(--r-lg);border:1px solid rgba(255,255,255,.1)}.adminlb-table{width:100%;border-collapse:collapse}.adminlb-table thead{color:#eaf1f7d9;border-bottom:1px solid rgba(255,255,255,.1)}.adminlb-table th,.adminlb-table td{padding:16px;text-align:left;font-size:14px}.adminlb-table tbody tr{border-bottom:1px solid rgba(255,255,255,.08)}.adminlb-table tbody tr:hover{background:#ffffff0a}.adminlb-table tbody tr:last-child{border-bottom:none}.adminlb-rank,.adminlb-score,.adminlb-precision{width:120px;text-align:center}@media (max-width: 768px){.adminlb-header-content{flex-direction:column;align-items:flex-start}.adminlb-filter{flex-direction:column;align-items:stretch}.adminlb-refresh{width:100%}}.game-detail-container{min-height:100vh;background:transparent;padding:48px 20px}.detail-header{max-width:800px;margin:0 auto 30px}.back-link{display:inline-block;color:var(--accent-2);text-decoration:none;font-weight:600;margin-bottom:20px;transition:color .3s}.back-link:hover{color:#2ad3c7bf}.detail-header h1{color:var(--fg);font-size:32px;margin:0;text-transform:uppercase;letter-spacing:.06em}.detail-content{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.info-section,.score-section,.registration-section{background:var(--panel);border:1px solid var(--border);padding:30px;border-radius:var(--r-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.info-section h2,.score-section h2,.registration-section h2{margin-bottom:20px;color:var(--fg);font-size:20px}.score-section{display:none}.info-grid{display:grid;gap:15px}.info-item{display:flex;justify-content:space-between;padding:12px;background:#0000002e;border:1px solid rgba(255,255,255,.1);border-radius:var(--r-sm)}.info-item .label{font-weight:600;color:var(--muted)}.info-item .value{color:#eaf1f7eb}.status{padding:4px 12px;border-radius:12px;font-size:14px;font-weight:600}.status.pending{background:#fff3cd;color:#856404}.status.done{background:#d4edda;color:#155724}.score-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#eaf1f7d9;font-weight:600;font-size:14px}.form-group input{width:100%;padding:12px;background:#00000038;border:1px solid rgba(255,255,255,.14);border-radius:var(--r-sm);font-size:16px;transition:border-color .3s;color:var(--fg)}.form-group input:focus{outline:none;border-color:#2ad3c78c;box-shadow:0 0 0 3px #2ad3c72e}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.update-score-button{padding:10px 24px;background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:var(--r-sm);font-weight:600;cursor:pointer;transition:background .3s}.update-score-button:hover{background:#ffffff1f}.confirm-button{width:100%;padding:14px;background:linear-gradient(135deg,#e14c3bf2,#2ad3c78c);color:#fff;border:none;border-radius:var(--r-sm);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.confirm-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 50px #00000059}.confirm-button:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#e14c3b1f;color:#eaf1f7eb;border:1px solid rgba(225,76,59,.25);padding:12px;border-radius:var(--r-sm);margin-bottom:20px;font-size:14px;text-align:center}.consents-section{margin:18px 0 20px;padding:14px;background:#00000024;border:1px solid rgba(255,255,255,.1);border-radius:var(--r-sm)}.consents-section h3{margin:0 0 12px;color:#eaf1f7eb;font-size:14px;letter-spacing:.02em;text-transform:uppercase}.consent-row{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;color:#eaf1f7d9;font-size:14px;line-height:1.35;cursor:pointer;-webkit-user-select:none;user-select:none}.consent-row:last-child{margin-bottom:0}.consent-row input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:rgba(42,211,199,.85)}.consents-section a{color:var(--accent-2);text-decoration:none;font-weight:600}.consents-section a:hover{text-decoration:underline}.loading,.error{text-align:center;padding:40px;color:var(--muted);font-size:18px}.error{color:#eaf1f7eb}.privacy-container{width:min(980px,calc(100% - 32px));margin:32px auto 64px}.privacy-header{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:18px 18px 14px}.privacy-back-link{display:inline-block;text-decoration:none;color:var(--muted);margin-bottom:10px}.privacy-back-link:hover{color:var(--fg)}.privacy-header h1{margin:0 0 6px;letter-spacing:.2px}.privacy-subtitle{margin:0;color:var(--muted);line-height:1.45}.privacy-content{margin-top:18px;background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);padding:18px}.privacy-section+.privacy-section{margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1)}.privacy-section h2{margin:0 0 10px}.privacy-section h3{margin:14px 0 8px;color:var(--fg)}.privacy-section p{margin:0 0 10px;color:var(--muted);line-height:1.6}.privacy-section ul{margin:0 0 10px 18px;color:var(--muted);line-height:1.65}.privacy-section a{color:var(--fg);text-decoration:underline;text-decoration-color:#2ad3c78c}.privacy-section a:hover{text-decoration-color:#e14c3bb3}:root{--bg-0:#071018;--bg-1:#0b1b26;--fg:#eaf1f7;--muted:rgba(234,241,247,.72);--muted-2:rgba(234,241,247,.55);--accent:#e14c3b;--accent-2:#2ad3c7;--panel:rgba(255,255,255,.06);--panel-strong:rgba(10,16,22,.55);--border:rgba(255,255,255,.14);--shadow:0 22px 70px rgba(0,0,0,.55);--r-lg:16px;--r-md:12px;--r-sm:10px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;color:var(--fg);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(900px 650px at 18% 42%,rgba(255,255,255,.1),transparent 55%),radial-gradient(700px 500px at 75% 30%,rgba(42,211,199,.12),transparent 55%),radial-gradient(900px 700px at 80% 80%,rgba(225,76,59,.14),transparent 60%),linear-gradient(135deg,#071018eb,#071018b3),url(/bg-orma.webp);background-size:auto,auto,auto,auto,cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 20% 30%,rgba(0,0,0,.55),transparent 55%),radial-gradient(circle at 80% 60%,rgba(0,0,0,.65),transparent 60%),radial-gradient(circle at 50% 50%,#0000001a,#0000008c)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:22px 22px;opacity:.1;filter:blur(.2px)}a{color:inherit}
