@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap');
:root{--bg:#080d12;--panel:#101820;--panel2:#131e27;--line:#26353f;--text:#f0f4f2;--muted:#8d9ca3;--green:#8ee05e;--green-dark:#1d542c;--cyan:#6ad8d1;--amber:#e5a84c;--danger:#f17667;--space:8px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 0%,#14252b 0,transparent 32%),var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;line-height:1.5;min-height:100vh}.scanlines{position:fixed;inset:0;pointer-events:none;opacity:.05;background:repeating-linear-gradient(0deg,transparent 0 3px,#cfe6de 4px);z-index:10}.topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 clamp(20px,5vw,80px);gap:16px;background:#0a1117dd;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;font-family:'Barlow Condensed';font-weight:700;letter-spacing:1.5px}.brand b{color:var(--green)}.brand-icon{display:grid;place-items:center;border:1px solid var(--green);color:var(--green);font-size:12px;width:31px;height:31px;transform:skew(-10deg)}.topbar-status{margin-left:auto;font:600 11px 'Barlow Condensed';letter-spacing:1.3px;color:var(--muted)}.main-nav{display:flex;gap:16px;margin-left:12px}.nav-link{color:var(--muted);font:600 11px 'Barlow Condensed';letter-spacing:1px;text-decoration:none;text-transform:uppercase}.nav-link:hover,.nav-link.active{color:var(--green)}.topbar-status i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);margin-right:8px}.lang-switch{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:9px 13px;font:600 12px 'Barlow Condensed';letter-spacing:1px;text-decoration:none;transition:border .2s,color .2s}
.lang-switch:hover{border-color:var(--green);color:var(--green)}
.avatar-button{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:9px 13px;font:600 12px 'Barlow Condensed';letter-spacing:1px}.avatar-button span{color:var(--green);margin-left:8px}.dashboard{max-width:1300px;margin:auto;padding:48px clamp(20px,5vw,80px) 80px}.hero-panel{min-height:355px;background:linear-gradient(110deg,#14211f,#0d171d 62%,#10252a);border:1px solid var(--line);position:relative;overflow:hidden;padding:48px;display:flex;align-items:center}.hero-panel:after{content:'';position:absolute;inset:0;background:linear-gradient(125deg,transparent 55%,#8ee05e08);pointer-events:none}.hero-copy{max-width:630px;position:relative;z-index:1}.eyebrow{font:600 11px 'Barlow Condensed';letter-spacing:2px;color:var(--green);margin:0 0 14px}.hero-copy h1{font:700 clamp(42px,5vw,72px)/.96 'Barlow Condensed';letter-spacing:1px;text-transform:uppercase;margin:0 0 18px}.hero-copy h1 em{color:var(--green);font-style:normal}.hero-text{color:#b3c0c1;max-width:520px;margin:0 0 28px;font-size:15px}.button{border:0;padding:13px 18px;font:700 12px 'Barlow Condensed';letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:18px;vertical-align:-1px;margin-left:12px}.button-primary{background:var(--green);color:#08120d}.button-primary:hover{background:#b0ef82}.radar{width:290px;height:290px;margin-left:auto;margin-right:5%;position:relative;border:1px solid #7ecf9a44;border-radius:50%;background:radial-gradient(circle,#18392d88 0 2%,transparent 3%),repeating-radial-gradient(circle,#40635433 0 1px,transparent 2px 50px),linear-gradient(90deg,transparent 49.5%,#7ecf9a33 50% 50.5%,transparent 51%),linear-gradient(0deg,transparent 49.5%,#7ecf9a33 50% 50.5%,transparent 51%)}.radar-ring{position:absolute;inset:20%;border:1px solid #7ecf9a44;border-radius:50%}.ring-two{inset:40%}.radar-sweep{position:absolute;width:50%;height:1px;background:linear-gradient(90deg,var(--green),transparent);left:50%;top:50%;transform-origin:left;animation:sweep 4s linear infinite}@keyframes sweep{to{transform:rotate(360deg)}}.radar-dot{position:absolute;width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 12px var(--green)}.dot-one{top:28%;right:22%}.dot-two{bottom:32%;left:25%}.radar-center{position:absolute;top:calc(50% - 16px);left:calc(50% - 16px);border:1px solid var(--green);width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--green);font:600 10px 'Barlow Condensed'}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}.stat-card{min-height:145px;background:var(--panel);border:1px solid var(--line);padding:20px;position:relative}.stat-label{display:block;color:var(--muted);font:600 10px 'Barlow Condensed';letter-spacing:1.4px;margin-bottom:16px}.stat-card strong{font:700 30px 'Barlow Condensed';letter-spacing:1px;display:block}.stat-card strong small{font-size:13px;color:var(--muted)}.stat-card small{font-size:11px;color:var(--muted)}.progress-track{height:5px;background:#25343b;margin:10px 0 6px}.progress-track span{display:block;height:100%;width:0;background:var(--green);transition:width .5s}.success-text{color:var(--green)!important}.stat-accent{border-color:#8ee05e66;background:linear-gradient(130deg,#17291f,#101820)}.rank-mark{position:absolute;right:22px;top:48px;color:var(--green);font-size:28px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;margin-top:42px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.section-heading h2{font:700 32px/1 'Barlow Condensed';text-transform:uppercase;margin:0}.live-badge{font:600 10px 'Barlow Condensed';letter-spacing:1px;color:var(--green);border:1px solid #8ee05e66;padding:5px 9px}.mission-list{display:grid;gap:10px}.mission-card{display:grid;grid-template-columns:58px 1fr auto;gap:18px;align-items:center;background:var(--panel);border:1px solid var(--line);padding:18px;transition:border .2s,transform .2s}.mission-card:hover{border-color:#8ee05e99;transform:translateX(4px)}.mission-number{color:var(--green);font:700 18px 'Barlow Condensed'}.mission-card h3{font:700 19px 'Barlow Condensed';margin:0 0 4px;text-transform:uppercase}.mission-card p{color:var(--muted);font-size:12px;margin:0}.skill-chip{display:inline-block;color:var(--cyan);font:600 10px 'Barlow Condensed';letter-spacing:1px;margin-top:8px}.mission-action{background:transparent;border:1px solid var(--line);color:var(--text);padding:9px 12px;font:600 11px 'Barlow Condensed';letter-spacing:1px;cursor:pointer}.mission-action:hover{border-color:var(--green);color:var(--green)}.mission-card.locked{opacity:.48}.briefing-card{border:1px solid var(--line);background:var(--panel);padding:26px;height:max-content}.briefing-card h3{font:700 28px/1.02 'Barlow Condensed';text-transform:uppercase;margin:0 0 14px}.briefing-card>p:not(.eyebrow){font-size:12px;color:var(--muted);margin-bottom:24px}.briefing-line{border-top:1px solid var(--line);padding:13px 0;display:grid;grid-template-columns:32px 1fr auto;align-items:center}.briefing-line span{font:600 11px 'Barlow Condensed';color:var(--green)}.briefing-line b{font:600 12px}.briefing-line small{color:var(--muted);font-size:10px}.modal-backdrop{position:fixed;z-index:20;inset:0;background:#020609dd;padding:24px;overflow:auto}.mission-modal{max-width:920px;margin:5vh auto;background:#101920;border:1px solid #789b8a;box-shadow:0 0 60px #000;padding:34px;position:relative}.modal-close{position:absolute;right:18px;top:12px;color:var(--muted);background:none;border:0;font-size:28px;cursor:pointer}.modal-meta{display:flex;gap:14px;color:var(--green);font:600 11px 'Barlow Condensed';letter-spacing:1.5px}.modal-meta span+span{color:var(--cyan)}.mission-modal h2{font:700 38px 'Barlow Condensed';text-transform:uppercase;margin:12px 0 4px}.mission-modal>p{color:var(--muted);margin-top:0}.challenge-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}.code-label{display:block;color:var(--muted);font:600 10px 'Barlow Condensed';letter-spacing:1.5px;margin-bottom:8px}.code-editor{width:100%;height:230px;resize:vertical;background:#071016;border:1px solid var(--line);color:#caedc2;font:13px/1.6 monospace;padding:14px;outline:none}.code-editor:focus{border-color:var(--green)}.preview-frame{min-height:230px;background:#f2f5f2;color:#102017;border:1px solid var(--line);padding:18px;overflow:auto}.preview-frame h2,.preview-frame h1{margin-top:0}.hint-box{margin-top:12px;border-left:2px solid var(--amber);background:#1d211b;padding:10px 12px;font-size:11px;color:#c2c8ba}.hint-box b{color:var(--amber);font:600 10px 'Barlow Condensed';letter-spacing:1px;display:block;margin-bottom:4px}.result-message{font-size:12px;min-height:18px}.result-message.success{color:var(--green)}.result-message.error{color:var(--danger)}.installer-topbar{position:relative;height:60px;padding:0 24px;margin-bottom:24px}
.installer-topbar{position:relative;height:60px;padding:0 24px;margin-bottom:24px}
.installer-page{display:grid;place-items:center;padding:24px}.site-footer{text-align:center;padding:24px 16px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.site-footer p{margin:0}.training-section{margin-top:48px;padding-top:36px;border-top:1px solid var(--line)}.training-intro{color:var(--muted);max-width:620px;margin:-8px 0 24px}.training-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.training-card{background:var(--panel);border:1px solid var(--line);padding:22px;min-height:190px;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.training-card:hover{border-color:#8ee05e88;transform:translateY(-3px)}.training-code{font:600 10px 'Barlow Condensed';letter-spacing:1.5px;color:var(--green);margin-bottom:14px}.training-card h3{font:700 22px/1 'Barlow Condensed';text-transform:uppercase;margin:0 0 10px}.training-card p{color:var(--muted);font-size:13px;line-height:1.5;margin:0 0 20px}.training-card-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px}.training-card .mission-action{white-space:nowrap}.training-modal{width:min(760px,92vw);max-height:88vh;overflow-y:auto;background:var(--panel);border:1px solid var(--line);padding:32px;position:relative}.training-modal h2{font:700 32px/1 'Barlow Condensed';text-transform:uppercase;margin:0 0 20px}.training-body{display:flex;flex-direction:column;gap:24px;margin-bottom:28px}.training-section h3{font:700 18px 'Barlow Condensed';text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px;color:var(--green)}.training-section p{color:#b3c0c1;font-size:14px;line-height:1.6;margin:0 0 12px}.training-section pre{background:#080f14;border:1px solid var(--line);padding:16px;overflow-x:auto;font:13px/1.5 'Courier New',monospace;color:#8ee05e;margin:0}.training-exercises{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.exercise{border:1px solid var(--line);padding:18px;background:#0d171d}.exercise-label{font:600 10px 'Barlow Condensed';letter-spacing:1.5px;color:var(--green);margin-bottom:10px;display:block}.exercise-question{font-size:14px;color:var(--text);margin:0 0 12px;line-height:1.5}.exercise-options{display:flex;flex-direction:column;gap:8px}.exercise-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);cursor:pointer;font-size:13px;color:#b3c0c1;transition:border-color .15s,background .15s}.exercise-option:hover{border-color:#8ee05e88;background:#14211f}.exercise-option.selected{border-color:var(--green);background:#17331f;color:var(--text)}.exercise-option input{accent-color:var(--green)}.exercise-input{width:100%;box-sizing:border-box;background:#080f14;border:1px solid var(--line);padding:12px;color:var(--text);font:14px 'Courier New',monospace}.exercise-input:focus{outline:1px solid var(--green)}.exercise-code{width:100%;box-sizing:border-box;min-height:80px;background:#080f14;border:1px solid var(--line);padding:12px;color:var(--text);font:13px/1.5 'Courier New',monospace;resize:vertical}.exercise-code:focus{outline:1px solid var(--green)}.exercise-preview{background:#080f14;border:1px solid var(--line);padding:12px;margin-top:8px;font:13px/1.5 'Courier New',monospace;color:#b3c0c1;min-height:40px}.exercise-actions{display:flex;gap:8px;margin-top:8px}.exercise-actions button{font:600 11px 'Barlow Condensed';letter-spacing:1px;text-transform:uppercase;padding:8px 14px;border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer}.exercise-actions button:hover{border-color:var(--green);color:var(--green)}.training-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--line)}.training-footer .result-message{margin:0}.exercise.correct{border-color:var(--green)}.exercise.incorrect{border-color:#ffb3a8}.auth-modal{width:min(430px,100%);background:var(--panel);border:1px solid var(--line);padding:34px;position:relative}.auth-modal h2{font:700 38px/1 'Barlow Condensed';text-transform:uppercase;margin:0 0 12px}.auth-copy{color:var(--muted);font-size:13px;line-height:1.5}.auth-form{display:grid;gap:16px;margin-top:24px}.auth-form label{font:600 11px 'Barlow Condensed';letter-spacing:1px;color:var(--muted);text-transform:uppercase}.auth-form input{display:block;width:100%;box-sizing:border-box;margin-top:7px;background:#080f14;border:1px solid var(--line);padding:13px;color:var(--text)}.auth-form input:focus{outline:1px solid var(--green)}.auth-switch{font-size:12px;color:var(--muted)}.auth-switch button{border:0;background:none;color:var(--green);cursor:pointer;font:inherit}.result-message.error{color:#ffb3a8}.result-message.success{color:var(--green)}@media(max-width:800px){.main-nav{order:4;width:100%;margin:10px 0 0}.topbar{flex-wrap:wrap}.training-grid{grid-template-columns:1fr}}.installer-shell{width:min(540px,100%)}.installer-card{background:var(--panel);border:1px solid var(--line);padding:38px;margin-top:26px}.installer-card h1{font:700 44px/1 'Barlow Condensed';text-transform:uppercase;margin:0 0 14px}.lede{color:var(--muted);font-size:14px}.installer-form{display:grid;gap:18px;margin-top:28px}.installer-form label{font:600 11px 'Barlow Condensed';letter-spacing:1px;color:var(--muted)}.installer-form input{display:block;width:100%;background:#080f14;border:1px solid var(--line);padding:13px;color:var(--text);margin-top:7px}.installer-form input:focus{outline:1px solid var(--green)}.form-note{font-size:11px;color:var(--muted);margin-bottom:0}.notice{padding:12px;font-size:12px;margin:18px 0}.notice.success{background:#17331f;color:var(--green)}.notice.error{background:#3b1d1c;color:#ffb3a8}.notice a{color:white;margin-left:8px}@media(max-width:800px){.hero-panel{padding:30px;min-height:0}.radar{display:none}.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.topbar-status{display:none}.challenge-layout{grid-template-columns:1fr}.mission-modal{padding:25px 18px}.dashboard{padding-top:24px}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{padding:14px;min-height:126px}.stat-card strong{font-size:25px}.mission-card{grid-template-columns:34px 1fr}.mission-action{grid-column:2;justify-self:start}.hero-copy h1{font-size:48px}}
