:root{--bg-primary: #08090d;--bg-secondary: #0e1017;--bg-surface: #131620;--bg-surface-elevated: #1a1e2c;--bg-card: rgba(14, 16, 23, .85);--bg-glass: rgba(19, 22, 32, .7);--border-subtle: rgba(255, 255, 255, .07);--border-medium: rgba(255, 255, 255, .14);--border-strong: rgba(255, 255, 255, .25);--border-accent: rgba(56, 189, 248, .35);--border-accent-strong: #38bdf8;--grid-line: rgba(255, 255, 255, .035);--grid-crosshair: rgba(56, 189, 248, .25);--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--text-dim: #475569;--text-accent: #38bdf8;--text-accent-cyan: #22d3ee;--accent-blue: #38bdf8;--accent-blue-deep: #0284c7;--accent-glow: rgba(56, 189, 248, .12);--status-active: #34d399;--status-warning: #fbbf24;--status-critical: #f87171;--status-idle: #64748b;--font-mono: "JetBrains Mono", SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Space Grotesk", "Inter", sans-serif;--container-max-width: 1320px;--header-height: 72px;--header-height-scrolled: 60px;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--space-4xl: 8rem;--transition-fast: .15s cubic-bezier(.16, 1, .3, 1);--transition-medium: .3s cubic-bezier(.16, 1, .3, 1);--transition-slow: .6s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;background-color:var(--bg-primary);color:var(--text-primary);color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-size:48px 48px;background-position:center top;z-index:0}body:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(circle at 50% 20%,transparent 40%,rgba(8,9,13,.85) 100%);z-index:1}#root{position:relative;z-index:2;display:flex;flex-direction:column;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;color:var(--text-primary);letter-spacing:-.02em;line-height:1.15}p{color:var(--text-secondary);font-weight:400}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}button{font-family:inherit;cursor:pointer;border:none;background:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}code,pre,.mono{font-family:var(--font-mono)}::selection{background-color:#38bdf840;color:var(--text-primary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-surface-elevated);border-radius:3px;border:1px solid var(--border-subtle)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.tech-bracket{position:relative}.tech-bracket:before{content:"";position:absolute;top:-2px;left:-2px;width:6px;height:6px;border-top:1.5px solid var(--border-accent);border-left:1.5px solid var(--border-accent);pointer-events:none}.tech-bracket:after{content:"";position:absolute;bottom:-2px;right:-2px;width:6px;height:6px;border-bottom:1.5px solid var(--border-accent);border-right:1.5px solid var(--border-accent);pointer-events:none}@keyframes pulseDot{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:1;transform:scale(1.2)}}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-medium) forwards}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{header,footer,.desktop-cta,.mobile-toggle,.btn-primary,.btn-secondary{display:none!important}body,html{background:#fff!important;color:#111!important}body:before,body:after{display:none!important}.resume-doc{background:#fff!important;border:1px solid #cccccc!important;color:#111!important;box-shadow:none!important}p,span,div,h1,h2,h3,h4{color:#111!important}.tech-coord,.tech-label{color:#444!important}}.container{width:100%;max-width:var(--container-max-width);margin-left:auto;margin-right:auto;padding-left:var(--space-lg);padding-right:var(--space-lg);position:relative}@media(max-width:768px){.container{padding-left:var(--space-md);padding-right:var(--space-md)}}.tech-label{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--text-accent)}.tech-label-secondary{color:var(--text-muted)}.tech-status-dot{width:6px;height:6px;border-radius:50%;background-color:var(--status-active);box-shadow:0 0 8px var(--status-active);animation:pulseDot 2.4s infinite ease-in-out}.tech-status-dot.idle{background-color:var(--status-idle);box-shadow:none;animation:none}.tech-status-dot.warning{background-color:var(--status-warning);box-shadow:0 0 8px var(--status-warning)}.tech-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;background-color:#ffffff08;border:1px solid var(--border-subtle);border-radius:2px;font-family:var(--font-mono);font-size:.72rem;color:var(--text-secondary);transition:all var(--transition-fast)}.tech-badge:hover{border-color:var(--border-accent);color:var(--text-accent);background-color:var(--accent-glow)}.tech-coord{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;color:var(--text-dim)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.75rem 1.4rem;font-family:var(--font-mono);font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-radius:2px;cursor:pointer;transition:all var(--transition-medium);position:relative;overflow:hidden;text-decoration:none}.btn-primary{background-color:var(--text-primary);color:var(--bg-primary);border:1px solid var(--text-primary)}.btn-primary:hover{background-color:var(--accent-blue);border-color:var(--accent-blue);color:var(--bg-primary);box-shadow:0 0 20px #38bdf840;transform:translateY(-1px)}.btn-secondary{background-color:#ffffff08;color:var(--text-primary);border:1px solid var(--border-medium)}.btn-secondary:hover{background-color:#ffffff12;border-color:var(--border-accent);color:var(--text-accent);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid transparent;padding:.5rem .8rem}.btn-ghost:hover{color:var(--text-accent)}.btn-arrow{display:inline-block;transition:transform var(--transition-fast)}.btn:hover .btn-arrow{transform:translate(4px)}.section-heading-container{margin-bottom:var(--space-3xl);position:relative}.section-pretitle{display:flex;align-items:center;gap:.75rem;margin-bottom:var(--space-sm)}.section-number{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);letter-spacing:.1em}.section-title{font-size:clamp(2rem,4vw,3.2rem);font-weight:700;line-height:1.05;letter-spacing:-.03em;text-transform:uppercase;margin-bottom:var(--space-sm);color:var(--text-primary)}.section-desc{font-size:1.05rem;color:var(--text-secondary);max-width:640px;line-height:1.6}.section-divider{width:100%;height:1px;background:linear-gradient(to right,var(--border-medium),var(--border-subtle) 60%,transparent);margin-top:var(--space-lg)}.project-card{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:3px;position:relative;overflow:hidden;transition:border-color var(--transition-medium),transform var(--transition-medium),box-shadow var(--transition-medium);margin-bottom:var(--space-3xl)}.project-card:hover{border-color:var(--border-accent);box-shadow:0 12px 40px -15px #000000b3,0 0 25px -5px var(--accent-glow);transform:translateY(-2px)}.project-card.reversed{direction:rtl}.project-card.reversed>*{direction:ltr}.project-card-visual-wrapper{position:relative;min-height:380px;background:radial-gradient(circle at center,rgba(19,22,32,.95),var(--bg-surface));overflow:hidden;display:flex;align-items:center;justify-content:center}.project-card-content{padding:var(--space-2xl) var(--space-xl);display:flex;flex-direction:column;justify-content:center;position:relative}.project-card-header{margin-bottom:var(--space-md)}.project-category{font-family:var(--font-mono);font-size:.75rem;color:var(--text-accent);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-xs);display:flex;align-items:center;gap:.5rem}.project-title{font-size:clamp(1.8rem,2.8vw,2.4rem);font-weight:700;text-transform:uppercase;letter-spacing:-.02em;margin-bottom:.25rem;color:var(--text-primary)}.project-subtitle{font-family:var(--font-sans);font-size:1rem;color:var(--text-muted);font-weight:500;margin-bottom:var(--space-md)}.project-desc{font-size:.95rem;color:var(--text-secondary);line-height:1.65;margin-bottom:var(--space-lg)}.project-tech-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:var(--space-xl)}.project-actions{display:flex;align-items:center;gap:var(--space-md);margin-top:auto}@media(max-width:992px){.project-card{grid-template-columns:1fr;gap:0}.project-card.reversed{direction:ltr}.project-card-visual-wrapper{min-height:300px}.project-card-content{padding:var(--space-lg)}}@media(max-width:480px){.project-card-visual-wrapper{min-height:250px}.telemetry-strip{flex-direction:column;align-items:flex-start;gap:4px}}.telemetry-strip{display:flex;align-items:center;justify-content:space-between;padding:.4rem .8rem;background-color:#08090db3;border:1px solid var(--border-subtle);border-radius:2px;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);letter-spacing:.06em}.telemetry-item{display:flex;align-items:center;gap:.4rem}.telemetry-val{color:var(--text-accent)}
