From 5bc35d016ab8f972764a821bf9ef60161af6e27c Mon Sep 17 00:00:00 2001 From: PelleNybe <157639057+PelleNybe@users.noreply.github.com> Date: Thu, 28 May 2026 20:50:06 +0000 Subject: [PATCH] feat: Add Agent-Commit Tracker as a featured project --- dist/index.html | 2 +- dist/styles.css | 2 +- index.html | 71 ++++++++++++----- package-lock.json | 16 ++-- package.json | 2 +- styles.css | 193 ++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 257 insertions(+), 29 deletions(-) diff --git a/dist/index.html b/dist/index.html index 7f494a5..7f3d1d3 100644 --- a/dist/index.html +++ b/dist/index.html @@ -11,4 +11,4 @@ "foundingDate": "2024", "areaServed": "Global", "knowsAbout": ["AI", "Robotics", "Edge AI", "Web3", "Blockchain", "Automation", "GreenTech", "Compliance"] - }
CORAX_OS v2.0
Initializing boot sequence...
corax_os_v2.0 -- bash

Pelle Nyberg

Deep Tech Developer & AI/Robotics Innovator

"I combine strategic vision with hands-on engineering at the hardware level. With a background as a Master Gardener and an expert in industrial forestry flows, I build cyber-physical systems that truly understand the biological environments they operate within. I can solder a circuit, train a neural network, and design the ecological context."

🤖 Architectures & Innovation

As the Founder and CEO of Corax CoLAB, I drive intelligent automation in Deep Tech and AgTech. I am the architect behind the GAP (Green Automated Process) Platform and GAPbot, a Python-based hexapod robot. These platforms integrate IoT sensors, AI models like EcoMind, and autonomous navigation to conquer challenging terrains.

DRAG TO ROTATE
SCROLL TO ZOOM

GAPbot Configurator

Processing Power: 85%
Energy Efficiency: 90%
Weight / Mobility: 75%

GAP Platform (The Brain)

The industrial analysis and control center, developed to handle the most complex business logic and real-time data streams. A hybrid cloud/edge platform orchestrating fleets of robots.

  • Hybrid Architecture: Balances reliable execution with ultra-low latency for Edge data.
  • Protocol Integration: Seamless integration with OPC-UA, Modbus, BACnet, and PQC-secured MQTT.
  • Explainable AI (XAI): Human-understandable explanations for predictive decisions (EU AI Act compliant).
  • Digital Twin & 4D: Virtual copies for remote monitoring and Digital Risk Mitigation.

GAPbot (The Body)

Autonomous hexapod robotics for optimization, security, and analysis. Equipped with 'Sun Bathing Mode' for extreme endurance and superior accessibility in complex environments.

  • Neuro-Symbolic Hybrid AI: Edge AI (YOLOv8-Seg on Hailo-8L) + Generative AI (Phi-3 Medium).
  • Hexapod Kinematics: Superior mobility with 'Split-Belly Kinematics' for a low center of gravity.
  • Energy Optimization: MPPT 'Sun Bathing Mode' maximizes autonomous runtime via solar panels.
  • Self-Healing Code: Dynamically identifies errors, generates fixes, and applies them for maximum uptime.

Tech Stack & Hardware

The "Full-Stack" of Matter: My technical environment bridges high-level code with physical execution.

Edge AI & Robotics

Edge AI & Robotics

Developing with Python and ROS on Linux environments to bring intelligent perception to edge devices.

Hardware Specialization

Hardware Specialization

Optimizing compute on Raspberry Pi 5 (16 GiB RAM), utilizing Hailo 8L AI accelerators (PCIe), and fast NVMe SSDs.

Workflow

Workflow & Integration

Operating headless environments via SSH/VNC, with heavy VScode and GitHub integrations powered by AI-driven development.

Code as Architecture

Interact with the holographic representation of a GAP-managed facility. Discover how our code translates to physical automation.

Irrigation Pump
Edge Sensor Hub
Solar MPPT Array
pump_control.py ● LIVE

Neuro-Symbolic AI Simulator

Watch our hybrid AI process raw Edge data, identify anomalies, and output logical, explainable decisions in real-time.

YOLOv8-Seg (Edge) 60 FPS
Symbolic Logic Engine (XAI)
> SYSTEM INITIALIZED. Awaiting data...
Current Action State
MONITORING

Open Source & Developer Tools

Showcasing specific coding projects, from serverless webhooks to Web3 data integrity and decentralized IoT networks.

Domain Expertise: Biology Meets Tech

Digital Bridge
Enterprise Grade Security

With formal graduation as a Master Gardener and a decade of experience as a Quality Leader in industrial forestry, I bring a unique dual expertise. This ensures that my technological solutions are not just "smart," but ecologically sound and grounded in physical reality.

30-50%
Energy Savings
100%
Regulatory Traceability
Zero
Trust Architecture
Edge
Local Data Processing

Insights & Updates

Deep dives into our neuro-symbolic AI models, hardware iterations, and Web3 infrastructure developments.

Web3 & Blockchain Integration

Experience our trustless architecture. Connect your wallet to sign a secure payload, demonstrating our decentralized approach and seamless interactions with blockchain tech.

Decentralized AI Ecosystem

Corax CoLAB merges cutting-edge AI and automation with Web3 infrastructure to ensure high-security, transparent, and auditable processes. Our integrations empower edge devices to securely authenticate, share data, and process commands leveraging decentralized smart contracts.

  • Secure cryptographic authorization for GAPbot endpoints.
  • Smart contract-based device state management.
  • Incentivized decentralized data exchange.
Explore Crypto P's Crypto Circus →

Interactive Signature Demo

Status: Disconnected

Recent GitHub Activity

Global Decentralized Network

Real-time visualization of active edge nodes, validators, and data relays across the globe.

● Active Node ● Validator ● Data Relay

Live Swarm Telemetry

Interactive Architecture Diagram

Edge AI
Swarm logic
Web3
Hardware
Hover over a component to see details.

Let's Connect

Ready to build the future with autonomous robotics, Edge AI, and sustainable ecosystems? Let's talk.

🌐

Main Website

Visit our primary domain for deep dives into our services, enterprise solutions, and booking a demo.

coraxcolab.com
✉️

Contact Us

Reach out directly for consultation regarding AI, Web3, Blockchain, and advanced robotics integrations.

info@coraxcolab.com
\ No newline at end of file + }
CORAX_OS v2.0
Initializing boot sequence...
corax_os_v2.0 -- bash

Pelle Nyberg

Deep Tech Developer & AI/Robotics Innovator

"I combine strategic vision with hands-on engineering at the hardware level. With a background as a Master Gardener and an expert in industrial forestry flows, I build cyber-physical systems that truly understand the biological environments they operate within. I can solder a circuit, train a neural network, and design the ecological context."

🤖 Architectures & Innovation

As the Founder and CEO of Corax CoLAB, I drive intelligent automation in Deep Tech and AgTech. I am the architect behind the GAP (Green Automated Process) Platform and GAPbot, a Python-based hexapod robot. These platforms integrate IoT sensors, AI models like EcoMind, and autonomous navigation to conquer challenging terrains.

DRAG TO ROTATE
SCROLL TO ZOOM

GAPbot Configurator

Processing Power: 85%
Energy Efficiency: 90%
Weight / Mobility: 75%

GAP Platform (The Brain)

The industrial analysis and control center, developed to handle the most complex business logic and real-time data streams. A hybrid cloud/edge platform orchestrating fleets of robots.

  • Hybrid Architecture: Balances reliable execution with ultra-low latency for Edge data.
  • Protocol Integration: Seamless integration with OPC-UA, Modbus, BACnet, and PQC-secured MQTT.
  • Explainable AI (XAI): Human-understandable explanations for predictive decisions (EU AI Act compliant).
  • Digital Twin & 4D: Virtual copies for remote monitoring and Digital Risk Mitigation.

GAPbot (The Body)

Autonomous hexapod robotics for optimization, security, and analysis. Equipped with 'Sun Bathing Mode' for extreme endurance and superior accessibility in complex environments.

  • Neuro-Symbolic Hybrid AI: Edge AI (YOLOv8-Seg on Hailo-8L) + Generative AI (Phi-3 Medium).
  • Hexapod Kinematics: Superior mobility with 'Split-Belly Kinematics' for a low center of gravity.
  • Energy Optimization: MPPT 'Sun Bathing Mode' maximizes autonomous runtime via solar panels.
  • Self-Healing Code: Dynamically identifies errors, generates fixes, and applies them for maximum uptime.

Tech Stack & Hardware

The "Full-Stack" of Matter: My technical environment bridges high-level code with physical execution.

Edge AI & Robotics

Edge AI & Robotics

Developing with Python and ROS on Linux environments to bring intelligent perception to edge devices.

Hardware Specialization

Hardware Specialization

Optimizing compute on Raspberry Pi 5 (16 GiB RAM), utilizing Hailo 8L AI accelerators (PCIe), and fast NVMe SSDs.

Workflow

Workflow & Integration

Operating headless environments via SSH/VNC, with heavy VScode and GitHub integrations powered by AI-driven development.

Code as Architecture

Interact with the holographic representation of a GAP-managed facility. Discover how our code translates to physical automation.

Irrigation Pump
Edge Sensor Hub
Solar MPPT Array
pump_control.py ● LIVE

Neuro-Symbolic AI Simulator

Watch our hybrid AI process raw Edge data, identify anomalies, and output logical, explainable decisions in real-time.

YOLOv8-Seg (Edge) 60 FPS
Symbolic Logic Engine (XAI)
> SYSTEM INITIALIZED. Awaiting data...
Current Action State
MONITORING

Open Source & Developer Tools

Showcasing specific coding projects, from serverless webhooks to Web3 data integrity and decentralized IoT networks.

Domain Expertise: Biology Meets Tech

Digital Bridge
Enterprise Grade Security

With formal graduation as a Master Gardener and a decade of experience as a Quality Leader in industrial forestry, I bring a unique dual expertise. This ensures that my technological solutions are not just "smart," but ecologically sound and grounded in physical reality.

30-50%
Energy Savings
100%
Regulatory Traceability
Zero
Trust Architecture
Edge
Local Data Processing

Insights & Updates

Deep dives into our neuro-symbolic AI models, hardware iterations, and Web3 infrastructure developments.

Web3 & Blockchain Integration

Experience our trustless architecture. Connect your wallet to sign a secure payload, demonstrating our decentralized approach and seamless interactions with blockchain tech.

Decentralized AI Ecosystem

Corax CoLAB merges cutting-edge AI and automation with Web3 infrastructure to ensure high-security, transparent, and auditable processes. Our integrations empower edge devices to securely authenticate, share data, and process commands leveraging decentralized smart contracts.

  • Secure cryptographic authorization for GAPbot endpoints.
  • Smart contract-based device state management.
  • Incentivized decentralized data exchange.
Explore Crypto P's Crypto Circus →

Interactive Signature Demo

Status: Disconnected

Recent GitHub Activity

Global Decentralized Network

Real-time visualization of active edge nodes, validators, and data relays across the globe.

● Active Node ● Validator ● Data Relay

Live Swarm Telemetry

Interactive Architecture Diagram

Edge AI
Swarm logic
Web3
Hardware
Hover over a component to see details.

Let's Connect

Ready to build the future with autonomous robotics, Edge AI, and sustainable ecosystems? Let's talk.

🌐

Main Website

Visit our primary domain for deep dives into our services, enterprise solutions, and booking a demo.

coraxcolab.com
✉️

Contact Us

Reach out directly for consultation regarding AI, Web3, Blockchain, and advanced robotics integrations.

info@coraxcolab.com
\ No newline at end of file diff --git a/dist/styles.css b/dist/styles.css index 9c8ae57..63a059e 100644 --- a/dist/styles.css +++ b/dist/styles.css @@ -1 +1 @@ -html{--primary-color:#00ffc2;--secondary-color:#1a73e8;--accent-color:#ff6b35;--success-color:#00d4aa;--warning-color:#ffb347;--error-color:#ff6b6b;--dark-bg:#050505;--card-bg:#111111;--glass-bg:rgba(17, 17, 17, 0.85);--text-primary:#f8f9fa;--text-secondary:#e8eaed;--text-muted:#9aa0a6;--gradient-primary:linear-gradient(135deg, var(--primary-color), var(--secondary-color));--gradient-secondary:linear-gradient(135deg, var(--accent-color), var(--warning-color));--gradient-dark:linear-gradient(135deg, #1a1a2e, #16213e, #0f3460);--shadow-glow:0 0 30px rgba(0, 255, 204, 0.3);--shadow-soft:0 8px 32px rgba(0, 0, 0, 0.3);--border-radius:16px;--border-radius-small:8px;--transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);--transition-slow:all 0.6s cubic-bezier(0.4, 0, 0.2, 1);--navbar-height:100px;--max-width:1200px;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:5rem}html[data-theme=light]{--primary-color:#007bb5;--secondary-color:#e81a73;--accent-color:#356bff;--success-color:#008f72;--warning-color:#d17c00;--error-color:#d32f2f;--dark-bg:#f8f9fa;--card-bg:#ffffff;--glass-bg:rgba(255, 255, 255, 0.85);--text-primary:#1a1a1a;--text-secondary:#4a4a4a;--text-muted:#6c757d;--gradient-primary:linear-gradient(135deg, var(--primary-color), var(--secondary-color));--gradient-secondary:linear-gradient(135deg, var(--accent-color), var(--warning-color));--gradient-dark:linear-gradient(135deg, #e9ecef, #dee2e6, #ced4da);--shadow-glow:0 0 30px rgba(0, 123, 181, 0.15);--shadow-soft:0 8px 32px rgba(0, 0, 0, 0.08)}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--dark-bg);color:var(--text-primary);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.background-animation{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;background:var(--gradient-dark);opacity:.9}.background-animation::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2300ffcc' fill-opacity='0.05'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");animation:float 20s infinite linear}@keyframes float{0%{transform:translateY(0) rotate(0)}100%{transform:translateY(-100px) rotate(360deg)}}nav{position:fixed;top:0;width:100%;background:rgba(10,10,10,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1000;padding:12px 0;border-bottom:1px solid rgba(0,255,204,.2);transition:var(--transition);min-height:var(--navbar-height)}nav.scrolled{background:rgba(10,10,10,.98);box-shadow:var(--shadow-soft)}.nav-container{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 var(--spacing-md)}.logo{display:flex;align-items:center;gap:var(--spacing-xs);font-size:1.5rem;font-weight:700;background:0 0;border:none;cursor:pointer;transition:var(--transition);padding:var(--spacing-xs);border-radius:var(--border-radius-small)}.logo-img{width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(0, 255, 204, .3));transition:var(--transition)}.logo-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo:hover{transform:scale(1.05);background:rgba(0,255,204,.1)}.logo:hover .logo-img{filter:drop-shadow(0 0 15px rgba(0, 255, 204, .6));transform:rotate(5deg)}.nav-links{display:flex;gap:var(--spacing-md);list-style:none;align-items:center}.nav-links a{color:var(--text-secondary);text-decoration:none;transition:var(--transition);font-weight:500;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-small);position:relative}.nav-links a::after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--primary-color);transition:var(--transition);transform:translateX(-50%)}.nav-links a:hover{color:var(--primary-color);background:rgba(0,255,204,.1)}.nav-links a:hover::after{width:80%}.theme-toggle:hover{background:rgba(0,255,204,.1);color:var(--primary-color);transform:scale(1.1)}.mobile-menu-btn{display:none;background:0 0;border:none;color:var(--text-primary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius-small);transition:var(--transition);flex-direction:column;justify-content:space-around;width:24px;height:24px}.mobile-menu-btn span{display:block;width:20px;height:2px;background:var(--text-primary);transition:var(--transition);transform-origin:center}.mobile-menu-btn:hover{background:rgba(0,255,204,.1)}.mobile-menu-btn:hover span{background:var(--primary-color)}.mobile-menu-btn.active span:first-child{transform:translateY(6px) rotate(45deg)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-nav-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:var(--transition-slow)}.mobile-nav-overlay.active{opacity:1;visibility:visible}.mobile-nav-content{display:flex;flex-direction:column;gap:var(--spacing-lg);text-align:center}.mobile-nav-content a{color:var(--text-primary);text-decoration:none;font-size:1.5rem;font-weight:600;padding:var(--spacing-sm);border-radius:var(--border-radius);transition:var(--transition);position:relative}.mobile-nav-content a::before{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--primary-color);transition:var(--transition);transform:translateX(-50%)}.mobile-nav-content a:hover{color:var(--primary-color);background:rgba(0,255,204,.1)}.mobile-nav-content a:hover::before{width:80%}.mobile-nav-controls{display:flex;justify-content:center;gap:var(--spacing-md);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid rgba(0,255,204,.2)}.hero{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;text-align:center;padding:80px var(--spacing-md) var(--spacing-lg);position:relative;background:url("images/hero-bg.svg") center/cover no-repeat}.hero::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at center,rgba(0,255,204,.15) 0,rgba(0,102,255,.1) 50%,transparent 80%);pointer-events:none}.hero-bg-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(10,10,10,.4);pointer-events:none}.hero-content{max-width:900px;z-index:2;animation:fadeInUp 1s ease-out;display:flex;flex-direction:column;align-items:center;margin-top:150px}.hero-logo{margin-bottom:var(--spacing-lg);margin-top:var(--spacing-md);animation:fadeInUp 1s .2s ease-out both}.hero-logo-img{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 0 20px rgba(0, 255, 204, .4));animation:float 3s ease-in-out infinite alternate}@keyframes float{from{transform:translateY(0) rotate(0)}to{transform:translateY(-10px) rotate(5deg)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.hero h1{font-size:clamp(3rem, 8vw, 6rem);font-weight:900;margin-bottom:1.5rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2;animation:gradientShift 3s ease-in-out infinite alternate}@keyframes gradientShift{0%{background-position:0 50%}100%{background-position:100% 50%}}.hero-subtitle{font-size:clamp(1.2rem, 3vw, 2rem);color:var(--text-secondary);margin-bottom:var(--spacing-md);font-weight:300;animation:fadeInUp 1s .3s ease-out both}.hero-description{font-size:1.1rem;color:var(--text-muted);margin-bottom:var(--spacing-lg);line-height:1.8;animation:fadeInUp 1s .6s ease-out both}.cta-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--gradient-primary);color:#fff;text-decoration:none;border-radius:var(--border-radius);font-weight:600;font-size:1.1rem;transition:var(--transition);box-shadow:var(--shadow-glow);position:relative;overflow:hidden;animation:fadeInUp 1s .9s ease-out both}.cta-button::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:var(--transition)}.cta-button:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 0 50px rgba(0,255,204,.6)}.cta-button:hover::before{left:100%}section{padding:var(--spacing-xl) 0;max-width:var(--max-width);margin:0 auto;padding-left:var(--spacing-md);padding-right:var(--spacing-md);scroll-margin-top:var(--navbar-height)}.section-title{font-size:clamp(2rem, 5vw, 2.5rem);font-weight:700;text-align:center;margin-bottom:var(--spacing-sm);color:var(--primary-color);position:relative}.section-title::after{content:"";position:absolute;bottom:-10px;left:50%;width:80px;height:3px;background:var(--gradient-primary);transform:translateX(-50%);border-radius:2px}.section-subtitle{text-align:center;color:var(--text-secondary);font-size:1.1rem;margin-bottom:var(--spacing-lg);max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6;max-width:800px;margin-left:auto;margin-right:auto;font-size:1.25rem;font-weight:400}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md)}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md)}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}.feature-card{background:var(--card-bg);border:1px solid rgba(0,255,204,.2);border-radius:var(--border-radius);padding:var(--spacing-md);transition:var(--transition);position:relative;overflow:hidden;backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;text-align:center}.feature-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary)}.feature-card::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent,rgba(0,255,204,.05));opacity:0;transition:var(--transition)}.feature-card:hover{transform:translateY(-8px);border-color:var(--primary-color);box-shadow:0 20px 40px rgba(0,255,204,.2)}.feature-card:hover::after{opacity:1}.feature-illustration{width:100%;height:200px;margin-bottom:var(--spacing-sm);border-radius:var(--border-radius-small);overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.2)}.feature-img{width:100%;height:100%;object-fit:cover;transition:var(--transition);filter:brightness(.9)}.feature-card:hover .feature-img{transform:scale(1.05);filter:brightness(1)}.feature-icon{font-size:3rem;margin-bottom:var(--spacing-sm);display:block;filter:drop-shadow(0 0 10px rgba(0, 255, 204, .3));position:relative;z-index:2}.feature-card h3{color:var(--primary-color);font-size:1.3rem;margin-bottom:var(--spacing-sm);font-weight:600}.feature-card p{color:var(--text-secondary);line-height:1.6}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}.project-card{background:var(--card-bg);border:1px solid rgba(0,255,204,.2);border-radius:var(--border-radius);padding:var(--spacing-md);transition:var(--transition);position:relative;overflow:hidden;backdrop-filter:blur(10px)}.project-card::before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:var(--gradient-primary);border-radius:var(--border-radius);z-index:-1;opacity:0;transition:var(--transition)}.project-card:hover::before{opacity:1}.project-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,255,204,.3)}.project-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm);flex-wrap:wrap;gap:var(--spacing-xs)}.project-card h3{color:var(--primary-color);font-size:1.4rem;font-weight:600}.project-card h3 a{color:inherit;text-decoration:none;transition:var(--transition)}.project-card h3 a:hover{color:#fff;text-shadow:0 0 10px rgba(0,255,204,.5)}.project-stats{display:flex;gap:var(--spacing-sm);font-size:.85rem;color:var(--text-muted);align-items:center}.project-card p{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.project-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.tag{background:rgba(0,255,204,.1);color:var(--primary-color);padding:.3rem .8rem;border-radius:20px;font-size:.8rem;font-weight:500;border:1px solid rgba(0,255,204,.3);transition:var(--transition)}.tag:hover{background:rgba(0,255,204,.2);transform:scale(1.05)}.project-links{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap}.project-link{color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:var(--transition);display:flex;align-items:center;gap:.3rem;padding:.3rem .6rem;border-radius:var(--border-radius-small)}.project-link:hover{color:var(--primary-color);background:rgba(0,255,204,.1)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}.stat-card{text-align:center;padding:var(--spacing-md);background:var(--card-bg);border-radius:var(--border-radius);border:1px solid rgba(0,255,204,.2);transition:var(--transition);position:relative;overflow:hidden}.stat-card::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(0,255,204,.05),transparent);opacity:0;transition:var(--transition)}.stat-card:hover{transform:translateY(-5px);border-color:var(--primary-color)}.stat-card:hover::before{opacity:1}.stat-number{font-size:3rem;font-weight:900;color:var(--primary-color);display:block;text-shadow:0 0 20px rgba(0,255,204,.3)}.stat-label{color:var(--text-secondary);font-size:1rem;margin-top:var(--spacing-xs);font-weight:500}.loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-lg);color:var(--text-secondary)}.spinner{width:40px;height:40px;border:3px solid rgba(0,255,204,.3);border-top:3px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-right:var(--spacing-sm)}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.error-message{text-align:center;color:var(--error-color);padding:var(--spacing-md);background:rgba(255,107,107,.1);border-radius:var(--border-radius);border:1px solid rgba(255,107,107,.3);margin:var(--spacing-md) 0}.success-message{text-align:center;color:var(--success-color);padding:var(--spacing-md);background:rgba(0,212,170,.1);border-radius:var(--border-radius);border:1px solid rgba(0,212,170,.3);margin:var(--spacing-md) 0}footer{background:var(--card-bg);text-align:center;padding:var(--spacing-lg) var(--spacing-md);border-top:1px solid rgba(0,255,204,.2);margin-top:var(--spacing-xl);position:relative}footer::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,255,204,.02))}.footer-content{max-width:var(--max-width);margin:0 auto;position:relative}.footer-links{display:flex;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.footer-links a{color:var(--text-secondary);text-decoration:none;transition:var(--transition);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-small)}.footer-links a:hover{color:var(--primary-color);background:rgba(0,255,204,.1)}.animate-ready{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.animate-in{opacity:1!important;transform:translateY(0)!important}@keyframes slideInRight{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.pulse-animation{animation:pulse 2s infinite}[data-theme=light]{--dark-bg:#ffffff;--card-bg:#f8f9fa;--glass-bg:rgba(248, 249, 250, 0.8);--text-primary:#1a1a1a;--text-secondary:#4a5568;--text-muted:#718096;--gradient-dark:linear-gradient(135deg, #f7fafc, #edf2f7, #e2e8f0);--border-color:rgba(0, 0, 0, 0.1)}[data-theme=light] .background-animation{background:var(--gradient-dark)}[data-theme=light] .background-animation::before{background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2300ffcc' fill-opacity='0.1'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}[data-theme=light] nav{background:rgba(255,255,255,.95);border-bottom:1px solid rgba(0,0,0,.1)}[data-theme=light] .feature-card,[data-theme=light] .project-card,[data-theme=light] .stat-card{background:var(--card-bg);border:1px solid rgba(0,0,0,.1);box-shadow:0 2px 10px rgba(0,0,0,.05)}[data-theme=light] .feature-card:hover,[data-theme=light] .project-card:hover,[data-theme=light] .stat-card:hover{box-shadow:0 8px 25px rgba(0,255,204,.15)}.glassmorphism{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1)}.gradient-border{position:relative;background:var(--card-bg)}.gradient-border::before{content:"";position:absolute;inset:0;padding:2px;background:var(--gradient-primary);border-radius:inherit;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:xor}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.project-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-sm)}.project-updated{font-size:.8rem;color:var(--text-muted);font-style:italic}.stat-item{display:inline-flex;align-items:center;gap:.2rem}.stat-item.active{color:var(--primary-color);font-weight:600}.logo{background:0 0!important;border:none;font-size:1.5rem;font-weight:700;background:var(--gradient-primary)!important;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;cursor:pointer;transition:var(--transition);padding:var(--spacing-xs);border-radius:var(--border-radius-small)}.logo:hover{transform:scale(1.05);background:var(--gradient-secondary)!important;-webkit-background-clip:text;background-clip:text}.loading{flex-direction:column;gap:var(--spacing-sm)}.loading-text{font-weight:500}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus{outline:2px solid var(--primary-color);outline-offset:2px}@media (max-width:1200px){.nav-container,section{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}}@media (max-width:1024px){.hero::before{background:radial-gradient(ellipse at center,rgba(0,255,204,.08) 0,transparent 60%)}}@media (max-width:768px){.nav-links{display:none}.mobile-menu-btn{display:flex}.logo-img{width:28px;height:28px}.hero{min-height:80vh;padding:120px var(--spacing-sm) var(--spacing-xl);align-items:flex-start}.hero-content{margin-top:40px}.hero-logo-img{width:90px;height:90px}.hero-logo{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-md)}.hero h1{font-size:clamp(2.5rem, 10vw, 4rem)}.hero-subtitle{font-size:clamp(1rem, 4vw, 1.5rem)}.features-grid,.projects-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.feature-illustration{height:150px}.stats-grid{grid-template-columns:repeat(2,1fr)}section{padding:var(--spacing-lg) var(--spacing-sm)}.project-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.project-stats{align-self:stretch;justify-content:flex-start}.project-footer{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.project-links{order:2}.project-updated{order:1;align-self:flex-end}.section-title{font-size:clamp(1.8rem, 6vw, 2.2rem)}.cta-button{font-size:1rem;padding:.8rem 1.5rem}}@media (max-width:480px){.logo-img{width:24px;height:24px}.hero-logo-img{width:70px;height:70px}.hero-content{margin-top:100px}.feature-illustration{height:120px}.stats-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.footer-links{flex-direction:column;gap:var(--spacing-sm)}.project-tags{gap:.3rem}.tag{font-size:.7rem;padding:.2rem .6rem}.mobile-nav-content a{font-size:1.3rem}nav{padding:.8rem 0}section{scroll-margin-top:100px}.nav-container{padding:0 var(--spacing-sm)}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}.background-animation::before{animation:none}}@media print{.background-animation,.cta-button,.mobile-menu-btn,nav{display:none!important}body{background:#fff!important;color:#000!important}.feature-card,.project-card,.stat-card{border:1px solid #ccc!important;box-shadow:none!important}}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:100px var(--spacing-md) var(--spacing-lg);position:relative;background:#000;overflow:hidden}.hero-bg-video-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 50% 50%,#0d1b2a 0,#000 70%);z-index:0;opacity:.8}.hero-bg-video-placeholder::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(0deg,transparent 24%,rgba(255,255,255,.05) 25%,rgba(255,255,255,.05) 26%,transparent 27%,transparent 74%,rgba(255,255,255,.05) 75%,rgba(255,255,255,.05) 76%,transparent 77%,transparent),linear-gradient(90deg,transparent 24%,rgba(255,255,255,.05) 25%,rgba(255,255,255,.05) 26%,transparent 27%,transparent 74%,rgba(255,255,255,.05) 75%,rgba(255,255,255,.05) 76%,transparent 77%,transparent);background-size:50px 50px;opacity:.2;z-index:1}.hero-content{position:relative;z-index:2;max-width:800px}.hero h1{font-size:clamp(2.5rem, 5vw, 4.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin-bottom:1.5rem;color:#fff;background:0 0;-webkit-text-fill-color:initial}.hero-subtitle{font-size:clamp(1.2rem, 2vw, 1.5rem);color:var(--primary-color);margin-bottom:1.5rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.hero-description{font-size:1.15rem;color:#a0a0a0;margin-bottom:2.5rem;line-height:1.6;max-width:700px;margin-left:auto;margin-right:auto}.hero-ctas{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.primary-cta{background:#fff;color:#000;box-shadow:0 4px 15px rgba(255,255,255,.2)}.primary-cta:hover{background:#e0e0e0;color:#000;box-shadow:0 6px 20px rgba(255,255,255,.3)}.primary-cta::before{display:none}.secondary-cta{background:0 0;border:1px solid rgba(255,255,255,.3);color:#fff;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);text-decoration:none;font-weight:600;transition:var(--transition)}.secondary-cta:hover{background:rgba(255,255,255,.1);border-color:#fff}.tech-icon-wrapper{font-size:4rem;display:flex;align-items:center;justify-content:center;height:100%;width:100%;background:radial-gradient(circle at center,rgba(0,255,194,.1) 0,transparent 70%);border-radius:50%}.product-card{text-align:left;align-items:flex-start;border-top:3px solid var(--primary-color)}.product-card h3{font-size:1.8rem}body{font-family:Inter,-apple-system,sans-serif;letter-spacing:-.01em}.section-title{font-weight:800;letter-spacing:-.02em;color:#fff}.section-title::after{background:var(--primary-color)}.feature-card::before{display:none}.feature-card{border:1px solid rgba(255,255,255,.1);background:rgba(17,17,17,.6)}.hero{background:radial-gradient(circle at 50% 50%,#0d1b2a 0,#000 100%);overflow:hidden}.hero-bg-video-placeholder::after{opacity:.1;background-size:40px 40px}.product-card{background:linear-gradient(180deg,rgba(17,17,17,.9),#050505);border:1px solid rgba(0,255,194,.15);border-top:4px solid var(--primary-color)}.product-card:hover{border-color:rgba(0,255,194,.5);box-shadow:0 10px 30px rgba(0,255,194,.1)}.tech-icon-wrapper{font-size:3.5rem;background:radial-gradient(circle at center,rgba(0,255,194,.15) 0,transparent 60%)}#featured .projects-grid{margin-bottom:3rem}#featured .project-card{background:linear-gradient(145deg,#111 0,#050505 100%);border:1px solid rgba(255,255,255,.05)}#featured .project-card:hover{border-color:rgba(0,255,194,.3)}.hero h1{text-shadow:0 0 40px rgba(0,255,194,.2)}.logo-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:900;letter-spacing:-.05em}footer{background:#000;border-top:1px solid rgba(255,255,255,.05)}body{cursor:none}.custom-cursor{width:20px;height:20px;border:2px solid var(--primary-color);border-radius:50%;position:fixed;transform:translate(-50%,-50%);pointer-events:none;z-index:9999;transition:width .2s,height .2s,background-color .2s}.custom-cursor.hover{width:40px;height:40px;background-color:rgba(0,255,194,.2);border-color:transparent}#theme-customizer{background:rgba(17,17,17,.85);padding:10px;border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,.5);backdrop-filter:blur(10px)}.theme-btn{width:30px;height:30px;border-radius:50%;border:2px solid transparent;cursor:none;transition:transform .2s,border-color .2s}.theme-btn:hover{transform:scale(1.1);border-color:#fff}.activity-item{background:var(--card-bg);padding:1rem;border-radius:var(--border-radius-small);border-left:4px solid var(--primary-color);box-shadow:var(--shadow-soft);display:flex;justify-content:space-between;align-items:center;transition:transform .2s}.activity-item:hover{transform:translateX(5px)}.activity-date{color:var(--text-muted);font-size:.85rem}.activity-action{color:var(--text-primary)}.activity-action a{color:var(--primary-color);text-decoration:none;font-weight:700}.activity-action a:hover{text-decoration:underline}.arch-node{position:absolute;transform:translate(-50%,-50%);background:var(--dark-bg);color:var(--primary-color);padding:1rem 2rem;border-radius:50px;border:2px solid var(--primary-color);box-shadow:0 0 10px rgba(0,255,194,.5);cursor:pointer;transition:transform .3s,box-shadow .3s,background .3s;z-index:100;font-weight:700;text-align:center;pointer-events:auto}.arch-node:hover{transform:translate(-50%,-50%) scale(1.1);box-shadow:var(--shadow-glow);background:rgba(0,255,194,.1)}#neural-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.6}.custom-cursor{position:fixed;top:0;left:0;width:10px;height:10px;background-color:var(--primary-color);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:9999;transition:transform .2s ease,width .2s ease,height .2s ease,background-color .2s ease;mix-blend-mode:difference}.custom-cursor-follower{position:fixed;top:0;left:0;width:40px;height:40px;border:1px solid var(--primary-color);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:9998;transition:transform .1s ease-out,width .2s ease,height .2s ease;will-change:transform}.cursor-hover .custom-cursor{transform:translate(-50%,-50%) scale(2.5);background-color:rgba(255,255,255,.8)}.cursor-hover .custom-cursor-follower{width:60px;height:60px;border-color:rgba(255,255,255,.4)}.tilt-card{transform-style:preserve-3d;transform:perspective(1000px);will-change:transform;position:relative;overflow:hidden;transition:transform .1s}.tilt-card .glare{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(circle at center,rgba(255,255,255,.2) 0,transparent 50%);opacity:0;transition:opacity .3s;z-index:10;mix-blend-mode:overlay}.tilt-card>*{position:relative;z-index:2;transform:translateZ(30px)}.tilt-card::before{z-index:1}.tilt-card::after{z-index:1}.glitch{position:relative}.glitch::after,.glitch::before{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;opacity:.8}.glitch::before{left:2px;text-shadow:-2px 0 var(--error-color);clip:rect(24px,550px,90px,0);animation:glitch-anim 3s infinite linear alternate-reverse}.glitch::after{left:-2px;text-shadow:-2px 0 var(--primary-color);clip:rect(85px,550px,140px,0);animation:glitch-anim 2.5s infinite linear alternate-reverse}@keyframes glitch-anim{0%{clip:rect(10px,9999px,86px,0);transform:translate(0)}10%{clip:rect(80px,9999px,4px,0);transform:translate(-2px,2px)}20%{clip:rect(32px,9999px,55px,0);transform:translate(2px,-2px)}30%{clip:rect(62px,9999px,90px,0);transform:translate(-2px,2px)}40%{clip:rect(15px,9999px,25px,0);transform:translate(2px,-2px)}50%{clip:rect(45px,9999px,70px,0);transform:translate(-2px,2px)}60%{clip:rect(85px,9999px,15px,0);transform:translate(2px,-2px)}70%{clip:rect(20px,9999px,35px,0);transform:translate(-2px,2px)}80%{clip:rect(50px,9999px,60px,0);transform:translate(2px,-2px)}90%{clip:rect(75px,9999px,40px,0);transform:translate(-2px,2px)}100%{clip:rect(5px,9999px,95px,0);transform:translate(0)}}.logo:hover .logo-text,.section-title:hover{animation:text-glitch .3s cubic-bezier(.25,.46,.45,.94) both infinite;color:var(--primary-color)}@keyframes text-glitch{0%{transform:translate(0);text-shadow:none}20%{transform:translate(-2px,2px);text-shadow:2px -2px var(--error-color),-2px 2px var(--secondary-color)}40%{transform:translate(-2px,-2px);text-shadow:2px 2px var(--error-color),-2px -2px var(--secondary-color)}60%{transform:translate(2px,2px);text-shadow:-2px -2px var(--error-color),2px 2px var(--secondary-color)}80%{transform:translate(2px,-2px);text-shadow:-2px 2px var(--error-color),2px -2px var(--secondary-color)}100%{transform:translate(0);text-shadow:none}}.terminal-boot-container{width:100%;max-width:600px;margin:0 auto 2rem auto;background:rgba(5,5,5,.85);border:1px solid rgba(0,255,194,.2);border-radius:var(--border-radius-small);box-shadow:0 10px 30px rgba(0,0,0,.5),0 0 15px rgba(0,255,194,.1);overflow:hidden;backdrop-filter:blur(5px);text-align:left}.terminal-header{background:rgba(20,20,20,.9);padding:8px 15px;display:flex;align-items:center;border-bottom:1px solid rgba(0,255,194,.1)}.terminal-buttons{display:flex;gap:6px}.terminal-btn{width:12px;height:12px;border-radius:50%;display:inline-block}.terminal-btn.close{background-color:#ff5f56}.terminal-btn.min{background-color:#ffbd2e}.terminal-btn.max{background-color:#27c93f}.terminal-title{color:var(--text-muted);font-family:monospace;font-size:.85rem;margin-left:15px;flex-grow:1;text-align:center;margin-right:48px}.terminal-body{padding:15px;font-family:'Courier New',Courier,monospace;font-size:.9rem;color:#0fc;min-height:150px;max-height:250px;overflow-y:hidden;line-height:1.5}.terminal-line{margin-bottom:5px;opacity:0;animation:typeIn .1s forwards}.terminal-line span.user{color:var(--secondary-color);font-weight:700}.terminal-line span.path{color:var(--text-primary);font-weight:700}.terminal-line.error{color:var(--error-color)}.terminal-line.success{color:var(--success-color)}.cursor-blink{display:inline-block;width:8px;height:15px;background-color:#0fc;vertical-align:middle;animation:blink 1s step-end infinite}@keyframes typeIn{from{opacity:0}to{opacity:1}}@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}@media (pointer:fine){body{cursor:none}.cta-button,.logo,a,button,input,textarea{cursor:none}}.terminal-input-line{display:flex;align-items:center;color:#fff;font-family:monospace}.terminal-input-line .prompt{color:var(--primary-color);margin-right:8px}#terminal-input{background:0 0;border:none;color:#fff;font-family:monospace;font-size:inherit;outline:0;width:100%}.terminal-line{white-space:pre-wrap}.tilt-card{position:relative;overflow:hidden;border-radius:var(--border-radius);transition:transform .1s ease,box-shadow .1s ease;transform-style:preserve-3d}.tilt-card>*{transform:translateZ(30px)}.tilt-card-glare{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.2) 0,transparent 60%);opacity:0;transition:opacity .3s ease;z-index:2;mix-blend-mode:overlay}.tilt-card:hover .tilt-card-glare{opacity:1}.terminal-boot-container{pointer-events:auto!important;z-index:100!important}.hero-content{z-index:100!important;pointer-events:auto!important}.terminal-body{pointer-events:auto!important;z-index:101!important}[data-theme=light]{--primary-color:#007bb5;--secondary-color:#e81a73;--accent-color:#356bff;--success-color:#008f72;--warning-color:#d17c00;--error-color:#d32f2f;--dark-bg:#f8f9fa;--card-bg:#ffffff;--glass-bg:rgba(255, 255, 255, 0.85);--text-primary:#1a1a1a;--text-secondary:#4a4a4a;--text-muted:#6c757d;--gradient-primary:linear-gradient(135deg, #007bb5, #e81a73);--gradient-secondary:linear-gradient(135deg, #356bff, #d17c00);--gradient-dark:linear-gradient(135deg, #e9ecef, #dee2e6, #ced4da);--shadow-glow:0 0 30px rgba(0, 123, 181, 0.15);--shadow-soft:0 8px 32px rgba(0, 0, 0, 0.08)}[data-theme=light] body{background-color:var(--dark-bg);color:var(--text-primary)}[data-theme=light] .capability-card,[data-theme=light] .card,[data-theme=light] .commit-card,[data-theme=light] .project-card{background-color:var(--card-bg);box-shadow:var(--shadow-soft);border-color:rgba(0,0,0,.05)}[data-theme=light] .navbar{background:var(--glass-bg);border-bottom-color:rgba(0,0,0,.05)}[data-theme=light] .nav-links a{color:var(--text-secondary)}[data-theme=light] .nav-links a.active,[data-theme=light] .nav-links a:hover{color:var(--primary-color)}[data-theme=light] .hero-title{color:var(--text-primary);text-shadow:none}[data-theme=light] .section-title{color:var(--text-primary)}[data-theme=light] .cta-button.secondary{color:var(--primary-color);border-color:var(--primary-color)}[data-theme=light] .cta-button.secondary:hover{background:rgba(0,123,181,.1)}[data-theme=light] .code-block{background:#f1f3f5;color:#212529;border-color:#dee2e6}[data-theme=light] .hologram-grid{background-size:40px 40px;background-image:linear-gradient(to right,rgba(0,123,181,.1) 1px,transparent 1px),linear-gradient(to bottom,rgba(0,123,181,.1) 1px,transparent 1px)}[data-theme=light] footer{border-top-color:rgba(0,0,0,.1)}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.4, 0, .2, 1),transform .8s cubic-bezier(.4, 0, .2, 1);will-change:opacity,transform}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.delay-100{transition-delay:0.1s}.delay-200{transition-delay:0.2s}.delay-300{transition-delay:0.3s}.delay-400{transition-delay:0.4s}.capability-card,.feature-item,.project-card,.repo-card{transition:transform .4s cubic-bezier(.175, .885, .32, 1.275),box-shadow .4s ease;position:relative;overflow:hidden}.capability-card::before,.project-card::before{content:'';position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,.05) 50%,rgba(255,255,255,0) 100%);transform:skewX(-25deg);transition:left .6s ease;z-index:1}.capability-card:hover::before,.project-card:hover::before{left:200%}.capability-card:hover,.project-card:hover,.repo-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 15px 40px rgba(0,255,194,.2);border-color:var(--primary-color)}.cta-button{position:relative;overflow:hidden;z-index:1;transition:all .4s cubic-bezier(.25, .8, .25, 1)}.cta-button::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:100%;background-color:var(--primary-color);z-index:-2}.cta-button::before{content:'';position:absolute;bottom:0;left:0;width:0%;height:100%;background-color:rgba(255,255,255,.2);transition:all .4s cubic-bezier(.25, .8, .25, 1);z-index:-1}.cta-button:hover::before{width:100%}.cta-button:active{transform:scale(.95)}[data-theme=light] .capability-card:hover,[data-theme=light] .project-card:hover,[data-theme=light] .repo-card:hover{box-shadow:0 15px 40px rgba(0,123,181,.2)}.hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-content{position:relative;z-index:10;background:rgba(17,17,17,.6);backdrop-filter:blur(12px);padding:4rem 3rem;border-radius:24px;border:1px solid rgba(255,255,255,.1);box-shadow:0 25px 50px -12px rgba(0,0,0,.5);max-width:800px;margin:0 auto}.hero-title{background:linear-gradient(to right,var(--text-primary),var(--primary-color));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:1.5rem}.hero-subtitle{font-size:1.25rem;line-height:1.6;opacity:.9;margin-bottom:2.5rem}[data-theme=light] .hero-content{background:rgba(255,255,255,.7);border-color:rgba(0,0,0,.05)}[data-theme=light] .hero-title{background:linear-gradient(to right,#1a1a1a,var(--primary-color));-webkit-background-clip:text;background-clip:text}input[type=email],input[type=text],textarea{background:rgba(0,0,0,.5);border:1px solid rgba(0,255,194,.3);color:var(--text-primary);padding:10px 15px;border-radius:var(--border-radius-small);transition:all .3s ease;box-shadow:inset 0 0 10px rgba(0,0,0,.5)}input[type=email]:focus,input[type=text]:focus,textarea:focus{outline:0;border-color:var(--primary-color);box-shadow:0 0 15px rgba(0,255,194,.4),inset 0 0 10px rgba(0,255,194,.1);background:rgba(0,255,194,.05)}nav{transition:all .4s cubic-bezier(.25, .8, .25, 1);top:0;width:100%}nav.scrolled{top:20px;width:calc(100% - 40px);max-width:var(--max-width);left:50%;transform:translateX(-50%);border-radius:50px;background:rgba(10,10,10,.85);box-shadow:0 10px 30px rgba(0,0,0,.5),0 0 15px rgba(0,255,194,.2);border:1px solid rgba(0,255,194,.3);padding:8px 0}@media (max-width:768px){nav.scrolled{width:calc(100% - 20px);top:10px;border-radius:25px}}#terminal-input{box-shadow:none!important;border:none!important;background:0 0!important;padding:0!important;caret-color:var(--primary-color)}#terminal-input:focus{box-shadow:none!important;background:0 0!important}.glow-card{position:relative;background:rgba(255,255,255,.03);overflow:hidden;border-radius:var(--border-radius);z-index:1}.glow-card::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;padding:2px;background:linear-gradient(to bottom right,rgba(255,255,255,.2),rgba(255,255,255,0));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:2}.glow-card::after{content:"";position:absolute;top:var(--mouse-y,0);left:var(--mouse-x,0);width:400px;height:400px;background:radial-gradient(circle closest-side,rgba(0,255,194,.15),transparent);transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:-1}.glow-card:hover::after{opacity:1} \ No newline at end of file +html{--primary-color:#00ffc2;--secondary-color:#1a73e8;--accent-color:#ff6b35;--success-color:#00d4aa;--warning-color:#ffb347;--error-color:#ff6b6b;--dark-bg:#050505;--card-bg:#111111;--glass-bg:rgba(17, 17, 17, 0.85);--text-primary:#f8f9fa;--text-secondary:#e8eaed;--text-muted:#9aa0a6;--gradient-primary:linear-gradient(135deg, var(--primary-color), var(--secondary-color));--gradient-secondary:linear-gradient(135deg, var(--accent-color), var(--warning-color));--gradient-dark:linear-gradient(135deg, #1a1a2e, #16213e, #0f3460);--shadow-glow:0 0 30px rgba(0, 255, 204, 0.3);--shadow-soft:0 8px 32px rgba(0, 0, 0, 0.3);--border-radius:16px;--border-radius-small:8px;--transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);--transition-slow:all 0.6s cubic-bezier(0.4, 0, 0.2, 1);--navbar-height:100px;--max-width:1200px;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:3rem;--spacing-xl:5rem}html[data-theme=light]{--primary-color:#007bb5;--secondary-color:#e81a73;--accent-color:#356bff;--success-color:#008f72;--warning-color:#d17c00;--error-color:#d32f2f;--dark-bg:#f8f9fa;--card-bg:#ffffff;--glass-bg:rgba(255, 255, 255, 0.85);--text-primary:#1a1a1a;--text-secondary:#4a4a4a;--text-muted:#6c757d;--gradient-primary:linear-gradient(135deg, var(--primary-color), var(--secondary-color));--gradient-secondary:linear-gradient(135deg, var(--accent-color), var(--warning-color));--gradient-dark:linear-gradient(135deg, #e9ecef, #dee2e6, #ced4da);--shadow-glow:0 0 30px rgba(0, 123, 181, 0.15);--shadow-soft:0 8px 32px rgba(0, 0, 0, 0.08)}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--dark-bg);color:var(--text-primary);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.background-animation{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;background:var(--gradient-dark);opacity:.9}.background-animation::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2300ffcc' fill-opacity='0.05'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");animation:float 20s infinite linear}@keyframes float{0%{transform:translateY(0) rotate(0)}100%{transform:translateY(-100px) rotate(360deg)}}nav{position:fixed;top:0;width:100%;background:rgba(10,10,10,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1000;padding:12px 0;border-bottom:1px solid rgba(0,255,204,.2);transition:var(--transition);min-height:var(--navbar-height)}nav.scrolled{background:rgba(10,10,10,.98);box-shadow:var(--shadow-soft)}.nav-container{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 var(--spacing-md)}.logo{display:flex;align-items:center;gap:var(--spacing-xs);font-size:1.5rem;font-weight:700;background:0 0;border:none;cursor:pointer;transition:var(--transition);padding:var(--spacing-xs);border-radius:var(--border-radius-small)}.logo-img{width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(0, 255, 204, .3));transition:var(--transition)}.logo-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo:hover{transform:scale(1.05);background:rgba(0,255,204,.1)}.logo:hover .logo-img{filter:drop-shadow(0 0 15px rgba(0, 255, 204, .6));transform:rotate(5deg)}.nav-links{display:flex;gap:var(--spacing-md);list-style:none;align-items:center}.nav-links a{color:var(--text-secondary);text-decoration:none;transition:var(--transition);font-weight:500;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-small);position:relative}.nav-links a::after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--primary-color);transition:var(--transition);transform:translateX(-50%)}.nav-links a:hover{color:var(--primary-color);background:rgba(0,255,204,.1)}.nav-links a:hover::after{width:80%}.theme-toggle:hover{background:rgba(0,255,204,.1);color:var(--primary-color);transform:scale(1.1)}.mobile-menu-btn{display:none;background:0 0;border:none;color:var(--text-primary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius-small);transition:var(--transition);flex-direction:column;justify-content:space-around;width:24px;height:24px}.mobile-menu-btn span{display:block;width:20px;height:2px;background:var(--text-primary);transition:var(--transition);transform-origin:center}.mobile-menu-btn:hover{background:rgba(0,255,204,.1)}.mobile-menu-btn:hover span{background:var(--primary-color)}.mobile-menu-btn.active span:first-child{transform:translateY(6px) rotate(45deg)}.mobile-menu-btn.active span:nth-child(2){opacity:0}.mobile-menu-btn.active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-nav-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:var(--transition-slow)}.mobile-nav-overlay.active{opacity:1;visibility:visible}.mobile-nav-content{display:flex;flex-direction:column;gap:var(--spacing-lg);text-align:center}.mobile-nav-content a{color:var(--text-primary);text-decoration:none;font-size:1.5rem;font-weight:600;padding:var(--spacing-sm);border-radius:var(--border-radius);transition:var(--transition);position:relative}.mobile-nav-content a::before{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--primary-color);transition:var(--transition);transform:translateX(-50%)}.mobile-nav-content a:hover{color:var(--primary-color);background:rgba(0,255,204,.1)}.mobile-nav-content a:hover::before{width:80%}.mobile-nav-controls{display:flex;justify-content:center;gap:var(--spacing-md);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid rgba(0,255,204,.2)}.hero{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;text-align:center;padding:80px var(--spacing-md) var(--spacing-lg);position:relative;background:url("images/hero-bg.svg") center/cover no-repeat}.hero::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at center,rgba(0,255,204,.15) 0,rgba(0,102,255,.1) 50%,transparent 80%);pointer-events:none}.hero-bg-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(10,10,10,.4);pointer-events:none}.hero-content{max-width:900px;z-index:2;animation:fadeInUp 1s ease-out;display:flex;flex-direction:column;align-items:center;margin-top:150px}.hero-logo{margin-bottom:var(--spacing-lg);margin-top:var(--spacing-md);animation:fadeInUp 1s .2s ease-out both}.hero-logo-img{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 0 20px rgba(0, 255, 204, .4));animation:float 3s ease-in-out infinite alternate}@keyframes float{from{transform:translateY(0) rotate(0)}to{transform:translateY(-10px) rotate(5deg)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.hero h1{font-size:clamp(3rem, 8vw, 6rem);font-weight:900;margin-bottom:1.5rem;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2;animation:gradientShift 3s ease-in-out infinite alternate}@keyframes gradientShift{0%{background-position:0 50%}100%{background-position:100% 50%}}.hero-subtitle{font-size:clamp(1.2rem, 3vw, 2rem);color:var(--text-secondary);margin-bottom:var(--spacing-md);font-weight:300;animation:fadeInUp 1s .3s ease-out both}.hero-description{font-size:1.1rem;color:var(--text-muted);margin-bottom:var(--spacing-lg);line-height:1.8;animation:fadeInUp 1s .6s ease-out both}.cta-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--gradient-primary);color:#fff;text-decoration:none;border-radius:var(--border-radius);font-weight:600;font-size:1.1rem;transition:var(--transition);box-shadow:var(--shadow-glow);position:relative;overflow:hidden;animation:fadeInUp 1s .9s ease-out both}.cta-button::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:var(--transition)}.cta-button:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 0 50px rgba(0,255,204,.6)}.cta-button:hover::before{left:100%}section{padding:var(--spacing-xl) 0;max-width:var(--max-width);margin:0 auto;padding-left:var(--spacing-md);padding-right:var(--spacing-md);scroll-margin-top:var(--navbar-height)}.section-title{font-size:clamp(2rem, 5vw, 2.5rem);font-weight:700;text-align:center;margin-bottom:var(--spacing-sm);color:var(--primary-color);position:relative}.section-title::after{content:"";position:absolute;bottom:-10px;left:50%;width:80px;height:3px;background:var(--gradient-primary);transform:translateX(-50%);border-radius:2px}.section-subtitle{text-align:center;color:var(--text-secondary);font-size:1.1rem;margin-bottom:var(--spacing-lg);max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6;max-width:800px;margin-left:auto;margin-right:auto;font-size:1.25rem;font-weight:400}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md)}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md)}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}.feature-card{background:var(--card-bg);border:1px solid rgba(0,255,204,.2);border-radius:var(--border-radius);padding:var(--spacing-md);transition:var(--transition);position:relative;overflow:hidden;backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;text-align:center}.feature-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary)}.feature-card::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent,rgba(0,255,204,.05));opacity:0;transition:var(--transition)}.feature-card:hover{transform:translateY(-8px);border-color:var(--primary-color);box-shadow:0 20px 40px rgba(0,255,204,.2)}.feature-card:hover::after{opacity:1}.feature-illustration{width:100%;height:200px;margin-bottom:var(--spacing-sm);border-radius:var(--border-radius-small);overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.2)}.feature-img{width:100%;height:100%;object-fit:cover;transition:var(--transition);filter:brightness(.9)}.feature-card:hover .feature-img{transform:scale(1.05);filter:brightness(1)}.feature-icon{font-size:3rem;margin-bottom:var(--spacing-sm);display:block;filter:drop-shadow(0 0 10px rgba(0, 255, 204, .3));position:relative;z-index:2}.feature-card h3{color:var(--primary-color);font-size:1.3rem;margin-bottom:var(--spacing-sm);font-weight:600}.feature-card p{color:var(--text-secondary);line-height:1.6}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}.project-card{background:var(--card-bg);border:1px solid rgba(0,255,204,.2);border-radius:var(--border-radius);padding:var(--spacing-md);transition:var(--transition);position:relative;overflow:hidden;backdrop-filter:blur(10px)}.project-card::before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:var(--gradient-primary);border-radius:var(--border-radius);z-index:-1;opacity:0;transition:var(--transition)}.project-card:hover::before{opacity:1}.project-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,255,204,.3)}.project-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm);flex-wrap:wrap;gap:var(--spacing-xs)}.project-card h3{color:var(--primary-color);font-size:1.4rem;font-weight:600}.project-card h3 a{color:inherit;text-decoration:none;transition:var(--transition)}.project-card h3 a:hover{color:#fff;text-shadow:0 0 10px rgba(0,255,204,.5)}.project-stats{display:flex;gap:var(--spacing-sm);font-size:.85rem;color:var(--text-muted);align-items:center}.project-card p{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.project-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.tag{background:rgba(0,255,204,.1);color:var(--primary-color);padding:.3rem .8rem;border-radius:20px;font-size:.8rem;font-weight:500;border:1px solid rgba(0,255,204,.3);transition:var(--transition)}.tag:hover{background:rgba(0,255,204,.2);transform:scale(1.05)}.project-links{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap}.project-link{color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:var(--transition);display:flex;align-items:center;gap:.3rem;padding:.3rem .6rem;border-radius:var(--border-radius-small)}.project-link:hover{color:var(--primary-color);background:rgba(0,255,204,.1)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}.stat-card{text-align:center;padding:var(--spacing-md);background:var(--card-bg);border-radius:var(--border-radius);border:1px solid rgba(0,255,204,.2);transition:var(--transition);position:relative;overflow:hidden}.stat-card::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(0,255,204,.05),transparent);opacity:0;transition:var(--transition)}.stat-card:hover{transform:translateY(-5px);border-color:var(--primary-color)}.stat-card:hover::before{opacity:1}.stat-number{font-size:3rem;font-weight:900;color:var(--primary-color);display:block;text-shadow:0 0 20px rgba(0,255,204,.3)}.stat-label{color:var(--text-secondary);font-size:1rem;margin-top:var(--spacing-xs);font-weight:500}.loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-lg);color:var(--text-secondary)}.spinner{width:40px;height:40px;border:3px solid rgba(0,255,204,.3);border-top:3px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-right:var(--spacing-sm)}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.error-message{text-align:center;color:var(--error-color);padding:var(--spacing-md);background:rgba(255,107,107,.1);border-radius:var(--border-radius);border:1px solid rgba(255,107,107,.3);margin:var(--spacing-md) 0}.success-message{text-align:center;color:var(--success-color);padding:var(--spacing-md);background:rgba(0,212,170,.1);border-radius:var(--border-radius);border:1px solid rgba(0,212,170,.3);margin:var(--spacing-md) 0}footer{background:var(--card-bg);text-align:center;padding:var(--spacing-lg) var(--spacing-md);border-top:1px solid rgba(0,255,204,.2);margin-top:var(--spacing-xl);position:relative}footer::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent,rgba(0,255,204,.02))}.footer-content{max-width:var(--max-width);margin:0 auto;position:relative}.footer-links{display:flex;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.footer-links a{color:var(--text-secondary);text-decoration:none;transition:var(--transition);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-small)}.footer-links a:hover{color:var(--primary-color);background:rgba(0,255,204,.1)}.animate-ready{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.animate-in{opacity:1!important;transform:translateY(0)!important}@keyframes slideInRight{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.pulse-animation{animation:pulse 2s infinite}[data-theme=light]{--dark-bg:#ffffff;--card-bg:#f8f9fa;--glass-bg:rgba(248, 249, 250, 0.8);--text-primary:#1a1a1a;--text-secondary:#4a5568;--text-muted:#718096;--gradient-dark:linear-gradient(135deg, #f7fafc, #edf2f7, #e2e8f0);--border-color:rgba(0, 0, 0, 0.1)}[data-theme=light] .background-animation{background:var(--gradient-dark)}[data-theme=light] .background-animation::before{background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2300ffcc' fill-opacity='0.1'%3E%3Ccircle cx='30' cy='30' r='2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}[data-theme=light] nav{background:rgba(255,255,255,.95);border-bottom:1px solid rgba(0,0,0,.1)}[data-theme=light] .feature-card,[data-theme=light] .project-card,[data-theme=light] .stat-card{background:var(--card-bg);border:1px solid rgba(0,0,0,.1);box-shadow:0 2px 10px rgba(0,0,0,.05)}[data-theme=light] .feature-card:hover,[data-theme=light] .project-card:hover,[data-theme=light] .stat-card:hover{box-shadow:0 8px 25px rgba(0,255,204,.15)}.glassmorphism{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1)}.gradient-border{position:relative;background:var(--card-bg)}.gradient-border::before{content:"";position:absolute;inset:0;padding:2px;background:var(--gradient-primary);border-radius:inherit;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:xor}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.project-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-sm)}.project-updated{font-size:.8rem;color:var(--text-muted);font-style:italic}.stat-item{display:inline-flex;align-items:center;gap:.2rem}.stat-item.active{color:var(--primary-color);font-weight:600}.logo{background:0 0!important;border:none;font-size:1.5rem;font-weight:700;background:var(--gradient-primary)!important;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;cursor:pointer;transition:var(--transition);padding:var(--spacing-xs);border-radius:var(--border-radius-small)}.logo:hover{transform:scale(1.05);background:var(--gradient-secondary)!important;-webkit-background-clip:text;background-clip:text}.loading{flex-direction:column;gap:var(--spacing-sm)}.loading-text{font-weight:500}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus{outline:2px solid var(--primary-color);outline-offset:2px}@media (max-width:1200px){.nav-container,section{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}}@media (max-width:1024px){.hero::before{background:radial-gradient(ellipse at center,rgba(0,255,204,.08) 0,transparent 60%)}}@media (max-width:768px){.nav-links{display:none}.mobile-menu-btn{display:flex}.logo-img{width:28px;height:28px}.hero{min-height:80vh;padding:120px var(--spacing-sm) var(--spacing-xl);align-items:flex-start}.hero-content{margin-top:40px}.hero-logo-img{width:90px;height:90px}.hero-logo{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-md)}.hero h1{font-size:clamp(2.5rem, 10vw, 4rem)}.hero-subtitle{font-size:clamp(1rem, 4vw, 1.5rem)}.features-grid,.projects-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.feature-illustration{height:150px}.stats-grid{grid-template-columns:repeat(2,1fr)}section{padding:var(--spacing-lg) var(--spacing-sm)}.project-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.project-stats{align-self:stretch;justify-content:flex-start}.project-footer{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.project-links{order:2}.project-updated{order:1;align-self:flex-end}.section-title{font-size:clamp(1.8rem, 6vw, 2.2rem)}.cta-button{font-size:1rem;padding:.8rem 1.5rem}}@media (max-width:480px){.logo-img{width:24px;height:24px}.hero-logo-img{width:70px;height:70px}.hero-content{margin-top:100px}.feature-illustration{height:120px}.stats-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.footer-links{flex-direction:column;gap:var(--spacing-sm)}.project-tags{gap:.3rem}.tag{font-size:.7rem;padding:.2rem .6rem}.mobile-nav-content a{font-size:1.3rem}nav{padding:.8rem 0}section{scroll-margin-top:100px}.nav-container{padding:0 var(--spacing-sm)}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}.background-animation::before{animation:none}}@media print{.background-animation,.cta-button,.mobile-menu-btn,nav{display:none!important}body{background:#fff!important;color:#000!important}.feature-card,.project-card,.stat-card{border:1px solid #ccc!important;box-shadow:none!important}}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:100px var(--spacing-md) var(--spacing-lg);position:relative;background:#000;overflow:hidden}.hero-bg-video-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 50% 50%,#0d1b2a 0,#000 70%);z-index:0;opacity:.8}.hero-bg-video-placeholder::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(0deg,transparent 24%,rgba(255,255,255,.05) 25%,rgba(255,255,255,.05) 26%,transparent 27%,transparent 74%,rgba(255,255,255,.05) 75%,rgba(255,255,255,.05) 76%,transparent 77%,transparent),linear-gradient(90deg,transparent 24%,rgba(255,255,255,.05) 25%,rgba(255,255,255,.05) 26%,transparent 27%,transparent 74%,rgba(255,255,255,.05) 75%,rgba(255,255,255,.05) 76%,transparent 77%,transparent);background-size:50px 50px;opacity:.2;z-index:1}.hero-content{position:relative;z-index:2;max-width:800px}.hero h1{font-size:clamp(2.5rem, 5vw, 4.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin-bottom:1.5rem;color:#fff;background:0 0;-webkit-text-fill-color:initial}.hero-subtitle{font-size:clamp(1.2rem, 2vw, 1.5rem);color:var(--primary-color);margin-bottom:1.5rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.hero-description{font-size:1.15rem;color:#a0a0a0;margin-bottom:2.5rem;line-height:1.6;max-width:700px;margin-left:auto;margin-right:auto}.hero-ctas{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.primary-cta{background:#fff;color:#000;box-shadow:0 4px 15px rgba(255,255,255,.2)}.primary-cta:hover{background:#e0e0e0;color:#000;box-shadow:0 6px 20px rgba(255,255,255,.3)}.primary-cta::before{display:none}.secondary-cta{background:0 0;border:1px solid rgba(255,255,255,.3);color:#fff;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);text-decoration:none;font-weight:600;transition:var(--transition)}.secondary-cta:hover{background:rgba(255,255,255,.1);border-color:#fff}.tech-icon-wrapper{font-size:4rem;display:flex;align-items:center;justify-content:center;height:100%;width:100%;background:radial-gradient(circle at center,rgba(0,255,194,.1) 0,transparent 70%);border-radius:50%}.product-card{text-align:left;align-items:flex-start;border-top:3px solid var(--primary-color)}.product-card h3{font-size:1.8rem}body{font-family:Inter,-apple-system,sans-serif;letter-spacing:-.01em}.section-title{font-weight:800;letter-spacing:-.02em;color:#fff}.section-title::after{background:var(--primary-color)}.feature-card::before{display:none}.feature-card{border:1px solid rgba(255,255,255,.1);background:rgba(17,17,17,.6)}.hero{background:radial-gradient(circle at 50% 50%,#0d1b2a 0,#000 100%);overflow:hidden}.hero-bg-video-placeholder::after{opacity:.1;background-size:40px 40px}.product-card{background:linear-gradient(180deg,rgba(17,17,17,.9),#050505);border:1px solid rgba(0,255,194,.15);border-top:4px solid var(--primary-color)}.product-card:hover{border-color:rgba(0,255,194,.5);box-shadow:0 10px 30px rgba(0,255,194,.1)}.tech-icon-wrapper{font-size:3.5rem;background:radial-gradient(circle at center,rgba(0,255,194,.15) 0,transparent 60%)}#featured .projects-grid{margin-bottom:3rem}#featured .project-card{background:linear-gradient(145deg,#111 0,#050505 100%);border:1px solid rgba(255,255,255,.05)}#featured .project-card:hover{border-color:rgba(0,255,194,.3)}.hero h1{text-shadow:0 0 40px rgba(0,255,194,.2)}.logo-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:900;letter-spacing:-.05em}footer{background:#000;border-top:1px solid rgba(255,255,255,.05)}body{cursor:none}.custom-cursor{width:20px;height:20px;border:2px solid var(--primary-color);border-radius:50%;position:fixed;transform:translate(-50%,-50%);pointer-events:none;z-index:9999;transition:width .2s,height .2s,background-color .2s}.custom-cursor.hover{width:40px;height:40px;background-color:rgba(0,255,194,.2);border-color:transparent}#theme-customizer{background:rgba(17,17,17,.85);padding:10px;border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,.5);backdrop-filter:blur(10px)}.theme-btn{width:30px;height:30px;border-radius:50%;border:2px solid transparent;cursor:none;transition:transform .2s,border-color .2s}.theme-btn:hover{transform:scale(1.1);border-color:#fff}.activity-item{background:var(--card-bg);padding:1rem;border-radius:var(--border-radius-small);border-left:4px solid var(--primary-color);box-shadow:var(--shadow-soft);display:flex;justify-content:space-between;align-items:center;transition:transform .2s}.activity-item:hover{transform:translateX(5px)}.activity-date{color:var(--text-muted);font-size:.85rem}.activity-action{color:var(--text-primary)}.activity-action a{color:var(--primary-color);text-decoration:none;font-weight:700}.activity-action a:hover{text-decoration:underline}.arch-node{position:absolute;transform:translate(-50%,-50%);background:var(--dark-bg);color:var(--primary-color);padding:1rem 2rem;border-radius:50px;border:2px solid var(--primary-color);box-shadow:0 0 10px rgba(0,255,194,.5);cursor:pointer;transition:transform .3s,box-shadow .3s,background .3s;z-index:100;font-weight:700;text-align:center;pointer-events:auto}.arch-node:hover{transform:translate(-50%,-50%) scale(1.1);box-shadow:var(--shadow-glow);background:rgba(0,255,194,.1)}#neural-canvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.6}.custom-cursor{position:fixed;top:0;left:0;width:10px;height:10px;background-color:var(--primary-color);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:9999;transition:transform .2s ease,width .2s ease,height .2s ease,background-color .2s ease;mix-blend-mode:difference}.custom-cursor-follower{position:fixed;top:0;left:0;width:40px;height:40px;border:1px solid var(--primary-color);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:9998;transition:transform .1s ease-out,width .2s ease,height .2s ease;will-change:transform}.cursor-hover .custom-cursor{transform:translate(-50%,-50%) scale(2.5);background-color:rgba(255,255,255,.8)}.cursor-hover .custom-cursor-follower{width:60px;height:60px;border-color:rgba(255,255,255,.4)}.tilt-card{transform-style:preserve-3d;transform:perspective(1000px);will-change:transform;position:relative;overflow:hidden;transition:transform .1s}.tilt-card .glare{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(circle at center,rgba(255,255,255,.2) 0,transparent 50%);opacity:0;transition:opacity .3s;z-index:10;mix-blend-mode:overlay}.tilt-card>*{position:relative;z-index:2;transform:translateZ(30px)}.tilt-card::before{z-index:1}.tilt-card::after{z-index:1}.glitch{position:relative}.glitch::after,.glitch::before{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;opacity:.8}.glitch::before{left:2px;text-shadow:-2px 0 var(--error-color);clip:rect(24px,550px,90px,0);animation:glitch-anim 3s infinite linear alternate-reverse}.glitch::after{left:-2px;text-shadow:-2px 0 var(--primary-color);clip:rect(85px,550px,140px,0);animation:glitch-anim 2.5s infinite linear alternate-reverse}@keyframes glitch-anim{0%{clip:rect(10px,9999px,86px,0);transform:translate(0)}10%{clip:rect(80px,9999px,4px,0);transform:translate(-2px,2px)}20%{clip:rect(32px,9999px,55px,0);transform:translate(2px,-2px)}30%{clip:rect(62px,9999px,90px,0);transform:translate(-2px,2px)}40%{clip:rect(15px,9999px,25px,0);transform:translate(2px,-2px)}50%{clip:rect(45px,9999px,70px,0);transform:translate(-2px,2px)}60%{clip:rect(85px,9999px,15px,0);transform:translate(2px,-2px)}70%{clip:rect(20px,9999px,35px,0);transform:translate(-2px,2px)}80%{clip:rect(50px,9999px,60px,0);transform:translate(2px,-2px)}90%{clip:rect(75px,9999px,40px,0);transform:translate(-2px,2px)}100%{clip:rect(5px,9999px,95px,0);transform:translate(0)}}.logo:hover .logo-text,.section-title:hover{animation:text-glitch .3s cubic-bezier(.25,.46,.45,.94) both infinite;color:var(--primary-color)}@keyframes text-glitch{0%{transform:translate(0);text-shadow:none}20%{transform:translate(-2px,2px);text-shadow:2px -2px var(--error-color),-2px 2px var(--secondary-color)}40%{transform:translate(-2px,-2px);text-shadow:2px 2px var(--error-color),-2px -2px var(--secondary-color)}60%{transform:translate(2px,2px);text-shadow:-2px -2px var(--error-color),2px 2px var(--secondary-color)}80%{transform:translate(2px,-2px);text-shadow:-2px 2px var(--error-color),2px -2px var(--secondary-color)}100%{transform:translate(0);text-shadow:none}}.terminal-boot-container{width:100%;max-width:600px;margin:0 auto 2rem auto;background:rgba(5,5,5,.85);border:1px solid rgba(0,255,194,.2);border-radius:var(--border-radius-small);box-shadow:0 10px 30px rgba(0,0,0,.5),0 0 15px rgba(0,255,194,.1);overflow:hidden;backdrop-filter:blur(5px);text-align:left}.terminal-header{background:rgba(20,20,20,.9);padding:8px 15px;display:flex;align-items:center;border-bottom:1px solid rgba(0,255,194,.1)}.terminal-buttons{display:flex;gap:6px}.terminal-btn{width:12px;height:12px;border-radius:50%;display:inline-block}.terminal-btn.close{background-color:#ff5f56}.terminal-btn.min{background-color:#ffbd2e}.terminal-btn.max{background-color:#27c93f}.terminal-title{color:var(--text-muted);font-family:monospace;font-size:.85rem;margin-left:15px;flex-grow:1;text-align:center;margin-right:48px}.terminal-body{padding:15px;font-family:'Courier New',Courier,monospace;font-size:.9rem;color:#0fc;min-height:150px;max-height:250px;overflow-y:hidden;line-height:1.5}.terminal-line{margin-bottom:5px;opacity:0;animation:typeIn .1s forwards}.terminal-line span.user{color:var(--secondary-color);font-weight:700}.terminal-line span.path{color:var(--text-primary);font-weight:700}.terminal-line.error{color:var(--error-color)}.terminal-line.success{color:var(--success-color)}.cursor-blink{display:inline-block;width:8px;height:15px;background-color:#0fc;vertical-align:middle;animation:blink 1s step-end infinite}@keyframes typeIn{from{opacity:0}to{opacity:1}}@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}@media (pointer:fine){body{cursor:none}.cta-button,.logo,a,button,input,textarea{cursor:none}}.terminal-input-line{display:flex;align-items:center;color:#fff;font-family:monospace}.terminal-input-line .prompt{color:var(--primary-color);margin-right:8px}#terminal-input{background:0 0;border:none;color:#fff;font-family:monospace;font-size:inherit;outline:0;width:100%}.terminal-line{white-space:pre-wrap}.tilt-card{position:relative;overflow:hidden;border-radius:var(--border-radius);transition:transform .1s ease,box-shadow .1s ease;transform-style:preserve-3d}.tilt-card>*{transform:translateZ(30px)}.tilt-card-glare{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.2) 0,transparent 60%);opacity:0;transition:opacity .3s ease;z-index:2;mix-blend-mode:overlay}.tilt-card:hover .tilt-card-glare{opacity:1}.terminal-boot-container{pointer-events:auto!important;z-index:100!important}.hero-content{z-index:100!important;pointer-events:auto!important}.terminal-body{pointer-events:auto!important;z-index:101!important}[data-theme=light]{--primary-color:#007bb5;--secondary-color:#e81a73;--accent-color:#356bff;--success-color:#008f72;--warning-color:#d17c00;--error-color:#d32f2f;--dark-bg:#f8f9fa;--card-bg:#ffffff;--glass-bg:rgba(255, 255, 255, 0.85);--text-primary:#1a1a1a;--text-secondary:#4a4a4a;--text-muted:#6c757d;--gradient-primary:linear-gradient(135deg, #007bb5, #e81a73);--gradient-secondary:linear-gradient(135deg, #356bff, #d17c00);--gradient-dark:linear-gradient(135deg, #e9ecef, #dee2e6, #ced4da);--shadow-glow:0 0 30px rgba(0, 123, 181, 0.15);--shadow-soft:0 8px 32px rgba(0, 0, 0, 0.08)}[data-theme=light] body{background-color:var(--dark-bg);color:var(--text-primary)}[data-theme=light] .capability-card,[data-theme=light] .card,[data-theme=light] .commit-card,[data-theme=light] .project-card{background-color:var(--card-bg);box-shadow:var(--shadow-soft);border-color:rgba(0,0,0,.05)}[data-theme=light] .navbar{background:var(--glass-bg);border-bottom-color:rgba(0,0,0,.05)}[data-theme=light] .nav-links a{color:var(--text-secondary)}[data-theme=light] .nav-links a.active,[data-theme=light] .nav-links a:hover{color:var(--primary-color)}[data-theme=light] .hero-title{color:var(--text-primary);text-shadow:none}[data-theme=light] .section-title{color:var(--text-primary)}[data-theme=light] .cta-button.secondary{color:var(--primary-color);border-color:var(--primary-color)}[data-theme=light] .cta-button.secondary:hover{background:rgba(0,123,181,.1)}[data-theme=light] .code-block{background:#f1f3f5;color:#212529;border-color:#dee2e6}[data-theme=light] .hologram-grid{background-size:40px 40px;background-image:linear-gradient(to right,rgba(0,123,181,.1) 1px,transparent 1px),linear-gradient(to bottom,rgba(0,123,181,.1) 1px,transparent 1px)}[data-theme=light] footer{border-top-color:rgba(0,0,0,.1)}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.4, 0, .2, 1),transform .8s cubic-bezier(.4, 0, .2, 1);will-change:opacity,transform}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.delay-100{transition-delay:0.1s}.delay-200{transition-delay:0.2s}.delay-300{transition-delay:0.3s}.delay-400{transition-delay:0.4s}.capability-card,.feature-item,.project-card,.repo-card{transition:transform .4s cubic-bezier(.175, .885, .32, 1.275),box-shadow .4s ease;position:relative;overflow:hidden}.capability-card::before,.project-card::before{content:'';position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,.05) 50%,rgba(255,255,255,0) 100%);transform:skewX(-25deg);transition:left .6s ease;z-index:1}.capability-card:hover::before,.project-card:hover::before{left:200%}.capability-card:hover,.project-card:hover,.repo-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 15px 40px rgba(0,255,194,.2);border-color:var(--primary-color)}.cta-button{position:relative;overflow:hidden;z-index:1;transition:all .4s cubic-bezier(.25, .8, .25, 1)}.cta-button::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:100%;background-color:var(--primary-color);z-index:-2}.cta-button::before{content:'';position:absolute;bottom:0;left:0;width:0%;height:100%;background-color:rgba(255,255,255,.2);transition:all .4s cubic-bezier(.25, .8, .25, 1);z-index:-1}.cta-button:hover::before{width:100%}.cta-button:active{transform:scale(.95)}[data-theme=light] .capability-card:hover,[data-theme=light] .project-card:hover,[data-theme=light] .repo-card:hover{box-shadow:0 15px 40px rgba(0,123,181,.2)}.hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-content{position:relative;z-index:10;background:rgba(17,17,17,.6);backdrop-filter:blur(12px);padding:4rem 3rem;border-radius:24px;border:1px solid rgba(255,255,255,.1);box-shadow:0 25px 50px -12px rgba(0,0,0,.5);max-width:800px;margin:0 auto}.hero-title{background:linear-gradient(to right,var(--text-primary),var(--primary-color));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:1.5rem}.hero-subtitle{font-size:1.25rem;line-height:1.6;opacity:.9;margin-bottom:2.5rem}[data-theme=light] .hero-content{background:rgba(255,255,255,.7);border-color:rgba(0,0,0,.05)}[data-theme=light] .hero-title{background:linear-gradient(to right,#1a1a1a,var(--primary-color));-webkit-background-clip:text;background-clip:text}input[type=email],input[type=text],textarea{background:rgba(0,0,0,.5);border:1px solid rgba(0,255,194,.3);color:var(--text-primary);padding:10px 15px;border-radius:var(--border-radius-small);transition:all .3s ease;box-shadow:inset 0 0 10px rgba(0,0,0,.5)}input[type=email]:focus,input[type=text]:focus,textarea:focus{outline:0;border-color:var(--primary-color);box-shadow:0 0 15px rgba(0,255,194,.4),inset 0 0 10px rgba(0,255,194,.1);background:rgba(0,255,194,.05)}nav{transition:all .4s cubic-bezier(.25, .8, .25, 1);top:0;width:100%}nav.scrolled{top:20px;width:calc(100% - 40px);max-width:var(--max-width);left:50%;transform:translateX(-50%);border-radius:50px;background:rgba(10,10,10,.85);box-shadow:0 10px 30px rgba(0,0,0,.5),0 0 15px rgba(0,255,194,.2);border:1px solid rgba(0,255,194,.3);padding:8px 0}@media (max-width:768px){nav.scrolled{width:calc(100% - 20px);top:10px;border-radius:25px}}#terminal-input{box-shadow:none!important;border:none!important;background:0 0!important;padding:0!important;caret-color:var(--primary-color)}#terminal-input:focus{box-shadow:none!important;background:0 0!important}.glow-card{position:relative;background:rgba(255,255,255,.03);overflow:hidden;border-radius:var(--border-radius);z-index:1}.glow-card::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;padding:2px;background:linear-gradient(to bottom right,rgba(255,255,255,.2),rgba(255,255,255,0));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:2}.glow-card::after{content:"";position:absolute;top:var(--mouse-y,0);left:var(--mouse-x,0);width:400px;height:400px;background:radial-gradient(circle closest-side,rgba(0,255,194,.15),transparent);transform:translate(-50%,-50%);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:-1}.glow-card:hover::after{opacity:1}.featured-project-container{background-color:var(--card-bg);border:1px solid rgba(0,255,194,.2);border-radius:var(--border-radius);padding:40px;max-width:var(--max-width);margin:0 auto;width:100%;box-shadow:0 8px 32px rgba(0,0,0,.4);box-sizing:border-box;transition:var(--transition)}.featured-project-container:hover{border-color:rgba(0,255,194,.4);box-shadow:var(--shadow-glow)}#featured-project .header-section{display:flex;align-items:center;gap:20px;margin-bottom:25px}#featured-project .icon-container{width:64px;height:64px;background-color:rgba(0,255,194,.1);border-radius:12px;display:flex;justify-content:center;align-items:center;border:1px solid rgba(0,255,194,.4)}#featured-project .icon-container i{font-size:32px;color:var(--primary-color)}#featured-project .project-title{margin:0;font-size:28px;font-weight:700;color:var(--text-primary)}#featured-project .project-subtitle{margin:5px 0 0 0;font-size:16px;color:var(--primary-color);font-family:monospace}#featured-project .tech-badges{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}#featured-project .badge{background-color:rgba(0,255,194,.05);border:1px solid rgba(0,255,194,.3);color:var(--text-primary);padding:6px 12px;border-radius:20px;font-size:13px;font-family:monospace;display:flex;align-items:center;gap:6px;transition:var(--transition)}#featured-project .badge:hover{background-color:rgba(0,255,194,.15);border-color:var(--primary-color)}#featured-project .badge i{font-size:14px;color:var(--primary-color)}#featured-project .project-description{line-height:1.6;color:var(--text-secondary);margin-bottom:30px;font-size:16px}#featured-project .features-list{list-style:none;padding:0;margin:0 0 35px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}#featured-project .features-list li{background-color:rgba(0,0,0,.2);border:1px solid rgba(0,255,194,.1);padding:20px;border-radius:8px;display:flex;flex-direction:column;gap:10px;transition:var(--transition)}#featured-project .features-list li:hover{border-color:rgba(0,255,194,.3);background-color:rgba(0,255,194,.03)}#featured-project .features-list li i{color:var(--primary-color);font-size:24px}#featured-project .features-list li strong{color:var(--text-primary);font-size:16px}#featured-project .features-list li span{color:var(--text-muted);font-size:14px;line-height:1.5}#featured-project .action-buttons{display:flex;gap:15px}#featured-project .btn{text-decoration:none;padding:12px 24px;border-radius:6px;font-weight:600;font-size:15px;display:flex;align-items:center;gap:8px;transition:var(--transition);cursor:pointer}#featured-project .btn-primary{background:var(--gradient-primary);color:var(--dark-bg);border:none;box-shadow:0 4px 15px rgba(0,255,194,.2)}#featured-project .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,255,194,.4)}#featured-project .btn-secondary{background-color:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}#featured-project .btn-secondary:hover{background-color:rgba(0,255,194,.1);transform:translateY(-2px)}@media (max-width:768px){#featured-project .header-section{flex-direction:column;align-items:flex-start}#featured-project .action-buttons{flex-direction:column}#featured-project .btn{justify-content:center}.featured-project-container{padding:20px}} \ No newline at end of file diff --git a/index.html b/index.html index f54b869..60405b6 100644 --- a/index.html +++ b/index.html @@ -55,6 +55,7 @@ + @@ -149,6 +150,58 @@

Pelle Nyberg

+ + + +

🤖 Architectures & Innovation

@@ -432,15 +485,6 @@

Open Source & Developer Tools

- - Platform Dashboar
Platform preview 1773185420660.png
Platform preview 1773185446305.png
Platform preview 1773242699963.png - -
diff --git a/package-lock.json b/package-lock.json index c7a859c..6379758 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "jsdom": "^29.1.0", "lunr": "^2.3.9", "marked": "^18.0.2", - "playwright": "^1.58.2", + "playwright": "^1.60.0", "terser": "^5.46.1", "web-vitals": "^5.2.0" } @@ -1794,13 +1794,13 @@ } }, "node_modules/playwright": { - "version": "1.58.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.58.2.tgz", - "integrity": "sha512-vA30H8Nvkq/cPBnNw4Q8TWz1EJyqgpuinBcHET0YVJVFldr8JDNiU9LaWAE1KqSkRYazuaBhTpB5ZzShOezQ6A==", + "version": "1.60.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.60.0.tgz", + "integrity": "sha512-hheHdokM8cdqCb0lcE3s+zT4t4W+vvjpGxsZlDnikarzx8tSzMebh3UiFtgqwFwnTnjYQcsyMF8ei2mCO/tpeA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.58.2" + "playwright-core": "1.60.0" }, "bin": { "playwright": "cli.js" @@ -1813,9 +1813,9 @@ } }, "node_modules/playwright-core": { - "version": "1.58.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.58.2.tgz", - "integrity": "sha512-yZkEtftgwS8CsfYo7nm0KE8jsvm6i/PTgVtB8DL726wNf6H2IMsDuxCpJj59KDaxCtSnrWan2AeDqM7JBaultg==", + "version": "1.60.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.60.0.tgz", + "integrity": "sha512-9bW6zvX/m0lEbgTKJ6YppOKx8H3VOPBMOCFh2irXFOT4BbHgrx5hPjwJYLT40Lu+4qtD36qKc/Hn56StUW57IA==", "dev": true, "license": "Apache-2.0", "bin": { diff --git a/package.json b/package.json index 1dfc55f..019dae8 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "jsdom": "^29.1.0", "lunr": "^2.3.9", "marked": "^18.0.2", - "playwright": "^1.58.2", + "playwright": "^1.60.0", "terser": "^5.46.1", "web-vitals": "^5.2.0" } diff --git a/styles.css b/styles.css index b435d74..c6616af 100644 --- a/styles.css +++ b/styles.css @@ -2430,3 +2430,196 @@ nav.scrolled { .glow-card:hover::after { opacity: 1; } + +/* Featured Project Section - Agent-Commit Tracker */ +.featured-project-container { + background-color: var(--card-bg); + border: 1px solid rgba(0, 255, 194, 0.2); + border-radius: var(--border-radius); + padding: 40px; + max-width: var(--max-width); + margin: 0 auto; + width: 100%; + box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4); + box-sizing: border-box; + transition: var(--transition); +} + +.featured-project-container:hover { + border-color: rgba(0, 255, 194, 0.4); + box-shadow: var(--shadow-glow); +} + +#featured-project .header-section { + display: flex; + align-items: center; + gap: 20px; + margin-bottom: 25px; +} + +#featured-project .icon-container { + width: 64px; + height: 64px; + background-color: rgba(0, 255, 194, 0.1); /* Deep tech primary tint */ + border-radius: 12px; + display: flex; + justify-content: center; + align-items: center; + border: 1px solid rgba(0, 255, 194, 0.4); +} + +#featured-project .icon-container i { + font-size: 32px; + color: var(--primary-color); +} + +#featured-project .project-title { + margin: 0; + font-size: 28px; + font-weight: 700; + color: var(--text-primary); +} + +#featured-project .project-subtitle { + margin: 5px 0 0 0; + font-size: 16px; + color: var(--primary-color); + font-family: monospace; +} + +#featured-project .tech-badges { + display: flex; + flex-wrap: wrap; + gap: 10px; + margin-bottom: 30px; +} + +#featured-project .badge { + background-color: rgba(0, 255, 194, 0.05); + border: 1px solid rgba(0, 255, 194, 0.3); + color: var(--text-primary); + padding: 6px 12px; + border-radius: 20px; + font-size: 13px; + font-family: monospace; + display: flex; + align-items: center; + gap: 6px; + transition: var(--transition); +} + +#featured-project .badge:hover { + background-color: rgba(0, 255, 194, 0.15); + border-color: var(--primary-color); +} + +#featured-project .badge i { + font-size: 14px; + color: var(--primary-color); +} + +#featured-project .project-description { + line-height: 1.6; + color: var(--text-secondary); + margin-bottom: 30px; + font-size: 16px; +} + +#featured-project .features-list { + list-style: none; + padding: 0; + margin: 0 0 35px 0; + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 20px; +} + +#featured-project .features-list li { + background-color: rgba(0, 0, 0, 0.2); + border: 1px solid rgba(0, 255, 194, 0.1); + padding: 20px; + border-radius: 8px; + display: flex; + flex-direction: column; + gap: 10px; + transition: var(--transition); +} + +#featured-project .features-list li:hover { + border-color: rgba(0, 255, 194, 0.3); + background-color: rgba(0, 255, 194, 0.03); +} + +#featured-project .features-list li i { + color: var(--primary-color); + font-size: 24px; +} + +#featured-project .features-list li strong { + color: var(--text-primary); + font-size: 16px; +} + +#featured-project .features-list li span { + color: var(--text-muted); + font-size: 14px; + line-height: 1.5; +} + +#featured-project .action-buttons { + display: flex; + gap: 15px; +} + +#featured-project .btn { + text-decoration: none; + padding: 12px 24px; + border-radius: 6px; + font-weight: 600; + font-size: 15px; + display: flex; + align-items: center; + gap: 8px; + transition: var(--transition); + cursor: pointer; +} + +#featured-project .btn-primary { + background: var(--gradient-primary); + color: var(--dark-bg); + border: none; + box-shadow: 0 4px 15px rgba(0, 255, 194, 0.2); +} + +#featured-project .btn-primary:hover { + transform: translateY(-2px); + box-shadow: 0 6px 20px rgba(0, 255, 194, 0.4); +} + +#featured-project .btn-secondary { + background-color: transparent; + color: var(--primary-color); + border: 1px solid var(--primary-color); +} + +#featured-project .btn-secondary:hover { + background-color: rgba(0, 255, 194, 0.1); + transform: translateY(-2px); +} + +/* Responsive adjustments */ +@media (max-width: 768px) { + #featured-project .header-section { + flex-direction: column; + align-items: flex-start; + } + #featured-project .action-buttons { + flex-direction: column; + } + #featured-project .btn { + justify-content: center; + } + .featured-project-container { + padding: 20px; + } +}