.navbar{position:fixed;top:0;left:0;right:0;height:var(--navbar-height);background:#000000d1;-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);border-bottom:1px solid var(--border-subtle);z-index:var(--z-navbar);display:flex;flex-direction:column;justify-content:center;transition:background var(--duration-normal) ease,border-color var(--duration-normal) ease,box-shadow var(--duration-normal) ease}.navbar.scrolled{background:#000000f5;border-bottom-color:#00ff8826;box-shadow:0 1px #00ff880f,0 4px 24px #0006}.navbar-scan{position:absolute;bottom:0;left:0;height:1px;background:linear-gradient(90deg,transparent 0%,var(--accent) 40%,var(--cyan) 60%,transparent 100%);width:0;pointer-events:none;animation:navbarScan 2s var(--ease-out) .6s both}.navbar-inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.navbar-logo{display:flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-xl);color:var(--text-primary);text-decoration:none;letter-spacing:-.03em;transition:opacity var(--duration-fast) ease}.navbar-logo:hover{opacity:.85}.logo-gt{color:var(--accent);text-shadow:0 0 12px rgba(0,255,136,.4);letter-spacing:-.02em}.logo-name{color:var(--text-primary)}.navbar-logo .logo-cursor{display:inline-block;width:2px;height:1.1em;background:var(--accent);animation:blink 1s step-end infinite;margin-left:1px;vertical-align:middle}.navbar-links{display:flex;align-items:center;gap:var(--space-1);list-style:none}.navbar-link{position:relative;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-decoration:none;transition:color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.navbar-link:after{content:"";position:absolute;bottom:2px;left:var(--space-3);right:var(--space-3);height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-normal) var(--ease-out)}.navbar-link:hover{color:var(--text-primary);background:var(--bg-tertiary)}.navbar-link:hover:after{transform:scaleX(1)}.navbar-link.active{color:var(--accent);background:var(--accent-glow)}.navbar-link.active:after{transform:scaleX(1);background:var(--accent);box-shadow:0 0 6px #0f86}.navbar-link.active:before{content:"_";position:absolute;right:6px;bottom:4px;font-family:var(--font-display);font-size:10px;color:var(--accent);animation:blink 1s step-end infinite;line-height:1}.navbar-actions{display:flex;align-items:center;gap:var(--space-3)}.navbar-version{font-family:var(--font-code);font-size:10px;font-weight:var(--weight-medium);color:var(--text-secondary);background:#000;border:1px solid rgba(0,255,136,.14);border-radius:4px;padding:3px 8px;letter-spacing:.08em;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;box-shadow:0 0 0 .5px #00d4ff0f,0 0 12px #00ff880f,inset 0 1px #ffffff0f,inset 0 -1px #00000080;text-shadow:0 0 12px rgba(0,255,136,.25);transition:color var(--duration-fast) ease,border-color var(--duration-fast) ease,box-shadow var(--duration-fast) ease,text-shadow var(--duration-fast) ease}.navbar-version:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(0,255,136,.06) 50%,transparent 70%);background-size:200% 100%;background-position:200% 0;transition:background-position .5s var(--ease-out);pointer-events:none}.navbar-version:hover:after{background-position:-200% 0}.navbar.scrolled .navbar-version{color:var(--accent);border-color:#00ff8847;box-shadow:0 0 0 .5px #00d4ff1a,0 0 18px #00ff881f,inset 0 1px #ffffff12,inset 0 -1px #00000080;text-shadow:0 0 16px rgba(0,255,136,.5)}.navbar-github{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.navbar-github:hover{color:var(--accent);border-color:var(--border-accent);background:var(--accent-glow)}.navbar-github svg{width:16px;height:16px;fill:currentColor;flex-shrink:0}.navbar-menu-btn{display:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:34px;height:34px;background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;padding:8px 7px;transition:border-color var(--duration-fast) ease}.navbar-menu-btn:hover{border-color:var(--border-accent)}.navbar-menu-bar{width:100%;height:1.5px;background:var(--text-secondary);border-radius:1px;transition:all .25s ease;transform-origin:center}.navbar-menu-btn.open .navbar-menu-bar:nth-child(1){transform:translateY(5.5px) rotate(45deg);background:var(--accent)}.navbar-menu-btn.open .navbar-menu-bar:nth-child(2){opacity:0;transform:scaleX(0)}.navbar-menu-btn.open .navbar-menu-bar:nth-child(3){transform:translateY(-5.5px) rotate(-45deg);background:var(--accent)}.navbar-mobile{display:flex;flex-direction:column;background:#0a0a0ffa;border-top:1px solid var(--border-subtle);padding:var(--space-2) var(--space-4) var(--space-4);animation:fadeInUp .2s ease both}.navbar-mobile-link{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-secondary);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--border-subtle);text-decoration:none;transition:color var(--duration-fast) ease}.navbar-mobile-link:last-child{border-bottom:none}.navbar-mobile-link:hover{color:var(--accent)}.navbar-mobile-arrow{color:var(--accent);font-size:var(--text-lg);line-height:1;opacity:.6;font-family:var(--font-code)}.footer{margin-top:var(--space-32);background:var(--bg-primary);position:relative;overflow:hidden}.footer:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:600px;height:200px;background:radial-gradient(ellipse at top,rgba(0,255,136,.05) 0%,transparent 70%);pointer-events:none}.footer-separator{display:flex;align-items:center;gap:var(--space-4);padding:0 var(--space-6);max-width:var(--max-width);margin:0 auto;padding-top:var(--space-10);padding-bottom:var(--space-10)}.footer-sep-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--border-subtle) 20%,var(--border-medium) 50%,var(--border-subtle) 80%,transparent)}.footer-sep-text{font-family:var(--font-code);font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.15em;white-space:nowrap;padding:0 var(--space-2)}.footer-inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6) var(--space-12)}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:var(--space-12)}.footer-brand{display:flex;flex-direction:column}.footer-brand-card{background:var(--bg-secondary);border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);position:relative;overflow:hidden;transition:border-color var(--duration-normal) ease}.footer-brand-card:hover{border-color:var(--border-accent)}.footer-brand-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--accent),var(--cyan),transparent);opacity:.3}.footer-brand-titlebar{display:flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-lg)}.footer-brand-gt{color:var(--accent);text-shadow:0 0 10px rgba(0,255,136,.3)}.footer-brand-name{color:var(--text-primary);letter-spacing:-.02em}.footer-brand-cursor{display:inline-block;width:2px;height:1em;background:var(--accent);animation:blink 1s step-end infinite;margin-left:1px;vertical-align:middle}.footer-description{font-size:var(--text-sm);color:var(--text-muted);line-height:var(--leading-relaxed);margin:0;max-width:none}.footer-brand-meta{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.footer-meta-tag{font-family:var(--font-code);font-size:10px;color:var(--accent);background:var(--accent-glow);border:1px solid var(--border-accent);border-radius:3px;padding:1px 6px;letter-spacing:.04em}.footer-meta-sep{color:var(--text-muted);opacity:.4;font-size:var(--text-xs)}.footer-col-header{display:flex;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-subtle)}.footer-col-tilde{font-family:var(--font-code);font-size:var(--text-sm);color:var(--text-muted);letter-spacing:-.02em}.footer-col-path{font-family:var(--font-code);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--accent);letter-spacing:-.02em}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column li{margin-top:var(--space-2)}.footer-column a{display:inline-flex;align-items:center;font-size:var(--text-sm);color:var(--text-secondary);text-decoration:none;transition:color var(--duration-fast) var(--ease-out),gap var(--duration-fast) var(--ease-out);gap:0}.footer-column a:before{content:">";font-family:var(--font-code);font-size:.85em;color:var(--accent);opacity:0;max-width:0;overflow:hidden;transition:opacity var(--duration-fast) ease,max-width var(--duration-fast) ease,margin-right var(--duration-fast) ease;margin-right:0}.footer-column a:hover{color:var(--accent);gap:var(--space-1)}.footer-column a:hover:before{opacity:1;max-width:16px;margin-right:4px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid var(--border-subtle);font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-code);letter-spacing:.02em}.footer-copyright{display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted)}.footer-bottom-sep{opacity:.3}.footer-built{color:var(--text-muted)}.footer-built-accent{color:var(--accent)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--text-sm);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);border:none;cursor:pointer;text-decoration:none;transition:all var(--duration-normal) var(--ease-out);letter-spacing:-.01em}.btn-primary{background:var(--accent);color:var(--text-inverse);box-shadow:var(--shadow-glow-sm)}.btn-primary:hover{background:var(--accent-dim);box-shadow:var(--shadow-glow);transform:translateY(-1px);color:var(--text-inverse)}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-medium)}.btn-secondary:hover{border-color:var(--accent);background:var(--accent-glow);color:var(--accent)}.btn-lg{font-size:var(--text-base);padding:var(--space-4) var(--space-8)}.glow-card{--mx: 50%;--my: 50%;background:#12121a99;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-8);transition:all var(--duration-normal) var(--ease-out);position:relative;overflow:hidden}.glow-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent-glow-strong),transparent);opacity:0;transition:opacity var(--duration-normal) var(--ease-out)}.glow-card:after{content:"";position:absolute;inset:0;background:radial-gradient(600px circle at var(--mx) var(--my),rgba(0,255,136,.06),transparent 40%);opacity:0;transition:opacity var(--duration-normal) var(--ease-out);pointer-events:none;z-index:0}.glow-card:hover{border-color:var(--border-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.glow-card:hover:before{opacity:1}.glow-card:hover:after{opacity:1}.badge{display:inline-flex;align-items:center;font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-medium);padding:.2em .6em;border-radius:999px;letter-spacing:.02em}.badge-accent{background:var(--accent-glow);color:var(--accent);border:1px solid var(--border-accent)}.badge-cyan{background:#00d4ff1a;color:var(--cyan);border:1px solid rgba(0,212,255,.2)}.badge-amber{background:#ffaa001a;color:var(--amber);border:1px solid rgba(255,170,0,.2)}.badge-purple{background:#aa66ff1a;color:var(--purple);border:1px solid rgba(170,102,255,.2)}.section{padding:var(--space-24) 0}.section-header{text-align:center;margin-bottom:var(--space-16)}.section-header h2{margin-top:0}.section-header p{margin:var(--space-4) auto 0;max-width:55ch;font-size:var(--text-lg)}@media(max-width:768px){.navbar-links{display:none}.navbar-menu-btn{display:flex}.navbar-search-btn{display:none}.footer-grid{grid-template-columns:1fr 1fr;gap:var(--space-8)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}}@media(max-width:480px){.footer-grid{grid-template-columns:1fr}.navbar-version{display:none}}.custom-cursor{position:fixed;top:0;left:0;z-index:var(--z-cursor);pointer-events:none;font-family:var(--font-display);font-size:14px;color:var(--accent);text-shadow:0 0 8px rgba(0,255,136,.4);transition:width .3s var(--ease-spring),height .3s var(--ease-spring),font-size .3s var(--ease-spring),opacity .3s;will-change:transform}.custom-cursor.cursor-hover{width:40px;height:40px;border:1px solid var(--accent);border-radius:50%;background:#00ff880f;display:flex;align-items:center;justify-content:center;margin-left:-20px;margin-top:-20px;mix-blend-mode:difference}.custom-cursor.cursor-hover .custom-cursor-text{opacity:0}.has-custom-cursor,.has-custom-cursor *{cursor:none!important}
