:root{--bg:#050807;--panel:#ffffff08;--line:#ffffff14;--acc:#00ffa3;--acc2:#22d3ee;--hot:#ff2d78;--txt:#d9ded9;--dim:#78827c}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--txt);font-family:Space Grotesk,system-ui,sans-serif;overflow-x:hidden}::selection{background:var(--acc);color:#000}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{border:2px solid var(--bg);background:#12241c;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--acc)}.bg-grid{z-index:0;background-image:linear-gradient(#00ffa309 1px,#0000 1px),linear-gradient(90deg,#00ffa309 1px,#0000 1px);background-size:56px 56px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(90% 70% at 50% 0,#000 40%,#0000 100%);mask-image:radial-gradient(90% 70% at 50% 0,#000 40%,#0000 100%)}.scanlines{z-index:60;pointer-events:none;opacity:.14;background:repeating-linear-gradient(0deg,#00000038 0 1px,#0000 1px 4px);position:fixed;inset:0}.cursor-glow{z-index:1;pointer-events:none;background:radial-gradient(circle,#00ffa312 0%,#0000 65%);border-radius:50%;width:520px;height:520px;transition:transform .12s ease-out;position:fixed;top:0;left:0}body{cursor:none}.custom-cursor{z-index:9999;pointer-events:none;border:2px solid var(--acc);mix-blend-mode:difference;background:#00ffa326;border-radius:50%;width:18px;height:18px;transition:width .18s,height .18s,background .18s,border-color .18s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.custom-cursor.hover{border-color:var(--acc2);background:#00ffa314;width:42px;height:42px}.custom-cursor.click{transform:translate(-50%,-50%)scale(.7)}@media (pointer:coarse){body{cursor:auto}.custom-cursor{display:none}}.wrap{z-index:10;max-width:1140px;margin:0 auto;padding:0 40px;position:relative}.statusbar{z-index:20;color:var(--dim);letter-spacing:.08em;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000059;justify-content:space-between;align-items:center;padding:10px 40px;font-family:JetBrains Mono,monospace;font-size:.72rem;display:flex;position:relative}.statusbar .live{color:var(--acc);align-items:center;gap:8px;display:flex}.dot-live{background:var(--acc);width:7px;height:7px;box-shadow:0 0 10px var(--acc);border-radius:50%;animation:1.6s infinite pulse}@keyframes pulse{50%{opacity:.35}}.statusbar .clock{color:var(--acc2)}nav{justify-content:space-between;align-items:center;padding:22px 0;display:flex}.logo{color:#fff;align-items:center;gap:10px;font-size:1.35rem;font-weight:700;text-decoration:none;display:flex}.logo img{border:1px solid var(--line);border-radius:8px;width:34px;height:34px}.logo span{color:var(--acc)}.nav-links{gap:30px;font-family:JetBrains Mono,monospace;font-size:.85rem;list-style:none;display:flex}.nav-links a{color:var(--dim);text-decoration:none;transition:color .25s}.nav-links a:before{content:"./";color:#0000;transition:color .25s}.nav-links a:hover,.nav-links a:hover:before{color:var(--acc)}.hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:56px;padding:64px 0 72px;display:grid}.kicker{color:var(--acc);letter-spacing:.04em;margin-bottom:20px;font-family:JetBrains Mono,monospace;font-size:.85rem}.kicker:before{content:"// ";color:var(--dim)}h1{color:#fff;letter-spacing:-.02em;margin-bottom:24px;font-size:clamp(2.4rem,5.2vw,4.2rem);font-weight:700;line-height:1.08}.glitch{color:var(--acc);display:inline-block;position:relative}.glitch:before,.glitch:after{content:attr(data-text);opacity:.8;pointer-events:none;position:absolute;inset:0}.glitch:before{color:var(--acc2);animation:3.2s step-end infinite gl1}.glitch:after{color:var(--hot);animation:2.7s step-end infinite gl2}@keyframes gl1{0%,91%{clip-path:inset(0 0 100%);transform:none}92%{clip-path:inset(10% 0 55%);transform:translate(-4px,-2px)}94%{clip-path:inset(60% 0 5%);transform:translate(3px,1px)}96%{clip-path:inset(30% 0 40%);transform:translate(-2px)}98%,to{clip-path:inset(0 0 100%);transform:none}}@keyframes gl2{0%,88%{clip-path:inset(0 0 100%);transform:none}89%{clip-path:inset(70% 0 8%);transform:translate(4px,2px)}92%{clip-path:inset(20% 0 60%);transform:translate(-3px,-1px)}95%{clip-path:inset(45% 0 30%);transform:translate(2px)}97%,to{clip-path:inset(0 0 100%);transform:none}}.subtitle{color:var(--dim);max-width:520px;margin-bottom:34px;font-size:1.08rem;line-height:1.75}.cta-row{flex-wrap:wrap;gap:14px;margin-bottom:40px;display:flex}.btn{border-radius:6px;padding:14px 26px;font-family:JetBrains Mono,monospace;font-size:.9rem;text-decoration:none;transition:all .25s}.btn-primary{background:var(--acc);color:#02120b;font-weight:600}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 34px #00ffa373}.btn-outline{border:1px solid var(--line);color:var(--txt)}.btn-outline:hover{border-color:var(--acc);color:var(--acc)}.mini-stats{color:var(--dim);flex-wrap:wrap;gap:26px;font-family:JetBrains Mono,monospace;font-size:.78rem;display:flex}.mini-stats b{color:#fff;font-weight:600}.mini-stats span:before{content:"> ";color:var(--acc)}.learning-note{border-left:2px solid var(--acc);max-width:520px;color:var(--dim);margin-top:26px;padding-left:14px;font-family:JetBrains Mono,monospace;font-size:.82rem;line-height:1.65}.learning-note span{color:var(--acc);margin-right:6px}.win{background:#0006;border:1px solid #00ffa340;border-radius:12px;overflow:hidden;box-shadow:0 0 60px #00ffa31f,inset 0 0 40px #00ffa308}.win-bar{border-bottom:1px solid var(--line);color:var(--dim);align-items:center;gap:8px;padding:10px 14px;font-family:JetBrains Mono,monospace;font-size:.72rem;display:flex}.win-bar .d{border-radius:50%;width:10px;height:10px}.win-bar .d.r{background:#ff5f57}.win-bar .d.y{background:#febc2e}.win-bar .d.g{background:#28c840}.win-bar .title{margin-left:8px}.win-body{padding:18px;position:relative}.win-body img.avatar{border-radius:8px;width:100%;display:block}.win-badge{background:#0a0d0b;border:1px solid #00ffa373;border-radius:12px;justify-content:center;align-items:center;width:58px;height:58px;display:flex;position:absolute;bottom:8px;right:8px;box-shadow:0 0 22px #00ffa34d}.win-badge img{border-radius:8px;width:46px;height:46px}.win-caption{color:var(--dim);text-align:center;margin-top:12px;font-family:JetBrains Mono,monospace;font-size:.72rem}.win-caption b{color:var(--acc);font-weight:400}.ticker{z-index:10;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#00ffa305;padding:14px 0;position:relative;overflow:hidden}.ticker-track{width:max-content;animation:26s linear infinite tick;display:flex}.ticker:hover .ticker-track{animation-play-state:paused}.ticker-track span{color:var(--dim);letter-spacing:.14em;white-space:nowrap;padding:0 22px;font-family:JetBrains Mono,monospace;font-size:.82rem}.ticker-track span i{color:var(--acc);padding-right:44px;font-style:normal}@keyframes tick{to{transform:translate(-50%)}}section{padding:90px 0 0}.sec-label{color:var(--acc);margin-bottom:14px;font-family:JetBrains Mono,monospace;font-size:.85rem}.sec-label:before{content:"// ";color:var(--dim)}h2{color:#fff;letter-spacing:-.01em;margin-bottom:44px;font-size:clamp(1.8rem,3.4vw,2.6rem)}.cards{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:28px 26px;transition:all .3s;position:relative}.card:before,.card:after{content:"";border-style:solid;border-color:#00ffa340;width:14px;height:14px;transition:all .3s;position:absolute}.card:before{border-width:1px 0 0 1px;border-radius:10px 0 0;top:-1px;left:-1px}.card:after{border-width:0 1px 1px 0;border-radius:0 0 10px;bottom:-1px;right:-1px}.card:hover{background:#00ffa308;border-color:#00ffa359;transform:translateY(-4px)}.card:hover:before,.card:hover:after{border-color:var(--acc);width:22px;height:22px}.card .head{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.card .ico{font-size:1.7rem}.card .num{color:#2a352f;font-family:JetBrains Mono,monospace;font-size:.75rem}.card:hover .num{color:var(--acc)}.card h3{color:#fff;margin-bottom:10px;font-size:1.12rem}.card p{color:var(--dim);margin-bottom:18px;font-size:.92rem;line-height:1.6}.card .tag{color:var(--acc);background:#00ffa312;border-radius:4px;padding:5px 10px;font-family:JetBrains Mono,monospace;font-size:.72rem;display:inline-block}.timeline{padding-left:34px;position:relative}.timeline:before{content:"";background:linear-gradient(var(--acc), transparent 85%);width:1px;position:absolute;top:6px;bottom:6px;left:7px}.step{align-items:flex-start;gap:20px;padding:18px 0 22px;display:flex;position:relative}.step .idx{color:#3a453f;min-width:34px;padding-top:5px;font-family:JetBrains Mono,monospace;font-size:.75rem}.step h4{color:#fff;margin-bottom:5px;font-size:1.05rem}.step p{color:var(--dim);font-size:.92rem;line-height:1.55}.status{white-space:nowrap;border-radius:20px;flex-shrink:0;margin-left:auto;padding:5px 11px;font-family:JetBrains Mono,monospace;font-size:.68rem}.status.done{color:var(--acc);background:#00ffa31a;border:1px solid #00ffa340}.status.now{color:#febc2e;background:#febc2e1a;border:1px solid #febc2e4d}.status.next{color:var(--dim);border:1px solid var(--line);background:#ffffff0a}.cert-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;max-width:820px;display:grid}.cert-card{border:1px solid var(--line);background:var(--panel);border-radius:12px;align-items:center;gap:24px;padding:28px;text-decoration:none;transition:border-color .25s,box-shadow .25s,transform .25s;display:flex}.cert-card:hover{border-color:#00ffa373;transform:translateY(-2px);box-shadow:0 0 34px #00ffa31a}.cert-card:focus-visible{outline:2px solid var(--acc);outline-offset:3px}.cert-badge{filter:drop-shadow(0 8px 20px #00000059);flex-shrink:0;width:120px;height:120px}.cert-copy{flex-direction:column;gap:8px;display:flex}.cert-issuer{letter-spacing:.12em;text-transform:uppercase;color:var(--acc);font-family:JetBrains Mono,monospace;font-size:.7rem}.cert-copy h3{color:#fff;font-size:1.15rem;line-height:1.25}.cert-copy p{color:var(--dim);font-size:.9rem;line-height:1.55}.cert-link{color:var(--acc2);margin-top:2px;font-family:JetBrains Mono,monospace;font-size:.74rem}.cert-card:hover .cert-link{color:var(--acc)}.contact-box{border:1px solid var(--line);background:var(--panel);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding:44px;display:flex}.contact-links{flex-wrap:wrap;gap:12px;display:flex}.contact-links a{color:var(--txt);border:1px solid var(--line);border-radius:6px;align-items:center;gap:9px;padding:13px 20px;font-family:JetBrains Mono,monospace;font-size:.85rem;text-decoration:none;transition:all .25s;display:inline-flex}.contact-links a:hover{border-color:var(--acc);color:var(--acc);box-shadow:0 0 20px #00ffa326}.mail-link{position:relative}.mail-link:focus-visible{outline:2px solid var(--acc);outline-offset:3px}.mail-link svg{transition:transform .25s}.mail-link:hover svg,.mail-link:focus-visible svg{animation:.55s mail-wiggle}@keyframes mail-wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-12deg)translateY(-1px)}55%{transform:rotate(10deg)}80%{transform:rotate(-4deg)}}.mail-link:hover .mail-text,.mail-link:focus-visible .mail-text{color:var(--acc);text-shadow:-1px 0 #22d3eeb3,1px 0 #ff2d788c}.mail-cursor{background:var(--acc);opacity:0;border-radius:1px;width:7px;height:14px;margin-left:-5px}.mail-link:hover .mail-cursor,.mail-link:focus-visible .mail-cursor{opacity:1;animation:1s step-end infinite mail-blink}@keyframes mail-blink{50%{opacity:.15}}.mail-tip{z-index:30;white-space:nowrap;pointer-events:none;color:#cfe9dd;opacity:0;background:#07110d;border:1px solid #00ffa34d;border-radius:6px;padding:8px 11px;font-size:.7rem;transition:opacity .2s,transform .2s;position:absolute;bottom:calc(100% + 12px);right:0;transform:translateY(4px);box-shadow:0 10px 28px #00000073}.mail-tip b{color:var(--acc);font-weight:600}.mail-tip:after{content:"";background:#07110d;border-bottom:1px solid #00ffa34d;border-right:1px solid #00ffa34d;width:9px;height:9px;position:absolute;bottom:-5px;right:22px;transform:rotate(45deg)}.mail-link:hover .mail-tip,.mail-link:focus-visible .mail-tip{opacity:1;transform:none}footer{border-top:1px solid var(--line);text-align:center;color:#4a544e;margin-top:100px;padding:36px 40px;font-family:JetBrains Mono,monospace;font-size:.78rem}footer img{opacity:.85;width:26px;margin-bottom:14px}footer .hash{color:var(--acc)}.error-wrap{justify-content:center;align-items:center;min-height:100vh;padding:56px 0;display:flex}.error-win{width:100%;max-width:720px;box-shadow:none;background:0 0;border:0;border-radius:0}.error-body{padding:42px 42px 36px}.error-grid{grid-template-columns:minmax(150px,210px) 1fr;align-items:center;gap:36px;margin-bottom:30px;display:grid}.error-code-box{flex-direction:column;gap:10px;display:flex}.error-code{color:var(--hot);letter-spacing:-.06em;font-family:JetBrains Mono,monospace;font-size:clamp(4.2rem,9vw,6.5rem);font-weight:600;line-height:.9}.error-code.glitch{text-shadow:0 0 28px #ff2d7838;animation:3.4s step-end infinite error-glitch-jitter}.error-code.glitch:before{color:var(--acc2);opacity:.85;animation:2.2s step-end infinite error-glitch-a}.error-code.glitch:after{color:var(--acc);opacity:.85;animation:2.8s step-end infinite error-glitch-b}@keyframes error-glitch-jitter{0%,86%,to{transform:none}87%{transform:translate(3px,-2px)skew(5deg)}88%{transform:translate(-4px,2px)skew(-5deg)}89%{transform:translate(2px,1px)skew(2deg)}90%{transform:none}}@keyframes error-glitch-a{0%,to{clip-path:inset(0 0 100%);transform:translate(0)}6%{clip-path:inset(8% 0 62%);transform:translate(-6px,-2px)}8%{clip-path:inset(0 0 100%)}22%{clip-path:inset(58% 0 12%);transform:translate(6px,2px)}24%{clip-path:inset(0 0 100%)}39%{clip-path:inset(32% 0 42%);transform:translate(-4px,1px)}41%{clip-path:inset(0 0 100%)}61%{clip-path:inset(72% 0 4%);transform:translate(5px,-1px)}63%{clip-path:inset(0 0 100%)}79%{clip-path:inset(18% 0 70%);transform:translate(-7px,2px)}81%{clip-path:inset(0 0 100%)}}@keyframes error-glitch-b{0%,to{clip-path:inset(100% 0 0);transform:translate(0)}12%{clip-path:inset(70% 0 8%);transform:translate(7px,2px)}14%{clip-path:inset(100% 0 0)}34%{clip-path:inset(10% 0 66%);transform:translate(-5px,-2px)}36%{clip-path:inset(100% 0 0)}53%{clip-path:inset(46% 0 34%);transform:translate(4px,1px)}55%{clip-path:inset(100% 0 0)}74%{clip-path:inset(22% 0 58%);transform:translate(-6px,-1px)}76%{clip-path:inset(100% 0 0)}}.error-sub{letter-spacing:.22em;color:var(--dim);font-family:JetBrains Mono,monospace;font-size:.68rem}.error-title{color:#fff;letter-spacing:-.02em;margin-bottom:14px;font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.12}.error-msg{color:var(--dim);max-width:54ch;font-size:.95rem;line-height:1.7}.error-actions{flex-wrap:wrap;gap:12px;display:flex}.pixel{image-rendering:pixelated}@media (width<=900px){.wrap{padding:0 22px}.statusbar{padding:10px 22px}.statusbar .mid{display:none}.hero{grid-template-columns:1fr;gap:44px;padding:44px 0 56px}.cards{grid-template-columns:1fr}.nav-links{display:none}.contact-box{padding:30px 24px}footer{padding:32px 22px}.error-wrap{min-height:100vh;padding:36px 0}.error-grid{grid-template-columns:1fr;gap:18px}.error-code{font-size:clamp(4rem,20vw,6rem)}.error-body{padding:28px 22px 26px}.mail-tip{left:0;right:auto}.mail-tip:after{left:22px;right:auto}.cert-card{gap:18px;padding:22px}.cert-badge{width:96px;height:96px}}@media (width<=560px){.cert-card{flex-direction:column;align-items:flex-start}.cert-badge{width:88px;height:88px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
