*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}body{background:#03060c;overflow-x:hidden;color:#8affd4;min-height:100vh;display:flex;flex-direction:column}.background-grid{position:fixed;inset:0;background-image:linear-gradient(rgba(0,255,170,.06) 1px,transparent 0),linear-gradient(90deg,rgba(0,255,170,.06) 1px,transparent 0);background-size:40px 40px;animation:gridMove 10s linear infinite;z-index:0}@keyframes gridMove{0%{transform:translateY(0)}to{transform:translateY(40px)}}#matrixRain{opacity:.12;z-index:0}#matrixRain,.scanline{position:fixed;inset:0;pointer-events:none}.scanline{background:linear-gradient(180deg,transparent 50%,rgba(0,255,170,.02) 51%);background-size:100% 4px;z-index:3}.top-nav{position:relative;z-index:10;border-bottom:1px solid rgba(0,255,170,.15);background:rgba(2,6,12,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-inner{width:1100px;max-width:95%;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:14px 0;gap:16px;flex-wrap:wrap}.nav-brand{color:#00ffae;font-weight:700;letter-spacing:3px;text-decoration:none;font-size:18px}.nav-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.nav-links a{color:#9ee9cf;text-decoration:none;font-size:14px;letter-spacing:1px;transition:color .2s}.nav-links a:hover{color:#00ffae}.nav-cta{padding:8px 14px;border-radius:8px;background:linear-gradient(90deg,#00ff99,#00b3ff);color:#02120c!important;font-weight:700}.nav-user{color:#00ffae;font-size:13px;opacity:.9}.flash-wrap{position:relative;z-index:10;width:1100px;max-width:95%;margin:16px auto 0}.flash{padding:12px 16px;border-radius:10px;margin-bottom:8px;font-size:14px}.flash-success{background:rgba(0,255,120,.1);border:1px solid rgba(0,255,120,.3);color:#6dffae}.flash-error{background:rgba(255,70,70,.1);border:1px solid rgba(255,70,70,.3);color:#ff8d8d}.container{position:relative;z-index:2;width:1100px;max-width:95%;margin:auto;padding:40px 0 50px;flex:1 1}.hero{text-align:center;margin-bottom:50px;animation:fadeUp 1.2s ease}.alien-gif-wrap{width:200px;height:200px;margin:0 auto 10px;display:block;border-radius:50%;overflow:hidden;animation:floatHolo 4s ease-in-out infinite;box-shadow:0 0 25px rgba(0,255,170,.55),0 0 60px rgba(0,255,170,.25),0 0 100px rgba(0,200,255,.12)}.alien-gif-wrap img{width:100%;height:100%;object-fit:cover;display:block}@keyframes floatHolo{0%,to{transform:translateY(0)}50%{transform:translateY(-10px);filter:drop-shadow(0 0 30px rgba(0,255,170,.85))}}.hero h1{font-size:48px;letter-spacing:6px;color:#00ffae;margin-bottom:20px;text-shadow:0 0 20px rgba(0,255,170,.4)}.hero .intro-text{max-width:750px;margin:0 auto;line-height:1.9;color:#9ee9cf;font-size:17px;background:rgba(0,255,170,.03);padding:22px;border-radius:15px;border:1px solid rgba(0,255,170,.1);box-shadow:inset 0 0 20px rgba(0,0,0,.5)}.hero .intro-text p{margin-bottom:12px}.hero .intro-text p:last-child{margin-bottom:0}.section-title{margin-bottom:25px;font-size:22px;color:#00ffae;letter-spacing:3px;text-align:center}.ctf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:25px;gap:25px;margin-bottom:50px}.ctf-card{position:relative;padding:32px 26px;border-radius:16px;background:rgba(5,10,20,.78);border:1px solid rgba(0,255,170,.15);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .3s ease;overflow:hidden;cursor:pointer;text-decoration:none;color:white;display:flex;flex-direction:column}.ctf-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 10px 30px rgba(0,255,170,.15);border-color:rgba(0,255,170,.5)}.ctf-card.solved{border-color:rgba(0,255,120,.45)}.card-glow{position:absolute;width:180px;height:180px;background:radial-gradient(circle,rgba(0,255,170,.15),transparent 70%);top:-50px;right:-50px;pointer-events:none}.difficulty{align-self:flex-start;padding:6px 14px;border-radius:999px;font-size:11px;font-weight:700;margin-bottom:18px;letter-spacing:1.5px}.easy{background:rgba(0,255,120,.12);color:#6dffae;border:1px solid rgba(0,255,120,.25)}.medium{background:rgba(255,170,0,.12);color:#ffca7a;border:1px solid rgba(255,170,0,.25)}.hard{background:rgba(255,70,70,.12);color:#ff8d8d;border:1px solid rgba(255,70,70,.25)}.ctf-card h2{margin-bottom:12px;font-size:22px;color:#00ffae}.ctf-card p{line-height:1.7;color:#a7d8c7;margin-bottom:20px;flex-grow:1;font-size:15px}.card-meta{font-size:12px;color:#5b9982;margin-bottom:14px;letter-spacing:1px}.enter-btn{text-align:center;padding:12px 20px;border-radius:8px;background:linear-gradient(90deg,#00ff99,#00b3ff);color:#02120c;font-weight:700;font-size:14px;text-decoration:none;transition:.3s;text-transform:uppercase;letter-spacing:1px}.ctf-card:hover .enter-btn{box-shadow:0 0 15px rgba(0,255,170,.4)}.enter-btn.muted{background:rgba(255,255,255,.08);color:#8affd4}.info-box{padding:32px;border-radius:16px;background:rgba(5,10,20,.75);border:1px solid rgba(0,255,170,.15);line-height:1.8;animation:fadeUp 1.5s ease;margin-bottom:30px}.info-box h3{margin-bottom:16px;color:#00ffae;font-size:20px;letter-spacing:2px}.info-box p{color:#a7d8c7}.info-box ul{list-style:none;margin-bottom:16px;padding-left:10px}.info-box li:before{content:">";color:#00ff99;font-weight:700;margin-right:10px}.data-notice{font-size:13px;color:#5b9982;border-top:1px solid rgba(0,255,170,.1);padding-top:14px;margin-top:10px}.auth-card,.panel{position:relative;z-index:2;width:480px;max-width:95%;margin:40px auto;padding:36px 32px;border-radius:16px;background:rgba(5,10,20,.85);border:1px solid rgba(0,255,170,.18);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 0 40px rgba(0,255,170,.08)}.auth-card h1,.panel h1{text-align:center;color:#00ffae;letter-spacing:3px;margin-bottom:8px;font-size:28px}.auth-card .subtitle,.panel .subtitle{text-align:center;color:#5b9982;font-size:13px;margin-bottom:24px}label{display:block;margin-bottom:6px;font-size:13px;color:#9ee9cf;letter-spacing:1px}.auth-card input,.flag-form input,.panel input,input[type=email],input[type=password],input[type=text]{width:100%;padding:14px;margin-bottom:16px;border:1px solid rgba(0,255,170,.15);border-radius:10px;background:rgba(255,255,255,.05);color:#fff;outline:none;font:inherit;box-sizing:border-box}.auth-card input::placeholder,.flag-form input::placeholder,input[type=email]::placeholder,input[type=password]::placeholder,input[type=text]::placeholder{color:rgba(158,233,207,.45)}.auth-card input:focus,.flag-form input:focus,.panel input:focus,input[type=email]:focus,input[type=password]:focus,input[type=text]:focus{border-color:rgba(0,255,170,.45);box-shadow:0 0 0 2px rgba(0,255,170,.08)}.btn-primary{width:100%;padding:14px;border:none;border-radius:10px;font-weight:700;cursor:pointer;background:linear-gradient(90deg,#00ff99,#00d4ff);color:#02120c;text-transform:uppercase;letter-spacing:1px;transition:.2s;font-size:14px}.btn-primary:hover{transform:scale(1.02);box-shadow:0 0 15px rgba(0,255,170,.35)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-footer{text-align:center;margin-top:18px;font-size:14px;color:#5b9982}.auth-footer a{color:#00ffae;text-decoration:none}.form-msg{margin-bottom:14px;font-size:14px;padding:10px 12px;border-radius:8px}.form-msg.error{background:rgba(255,70,70,.1);border:1px solid rgba(255,70,70,.3);color:#ff8d8d}.form-msg.success{background:rgba(0,255,120,.1);border:1px solid rgba(0,255,120,.3);color:#6dffae}.challenge-panel{width:720px;max-width:95%}.challenge-panel .difficulty{display:inline-block;margin-bottom:16px}.challenge-panel h1{text-align:left;margin-bottom:12px}.challenge-panel .desc{color:#a7d8c7;line-height:1.8;margin-bottom:16px}.challenge-panel .hint{background:rgba(0,255,170,.04);border-left:3px solid #00ffae;padding:12px 16px;margin:16px 0;color:#9ee9cf;font-size:14px}.meta-row{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0 20px;font-size:13px;color:#5b9982}.meta-pill{padding:6px 12px;border-radius:999px;border:1px solid rgba(0,255,170,.2);background:rgba(0,255,170,.05)}.download-list{list-style:none;margin:12px 0 20px}.download-list li{margin-bottom:8px}.download-list a{color:#00ffae;text-decoration:none;border-bottom:1px dashed rgba(0,255,170,.35)}.flag-form{margin-top:24px;padding-top:20px;border-top:1px solid rgba(0,255,170,.12)}.flag-form h3{color:#00ffae;margin-bottom:12px;letter-spacing:2px;font-size:16px}.solved-badge{display:inline-block;padding:8px 14px;border-radius:8px;background:rgba(0,255,120,.12);border:1px solid rgba(0,255,120,.3);color:#6dffae;font-weight:700;margin-bottom:12px}.ranking-table{width:100%;border-collapse:collapse;margin-top:10px}.ranking-table td,.ranking-table th{padding:14px 12px;text-align:left;border-bottom:1px solid rgba(0,255,170,.1)}.ranking-table th{color:#00ffae;letter-spacing:2px;font-size:12px;text-transform:uppercase}.ranking-table td{color:#a7d8c7}.ranking-table tr:hover td{background:rgba(0,255,170,.04)}.rank-num{color:#00ffae;font-weight:700;width:60px}.rank-row.podium-gold td{color:#ffd700;text-shadow:0 0 10px rgba(255,215,0,.35)}.rank-row.podium-silver td{color:#c0c0c0;text-shadow:0 0 8px rgba(192,192,192,.3)}.rank-row.podium-bronze td{color:#cd7f32;text-shadow:0 0 8px rgba(205,127,50,.3)}.rank-row.podium-bronze,.rank-row.podium-gold,.rank-row.podium-silver{outline:1px solid rgba(0,255,170,.35);outline-offset:-1px;background:rgba(0,255,170,.04)}.rank-row.podium-frame{outline:1px solid rgba(0,255,170,.28);outline-offset:-1px;background:rgba(0,255,170,.025)}.player-name{display:inline-block;padding:2px 8px;border-radius:6px}.admin-name{border:1px solid rgba(0,255,120,.65);box-shadow:0 0 8px rgba(0,255,120,.25);color:#6dffae}.admin-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#02120c;background:linear-gradient(90deg,#00ff99,#6dffae);vertical-align:middle}.admin-badge.nav-admin{margin-left:10px;font-size:9px}.captcha-box{margin-bottom:8px}.captcha-row{display:flex;gap:10px;align-items:flex-start}.captcha-row .auth-input,.captcha-row input{flex:1 1;margin-bottom:16px}.btn-secondary{padding:14px 16px;border:1px solid rgba(0,255,170,.3);border-radius:10px;background:rgba(0,255,170,.08);color:#6dffae;font-weight:700;cursor:pointer;white-space:nowrap}.btn-secondary:hover{background:rgba(0,255,170,.15)}.admin-panel h1{text-align:left}.footer-legal a{color:#5b9982;text-decoration:none;margin:0 2px}.footer-legal a:hover{color:#00ffae}.legal-panel{width:720px;max-width:95%}.legal-panel h1{text-align:left;margin-bottom:8px}.legal-h{color:#00ffae;letter-spacing:2px;font-size:14px;margin:22px 0 10px}.register-pw-warning{margin-top:16px;padding:12px 14px;border-radius:10px;border:1px solid rgba(255,70,70,.45);background:rgba(255,40,40,.1);color:#ff6b6b;font-size:13px;line-height:1.55;font-weight:600}.profile-panel h1{text-align:left}.profile-avatar-preview{width:96px;height:96px;border-radius:50%;overflow:hidden;margin:0 0 18px;border:2px solid rgba(0,255,170,.35);box-shadow:0 0 20px rgba(0,255,170,.2)}.profile-avatar-preview img{width:100%;height:100%;object-fit:cover;display:block}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:rgba(0,255,170,.08);color:#00ffae;font-size:36px;font-weight:700}.profile-bio{width:100%;padding:14px;margin-bottom:16px;border:1px solid rgba(0,255,170,.15);border-radius:10px;background:rgba(255,255,255,.05);color:#fff;outline:none;font:inherit;resize:vertical}.profile-bio:focus{border-color:rgba(0,255,170,.45);box-shadow:0 0 0 2px rgba(0,255,170,.08)}input[type=file]{margin-bottom:16px;color:#9ee9cf;font-size:13px}input[type=url],textarea{width:100%}.player-link{text-decoration:none;color:inherit;cursor:pointer;transition:box-shadow .15s,border-color .15s}.player-link:hover{border-color:rgba(0,255,170,.55);box-shadow:0 0 10px rgba(0,255,170,.2)}a.nav-user{text-decoration:none}a.nav-user:hover{color:#00ffae}.public-profile-header{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap;margin-bottom:8px}.public-profile h1{text-align:left;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rank-pill{display:inline-block;margin-top:8px;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid rgba(0,255,170,.3);background:rgba(0,255,170,.06);color:#9ee9cf}.rank-pill.podium-gold{color:#ffd700;border-color:rgba(255,215,0,.45)}.rank-pill.podium-silver{color:#c0c0c0;border-color:rgba(192,192,192,.45)}.rank-pill.podium-bronze{color:#cd7f32;border-color:rgba(205,127,50,.45)}.achievements-list{list-style:none;padding:0;margin:12px 0 0}.achievement-item{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;margin-bottom:10px;border-radius:10px;border:1px solid rgba(0,255,170,.15);background:rgba(0,255,170,.04)}.achievement-name{color:#00ffae;font-weight:600;flex:1 1;min-width:120px}.profile-edit-banner{text-align:center;margin:0 auto 16px;max-width:720px;padding:12px 16px;border:1px solid rgba(0,255,170,.25);border-radius:10px;background:rgba(0,255,170,.06);color:#9ee9cf;font-size:14px}.profile-edit-banner a{color:#00ffae;margin-left:6px}.profile-edit-banner strong{color:#00ffae}.session-banner{margin:14px 0 18px;padding:12px 14px;border-radius:10px;font-size:14px;line-height:1.5}.session-banner a{color:#00ffae}.session-banner-ok{background:rgba(0,255,120,.08);border:1px solid rgba(0,255,120,.28);color:#8affd4}.session-banner-out{background:rgba(255,170,0,.08);border:1px solid rgba(255,170,0,.28);color:#ffca7a}.footer-wrapper{position:relative;z-index:2;border-top:1px solid rgba(0,255,170,.15);background:rgba(2,6,12,.9);padding:30px 0;margin-top:auto}.footer-content{width:1100px;max-width:95%;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.footer-text{color:#5b9982;font-size:14px;letter-spacing:1px}.footer-text strong{color:#00ffae;font-weight:400}.discord-btn{display:flex;align-items:center;gap:12px;background:rgba(88,101,242,.1);border:1px solid #5865f2;color:#fff;padding:10px 20px;border-radius:8px;text-decoration:none;font-size:13px;font-weight:700;letter-spacing:1px;transition:all .3s ease}.discord-btn:hover{background:rgba(88,101,242,.25);box-shadow:0 0 15px rgba(88,101,242,.4);transform:translateY(-2px)}.discord-btn svg{width:20px;height:20px;fill:#5865F2}.discord-btn:hover svg{fill:#fff}@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.glitch{animation:glitch .18s infinite}@keyframes glitch{0%{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(2px,-2px)}60%{transform:translate(-2px,-2px)}80%{transform:translate(2px,2px)}to{transform:translate(0)}}.page-main{flex:1 1;display:flex;flex-direction:column;position:relative;z-index:2}@media (max-width:600px){.hero h1{font-size:32px;letter-spacing:3px}.alien-gif-wrap{width:140px;height:140px}}