.navigation{position:fixed;top:0;left:0;width:100%;background:#0a0e1acc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;transition:var(--transition);border-bottom:1px solid transparent}.navigation.scrolled{background:#0a0e1af2;border-bottom-color:var(--border-color);box-shadow:0 5px 30px #0000004d}.nav-container{max-width:1400px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo-link{display:flex;align-items:center}.logo{height:60px;width:auto;transition:var(--transition)}.logo:hover{transform:scale(1.05);filter:drop-shadow(0 0 10px var(--cyber-blue))}.nav-links{display:flex;list-style:none;gap:2.5rem;align-items:center}.nav-link-btn{background:none;border:none;cursor:pointer;font-family:inherit;padding:.5rem 0;text-transform:uppercase;letter-spacing:.5px;font-size:1rem;color:var(--light-gray);transition:var(--transition)}.nav-link-btn:hover{color:var(--primary-red)}.nav-links li a{color:var(--light-gray);font-weight:500;font-size:1rem;letter-spacing:.5px;padding:.5rem 0;position:relative;text-transform:uppercase}.nav-links li a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--primary-red),var(--cyber-blue));transition:var(--transition)}.nav-links li a:hover:after,.nav-links li a.active:after{width:100%}.nav-links li a:hover{color:var(--cyber-blue)}.nav-links li a.active{color:var(--white)}.mobile-menu-btn{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:.5rem}.mobile-menu-btn span{width:30px;height:3px;background:var(--cyber-blue);border-radius:3px;transition:var(--transition)}.mobile-menu-btn.open span:nth-child(1){transform:rotate(45deg) translate(8px,8px);background:var(--primary-red)}.mobile-menu-btn.open span:nth-child(2){opacity:0}.mobile-menu-btn.open span:nth-child(3){transform:rotate(-45deg) translate(8px,-8px);background:var(--primary-red)}@media(max-width:768px){.mobile-menu-btn{display:flex;z-index:1001}.nav-links{position:fixed;top:0;right:-100%;height:100vh;width:70%;max-width:400px;background:#131928fa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;padding:6rem 2rem 2rem;gap:2rem;align-items:flex-start;transition:right .3s ease-in-out;border-left:1px solid var(--border-color)}.nav-links.mobile-open{right:0}.nav-links li a{font-size:1.2rem}.logo{height:50px}.nav-container{padding:1rem}}.footer{background:var(--darker-bg);border-top:1px solid var(--border-color);padding:var(--spacing-lg) 0 var(--spacing-md)}.footer-content{max-width:1400px}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.footer-section h4{color:var(--white);margin-bottom:var(--spacing-sm);font-size:1.2rem;position:relative;display:inline-block}.footer-section h4:after{content:"";position:absolute;bottom:-5px;left:0;width:50%;height:2px;background:linear-gradient(90deg,var(--primary-red),var(--cyber-blue))}.footer-section p{color:var(--light-gray);font-size:.95rem;line-height:1.6}.footer-section ul{list-style:none}.footer-section ul li{margin-bottom:.75rem}.footer-section ul li a{color:var(--light-gray);font-size:.95rem;transition:var(--transition)}.footer-section ul li a:hover{color:var(--cyber-blue);padding-left:5px}.footer-logo{height:80px;width:auto;margin-bottom:var(--spacing-sm)}.social-links{display:flex;gap:1rem;margin-top:var(--spacing-sm)}.social-links a{width:40px;height:40px;border:1px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--cyber-blue);transition:var(--transition)}.social-links a:hover{background:var(--cyber-blue);color:var(--dark-bg);border-color:var(--cyber-blue);transform:translateY(-3px)}.contact-info li{display:flex;flex-direction:column;gap:.25rem}.contact-info li span{color:var(--cyber-blue);font-weight:600;font-size:.85rem}.footer-bottom{border-top:1px solid var(--border-color);padding-top:var(--spacing-md);text-align:center}.footer-bottom p{color:var(--light-gray);font-size:.9rem;margin-bottom:.5rem}.tagline{font-style:italic;color:var(--cyber-blue);font-size:.85rem!important}@media(max-width:768px){.footer-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.footer{padding:var(--spacing-md) 0}}.home{padding-top:80px}.hero{min-height:calc(100vh - 80px);display:flex;align-items:center;padding:var(--spacing-lg) 0}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);align-items:center}.hero-text h1{font-size:clamp(2.5rem,6vw,4.5rem);margin-bottom:var(--spacing-md);font-weight:900;letter-spacing:2px}.hero-subtitle{font-size:1.3rem;margin-bottom:var(--spacing-md);line-height:1.8}.tagline{display:block;color:var(--cyber-blue);font-size:1.1rem;margin-top:var(--spacing-sm);font-style:italic}.hero-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-top:var(--spacing-md)}.hero-image{display:flex;justify-content:center}.hero-logo{max-width:100%;height:auto;filter:drop-shadow(0 0 30px rgba(0,217,255,.3));animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.cta-banner{background:linear-gradient(135deg,var(--primary-red),var(--cyber-blue));border-radius:8px;padding:var(--spacing-lg);text-align:center;color:#fff}.cta-banner h2,.cta-banner p{color:#fff}.cta-banner p{margin-bottom:var(--spacing-md);opacity:.95}.btn-light{background:#fff;color:var(--dark-bg);border-color:#fff}.btn-light:hover{background:transparent;color:#fff;transform:translateY(-2px)}.service-icon{font-size:3rem;margin-bottom:var(--spacing-sm);text-align:center}.card h3,.card p{text-align:center}@media(max-width:968px){.hero-content{grid-template-columns:1fr;text-align:center}.hero-buttons{justify-content:center}.hero-logo{max-width:280px}}.auth-page{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:100px var(--spacing-md) var(--spacing-xl)}.auth-card{width:100%;max-width:440px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:var(--spacing-lg)}.auth-card h1{font-size:2rem;margin-bottom:var(--spacing-md);text-align:center}.auth-field{margin-bottom:var(--spacing-sm)}.auth-field label{display:block;margin-bottom:.35rem;color:var(--light-gray);font-size:.95rem}.auth-field input{width:100%;padding:.75rem;background:var(--darker-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--white);font-size:1rem}.auth-field input:focus{outline:none;border-color:var(--cyber-blue);box-shadow:0 0 0 2px #00d9ff33}.auth-hint{display:block;margin-top:.35rem;color:var(--light-gray);opacity:.7;font-size:.85rem}.auth-card .btn{width:100%;margin-top:var(--spacing-sm)}.auth-error{color:var(--primary-red);margin-bottom:var(--spacing-sm);text-align:center}.auth-alt{text-align:center;margin-top:var(--spacing-md);color:var(--light-gray)}.whale-panel{background:var(--darker-bg);border:1px solid var(--border-color);border-radius:6px;padding:var(--spacing-sm);margin-bottom:var(--spacing-md)}.whale-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.whale-title{text-transform:uppercase;letter-spacing:1px;font-size:.8rem;color:var(--cyber-blue)}.whale-countdown{font-family:var(--font-mono);color:var(--white)}.whale-link{display:block;font-family:var(--font-mono);color:var(--cyber-blue);word-break:break-all;margin-bottom:var(--spacing-sm)}.whale-lan{font-family:var(--font-mono);color:var(--light-gray);margin-bottom:var(--spacing-sm)}.whale-actions{display:flex;gap:var(--spacing-sm)}.btn-danger{background:transparent;color:var(--primary-red);border:2px solid var(--primary-red);border-radius:4px;padding:1rem 2rem;text-transform:uppercase;letter-spacing:1px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-danger:hover{background:var(--primary-red);color:#fff}.whale-error{color:var(--primary-red);margin-top:var(--spacing-sm);font-size:.9rem}.modal-overlay{position:fixed;inset:0;background:#050810cc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);z-index:2000}.modal-card{width:100%;max-width:640px;max-height:85vh;overflow-y:auto;position:relative;cursor:default}.modal-close{position:absolute;top:.75rem;right:1rem;background:none;border:none;color:var(--light-gray);font-size:1.8rem;line-height:1;cursor:pointer;transition:var(--transition)}.modal-close:hover{color:var(--primary-red)}.modal-category{text-transform:uppercase;letter-spacing:1px;font-size:.8rem;color:var(--cyber-blue)}.modal-head h2{margin:.25rem 0}.modal-meta{display:flex;gap:var(--spacing-md);color:var(--light-gray);font-size:.95rem;margin-bottom:var(--spacing-md)}.solved-tag{color:var(--cyber-blue);font-weight:600}.modal-description{color:var(--light-gray);line-height:1.7;margin-bottom:var(--spacing-md);word-wrap:break-word}.modal-description a{color:var(--cyber-blue)}.modal-connection{background:var(--darker-bg);border:1px solid var(--border-color);border-radius:4px;padding:.75rem;color:var(--cyber-blue);font-family:var(--font-mono);overflow-x:auto;margin-bottom:var(--spacing-md)}.modal-submit{display:flex;gap:var(--spacing-sm)}.modal-submit input{flex:1;padding:.75rem;background:var(--darker-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--white);font-family:var(--font-mono)}.modal-submit input:focus{outline:none;border-color:var(--cyber-blue);box-shadow:0 0 0 2px #00d9ff33}.modal-hints{margin-bottom:var(--spacing-md)}.modal-hints h4{text-transform:uppercase;letter-spacing:1px;font-size:.85rem;color:var(--cyber-blue);margin-bottom:.5rem}.hint-row{margin-bottom:.5rem}.hint-btn{background:var(--darker-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--light-gray);padding:.5rem .75rem;cursor:pointer;width:100%;text-align:left;transition:var(--transition)}.hint-btn:hover{border-color:var(--cyber-blue);color:var(--white)}.hint-content{background:var(--darker-bg);border-left:3px solid var(--cyber-blue);padding:.5rem .75rem;border-radius:0 4px 4px 0;color:var(--light-gray)}.submit-result{margin-top:var(--spacing-sm);font-weight:600}.submit-result.ok{color:var(--cyber-blue)}.submit-result.bad{color:var(--primary-red)}.challenges-empty{text-align:center;color:var(--light-gray)}.team-required{text-align:center;color:var(--white);background:#00d9ff14;border:1px solid var(--cyber-blue);border-radius:8px;padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-lg)}.team-required a{color:var(--cyber-blue);font-weight:600}.challenge-category{margin-bottom:var(--spacing-lg)}.challenge-category-title{text-transform:uppercase;letter-spacing:2px;font-size:1.3rem;color:var(--cyber-blue);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);padding-bottom:var(--spacing-xs)}.challenge-card{text-align:left;cursor:pointer;font-family:inherit;color:inherit;display:flex;flex-direction:column;gap:.5rem}.challenge-card h3{font-size:1.2rem;margin:0}.challenge-card-meta{display:flex;justify-content:space-between;color:var(--light-gray);font-size:.9rem}.challenge-card.solved{border-color:var(--cyber-blue)}.challenge-card.solved:after{content:"";position:absolute;inset:0;background:#00d9ff0a;pointer-events:none}.solved-tag{color:var(--cyber-blue);font-weight:600;font-size:.85rem}.score-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:var(--spacing-lg)}.score-section-title{text-transform:uppercase;letter-spacing:2px;font-size:1.2rem;color:var(--cyber-blue);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color);padding-bottom:var(--spacing-xs)}.score-graph{margin-bottom:var(--spacing-md)}.score-bar-row{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:.4rem;font-size:.9rem}.score-bar-name{width:28%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--light-gray)}.score-bar-track{flex:1;height:10px;background:var(--darker-bg);border-radius:5px;overflow:hidden}.score-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary-red),var(--cyber-blue))}.score-bar-val{width:3.5rem;text-align:right;color:var(--white);font-variant-numeric:tabular-nums}.score-table{width:100%}.score-empty{text-align:center;color:var(--light-gray)}.profile-page .muted{color:var(--light-gray);opacity:.7}.solve-list{list-style:none}.solve-list li{display:flex;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid var(--border-color)}.profile-form{display:flex;flex-direction:column;gap:.6rem}.profile-form label{display:flex;flex-direction:column;gap:.25rem;color:var(--light-gray);font-size:.9rem}.profile-form input{padding:.6rem;background:var(--darker-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--white)}.profile-form input:focus{outline:none;border-color:var(--cyber-blue)}.profile-form .btn{align-self:flex-start}.team-page .muted{color:var(--light-gray);opacity:.7}.team-page form.card h3{margin-bottom:var(--spacing-sm)}:root{--primary-red: #E74C3C;--cyber-blue: #00D9FF;--dark-bg: #0a0e1a;--darker-bg: #050810;--card-bg: #131928;--white: #FFFFFF;--light-gray: #A8B2D1;--border-color: rgba(0, 217, 255, .2);--font-primary: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-mono: "SF Mono", "Monaco", "Inconsolata", "Fira Code", monospace;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem;--nav-offset: 120px;--transition: all .3s cubic-bezier(.4, 0, .2, 1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-primary);background-color:var(--dark-bg);color:var(--light-gray);line-height:1.6;overflow-x:hidden}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1}h1,h2,h3,h4,h5,h6{color:var(--white);font-weight:700;line-height:1.2}h1{font-size:clamp(2.5rem,8vw,5rem);margin-bottom:var(--spacing-md)}h2{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:var(--spacing-md)}h3{font-size:clamp(1.5rem,3vw,2.5rem);margin-bottom:var(--spacing-sm)}p{margin-bottom:var(--spacing-sm);font-size:1.1rem}a{color:var(--cyber-blue);text-decoration:none;transition:var(--transition)}a:hover{color:var(--primary-red)}.btn{display:inline-block;padding:1rem 2rem;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;border:2px solid;border-radius:4px;cursor:pointer;transition:var(--transition);text-align:center}.btn-primary{background:var(--primary-red);color:var(--white);border-color:var(--primary-red)}.btn-primary:hover{background:transparent;color:var(--primary-red);transform:translateY(-2px);box-shadow:0 10px 30px #e74c3c4d}.btn-secondary{background:transparent;color:var(--cyber-blue);border-color:var(--cyber-blue)}.btn-secondary:hover{background:var(--cyber-blue);color:var(--dark-bg);transform:translateY(-2px);box-shadow:0 10px 30px #00d9ff4d}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.wide-container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-xl) 0}.section.page{padding-top:var(--nav-offset)}.section-title{text-align:center;margin-bottom:var(--spacing-lg);position:relative}.section-title:after{content:"";display:block;width:100px;height:4px;background:linear-gradient(90deg,var(--primary-red),var(--cyber-blue));margin:var(--spacing-sm) auto 0}.card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:var(--spacing-md);transition:var(--transition);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:2px;background:linear-gradient(90deg,var(--primary-red),var(--cyber-blue));transition:var(--transition)}.card:hover{transform:translateY(-5px);border-color:var(--cyber-blue);box-shadow:0 20px 50px #00d9ff1a}.card:hover:before{left:0}.grid{display:grid;gap:var(--spacing-md)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.glitch{position:relative;color:var(--white)}.glitch:hover:before,.glitch:hover:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.glitch:hover:before{left:2px;text-shadow:-2px 0 var(--primary-red);animation:glitch-1 .3s infinite}.glitch:hover:after{left:-2px;text-shadow:2px 0 var(--cyber-blue);animation:glitch-2 .3s infinite}@keyframes glitch-1{0%,to{clip-path:inset(40% 0 61% 0)}20%{clip-path:inset(92% 0 1% 0)}40%{clip-path:inset(43% 0 1% 0)}60%{clip-path:inset(25% 0 58% 0)}80%{clip-path:inset(54% 0 7% 0)}}@keyframes glitch-2{0%,to{clip-path:inset(65% 0 15% 0)}20%{clip-path:inset(29% 0 3% 0)}40%{clip-path:inset(95% 0 5% 0)}60%{clip-path:inset(78% 0 14% 0)}80%{clip-path:inset(31% 0 64% 0)}}.circuit-bg{position:relative;overflow:hidden}.circuit-bg:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(90deg,var(--border-color) 1px,transparent 1px),linear-gradient(0deg,var(--border-color) 1px,transparent 1px);background-size:50px 50px;opacity:.1;pointer-events:none}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--darker-bg)}::-webkit-scrollbar-thumb{background:var(--cyber-blue);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--primary-red)}@media(max-width:768px){:root{--spacing-lg: 3rem;--spacing-xl: 4rem}.section{padding:var(--spacing-lg) 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .6s ease-out}.cyber-glow{text-shadow:0 0 10px var(--cyber-blue),0 0 20px var(--cyber-blue),0 0 30px var(--cyber-blue)}.red-glow{text-shadow:0 0 10px var(--primary-red),0 0 20px var(--primary-red),0 0 30px var(--primary-red)}
