* {margin:0;padding:0;box-sizing:border-box}
body {font-family:"Poppins",sans-serif;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);min-height:100vh;color:#fff}
.header {background:rgba(255,255,255,.05);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.1);padding:15px 30px;position:sticky;top:0;z-index:100}
.header-content {max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}
.logo {display:flex;align-items:center;gap:15px}
.logo i {font-size:2.5rem;color:#ffd700;text-shadow:0 0 20px rgba(255,215,0,.5)}
.logo h1 {font-size:1.5rem;font-weight:800;letter-spacing:2px;background:linear-gradient(90deg,#ffd700,#ffaa00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.logo p {font-size:.8rem;opacity:.7;letter-spacing:3px;text-transform:uppercase}
.header-right {display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.admin-badge {background:rgba(255,215,0,.15);border:1px solid rgba(255,215,0,.3);padding:8px 15px;border-radius:25px;font-size:.85rem;color:#ffd700}
.btn {padding:10px 20px;border:none;border-radius:25px;cursor:pointer;font-family:"Poppins",sans-serif;font-weight:600;font-size:.85rem;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all .3s ease}
.btn-primary {background:linear-gradient(135deg,#ffd700,#ffaa00);color:#1a1a2e}
.btn-primary:hover {transform:translateY(-2px);box-shadow:0 5px 20px rgba(255,215,0,.4)}
.btn-outline {background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff}
.btn-outline:hover {background:rgba(255,255,255,.1)}
.btn-danger {background:linear-gradient(135deg,#ff4757,#ff3838);color:#fff}
.btn-sm {padding:6px 12px;font-size:.75rem}
.btn-lg {padding:14px 35px;font-size:1rem}
.btn-block {width:100%;justify-content:center}
.legend {display:flex;justify-content:center;gap:30px;padding:25px 20px;flex-wrap:wrap}
.legend-item {display:flex;align-items:center;gap:8px;padding:10px 25px;border-radius:30px;font-weight:600;font-size:.9rem}
.legend-item.gold {background:linear-gradient(135deg,rgba(255,215,0,.2),rgba(255,170,0,.1));border:1px solid rgba(255,215,0,.4);color:#ffd700}
.legend-item.silver {background:linear-gradient(135deg,rgba(192,192,192,.2),rgba(169,169,169,.1));border:1px solid rgba(192,192,192,.4);color:#c0c0c0}
.legend-item.bronze {background:linear-gradient(135deg,rgba(205,127,50,.2),rgba(205,127,50,.1));border:1px solid rgba(205,127,50,.4);color:#cd7f32}
.podium-section {padding:20px;max-width:800px;margin:0 auto}
.podium {display:flex;justify-content:center;align-items:flex-end;gap:15px}
.podium-item {display:flex;flex-direction:column;align-items:center;width:200px}
.podium-avatar {width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.2rem;margin-bottom:10px}
.podium-item.gold .podium-avatar {background:linear-gradient(135deg,#ffd700,#ffaa00);color:#1a1a2e;box-shadow:0 0 30px rgba(255,215,0,.5)}
.podium-item.silver .podium-avatar {background:linear-gradient(135deg,#e8e8e8,#a8a8a8);color:#1a1a2e;box-shadow:0 0 30px rgba(192,192,192,.5)}
.podium-item.bronze .podium-avatar {background:linear-gradient(135deg,#cd7f32,#a0522d);color:#fff;box-shadow:0 0 30px rgba(205,127,50,.5)}
.podium-name {font-weight:700;font-size:1rem;margin-bottom:5px;text-align:center}
.podium-total {font-size:.85rem;opacity:.7;margin-bottom:15px}
.podium-stand {width:100%;border-radius:15px 15px 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}
.podium-item.gold .podium-stand {background:linear-gradient(180deg,rgba(255,215,0,.3),rgba(255,215,0,.05));border:1px solid rgba(255,215,0,.3);border-bottom:none}
.podium-item.silver .podium-stand {background:linear-gradient(180deg,rgba(192,192,192,.3),rgba(192,192,192,.05));border:1px solid rgba(192,192,192,.3);border-bottom:none}
.podium-item.bronze .podium-stand {background:linear-gradient(180deg,rgba(205,127,50,.3),rgba(205,127,50,.05));border:1px solid rgba(205,127,50,.3);border-bottom:none}
.podium-rank {font-size:2rem;font-weight:900;opacity:.8}
.podium-stand i {font-size:2.5rem}
.podium-item.gold .podium-stand i {color:#ffd700}
.podium-item.silver .podium-stand i {color:#c0c0c0}
.podium-item.bronze .podium-stand i {color:#cd7f32}
.scoreboard-section {padding:10px 30px 30px;max-width:1400px;margin:0 auto}
.table-container {overflow-x:auto;border-radius:15px;border:1px solid rgba(255,255,255,.1)}
.scoreboard-table {width:100%;border-collapse:collapse;background:rgba(255,255,255,.03)}
.scoreboard-table thead {background:rgba(255,255,255,.08)}
.scoreboard-table th {padding:16px 20px;text-transform:uppercase;font-size:.75rem;letter-spacing:1.5px;color:rgba(255,255,255,.7);font-weight:600;text-align:center;white-space:nowrap}
.scoreboard-table th.name-col {text-align:left}
.scoreboard-table td {padding:14px 20px;border-top:1px solid rgba(255,255,255,.05);text-align:center;font-size:.95rem}
.name-cell {display:flex;align-items:center;gap:12px;font-weight:600;text-align:left!important;white-space:nowrap}
.avatar-small {width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;flex-shrink:0}
.rank-cell {font-size:1.3rem}
.score-cell {font-weight:500;font-size:1.1rem}
.total-cell {font-weight:800;font-size:1.3rem;color:#ffd700;text-shadow:0 0 10px rgba(255,215,0,.3)}
.gold-row {background:linear-gradient(90deg,rgba(255,215,0,.15),transparent)!important}
.silver-row {background:linear-gradient(90deg,rgba(192,192,192,.1),transparent)!important}
.bronze-row {background:linear-gradient(90deg,rgba(205,127,50,.1),transparent)!important}
.scoreboard-table tbody tr:hover {background:rgba(255,255,255,.05)}
.team-total-row {background:rgba(255,215,0,.08)!important}
.team-total-row td {padding:18px 20px;font-size:1rem;border-top:2px solid rgba(255,215,0,.3)}
.grand-total {font-size:1.5rem!important;color:#ffd700;text-shadow:0 0 15px rgba(255,215,0,.5)}
.footer {text-align:center;padding:30px;opacity:.5;font-size:.8rem}
.modal-overlay {position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);backdrop-filter:blur(10px);display:none;justify-content:center;align-items:center;z-index:1000}
.modal-overlay.active {display:flex}
.modal {background:linear-gradient(135deg,#1e1e3f,#2a2a4a);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:40px;width:100%;max-width:400px;position:relative}
.modal h2 {margin-bottom:25px;text-align:center;font-size:1.3rem;color:#ffd700}
.modal-close {position:absolute;top:15px;right:20px;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;opacity:.5}
.modal-close:hover {opacity:1}
.form-group {margin-bottom:20px}
.form-group label {display:block;margin-bottom:8px;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.7)}
.form-group input,.form-input {width:100%;padding:12px 18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#fff;font-family:"Poppins",sans-serif;font-size:.95rem;transition:all .3s ease}
.form-group input:focus,.form-input:focus {outline:none;border-color:#ffd700;box-shadow:0 0 15px rgba(255,215,0,.2)}
.admin-container {max-width:1400px;margin:0 auto;padding:30px}
.admin-card {background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:30px;margin-bottom:25px}
.admin-card h2 {margin-bottom:20px;font-size:1.2rem;color:#ffd700}
.inline-form {display:flex;gap:15px;align-items:flex-end;flex-wrap:wrap}
.inline-form .form-group {margin-bottom:0;flex:1;min-width:200px}
.score-input {width:80px;padding:10px;text-align:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#fff;font-family:"Poppins",sans-serif;font-size:1rem;font-weight:600}
.score-input:focus {outline:none;border-color:#ffd700;box-shadow:0 0 10px rgba(255,215,0,.2)}
.edit-table td {text-align:center}
.alert {padding:15px 25px;border-radius:12px;margin-bottom:20px;font-weight:500;display:flex;align-items:center;gap:10px}
.alert-success {background:rgba(46,213,115,.15);border:1px solid rgba(46,213,115,.3);color:#2ed573}
.alert-error {background:rgba(255,71,87,.15);border:1px solid rgba(255,71,87,.3);color:#ff4757}
@keyframes fadeInUp {from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.scoreboard-table tbody tr {animation:fadeInUp .5s ease forwards}
.scoreboard-table tbody tr:nth-child(1){animation-delay:.1s}
.scoreboard-table tbody tr:nth-child(2){animation-delay:.15s}
.scoreboard-table tbody tr:nth-child(3){animation-delay:.2s}
.scoreboard-table tbody tr:nth-child(4){animation-delay:.25s}
.scoreboard-table tbody tr:nth-child(5){animation-delay:.3s}
.scoreboard-table tbody tr:nth-child(6){animation-delay:.35s}
@media(max-width:768px){.header-content{flex-direction:column;text-align:center}.logo{justify-content:center}.header-right{justify-content:center}.legend{flex-direction:column;align-items:center;gap:10px}.podium{gap:8px}.podium-item{width:120px}.podium-avatar{width:50px;height:50px;font-size:.9rem}.podium-name{font-size:.75rem}.podium-stand{height:auto!important;padding:20px 5px}.podium-rank{font-size:1.2rem}.podium-stand i{font-size:1.5rem}.scoreboard-section{padding:10px}.admin-container{padding:15px}.score-input{width:60px;padding:8px 4px}}

/* INSTALLER STYLES */
.installer-container{max-width:600px;margin:50px auto;padding:20px}
.installer-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:40px}
.installer-card h1{text-align:center;color:#ffd700;margin-bottom:10px;font-size:1.8rem}
.installer-card .subtitle{text-align:center;opacity:.6;margin-bottom:30px;font-size:.9rem}
.installer-card .form-group{margin-bottom:18px}
.installer-card label{display:block;margin-bottom:6px;font-weight:600;font-size:.85rem;color:rgba(255,255,255,.8)}
.installer-card input{width:100%;padding:12px 16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#fff;font-size:.95rem;font-family:"Poppins",sans-serif}
.installer-card input:focus{outline:none;border-color:#ffd700;box-shadow:0 0 10px rgba(255,215,0,.2)}
.section-title{font-size:1rem;color:#ffd700;margin:25px 0 15px;padding-bottom:8px;border-bottom:1px solid rgba(255,215,0,.2)}
.success-box{background:rgba(46,213,115,.1);border:2px solid rgba(46,213,115,.3);border-radius:15px;padding:30px;text-align:center;margin-top:20px}
.success-box h2{color:#2ed573;margin-bottom:15px}
.success-box a{color:#ffd700}