:root{--color-bg: #020617;--color-bg-secondary: #0f172a;--color-border: #1e293b;--color-text: #e2e8f0;--color-text-muted: #94a3b8;--color-text-dim: #64748b;--color-primary: #0ea5e9;--color-primary-dim: #0284c7;--color-primary-glow: rgba(14, 165, 233, .3);--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--font-mono: "JetBrains Mono", monospace;--font-sans: "Inter", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;overflow-x:hidden}::selection{background-color:#0ea5e94d;color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-dim)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--color-text)}a{color:inherit;text-decoration:none;transition:color .2s ease}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.grid-bg{background-image:linear-gradient(rgba(14,165,233,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(14,165,233,.03) 1px,transparent 1px);background-size:40px 40px}.blueprint-grid{position:relative}.blueprint-grid:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(14,165,233,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(14,165,233,.05) 1px,transparent 1px);background-size:20px 20px;pointer-events:none}.node{position:relative;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;transition:all .3s ease}.node:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:8px;padding:1px;background:linear-gradient(135deg,var(--color-primary),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s ease}.node:hover:before{opacity:1}.node:hover{border-color:var(--color-primary);box-shadow:0 0 20px #0ea5e91a}.connection{stroke:var(--color-primary);stroke-width:2;fill:none;opacity:.6}.connection-dashed{stroke-dasharray:5,5;animation:flow 2s linear infinite}@keyframes flow{to{stroke-dashoffset:-20}}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot--active{background-color:var(--color-success);box-shadow:0 0 8px var(--color-success);animation:pulse 2s ease-in-out infinite}.status-dot--warning{background-color:var(--color-warning);box-shadow:0 0 8px var(--color-warning)}.status-dot--error{background-color:var(--color-error);box-shadow:0 0 8px var(--color-error)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.terminal{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;font-family:var(--font-mono);font-size:.875rem;overflow:hidden}.terminal-header{background:#ffffff05;border-bottom:1px solid var(--color-border);padding:.75rem 1rem;display:flex;align-items:center;gap:.5rem}.terminal-dot{width:12px;height:12px;border-radius:50%}.terminal-dot--red{background-color:var(--color-error)}.terminal-dot--yellow{background-color:var(--color-warning)}.terminal-dot--green{background-color:var(--color-success)}.terminal-body{padding:1rem;color:var(--color-text-muted)}.terminal-prompt{color:var(--color-success)}.terminal-command{color:var(--color-text)}.workflow-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;padding:1.5rem;transition:all .3s ease;position:relative;overflow:hidden}.workflow-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);opacity:0;transition:opacity .3s ease}.workflow-card:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 10px 40px -10px #0ea5e933}.workflow-card:hover:before{opacity:1}.data-flow{position:relative;overflow:hidden}.data-flow:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(14,165,233,.1),transparent);animation:dataFlow 3s ease-in-out infinite}@keyframes dataFlow{0%{left:-100%}50%,to{left:100%}}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:#0ea5e91a;border:1px solid rgba(14,165,233,.2);border-radius:9999px;font-size:.75rem;font-weight:500;color:var(--color-primary)}.section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent);margin:4rem 0}.nav-link{position:relative}.nav-link:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:0;height:2px;background:var(--color-primary);transition:width .2s ease}.nav-link:hover:after,.nav-link.active:after{width:20px}.project-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;overflow:hidden;transition:all .3s ease}.project-card:hover{border-color:var(--color-primary);transform:translateY(-2px)}.project-card__image{aspect-ratio:16/9;background:linear-gradient(135deg,var(--color-bg-secondary),var(--color-border));display:flex;align-items:center;justify-content:center;color:var(--color-text-dim)}.project-card__content{padding:1rem}.filter-btn{transition:all .2s ease}.filter-btn.active{background-color:var(--color-primary);color:#fff}.timeline{position:relative;padding-left:1.5rem}.timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--color-border)}.timeline-item{position:relative;padding-bottom:2rem}.timeline-item:before{content:"";position:absolute;left:-1.5rem;top:.25rem;width:8px;height:8px;background:var(--color-bg);border:2px solid var(--color-primary);border-radius:50%;transform:translate(-3px)}.skill-tag{display:inline-flex;align-items:center;padding:.375rem .875rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;font-size:.875rem;color:var(--color-text-muted);transition:all .2s ease}.skill-tag:hover{border-color:var(--color-primary);color:var(--color-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:500;border-radius:8px;transition:all .2s ease;cursor:pointer;border:none}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:var(--color-primary-dim);box-shadow:0 0 20px var(--color-primary-glow)}.btn-secondary{background-color:var(--color-bg-secondary);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{border-color:var(--color-primary);color:var(--color-primary)}.system-diagram{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;padding:1.5rem;position:relative}.system-diagram:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;padding:1px;background:linear-gradient(135deg,rgba(14,165,233,.2),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}@media(max-width:768px){.workflow-card{padding:1rem}.terminal{font-size:.75rem}.timeline{padding-left:1rem}.timeline-item:before{left:-1rem}}@media print{body{background:#fff;color:#000}.grid-bg,.blueprint-grid:before{display:none}.workflow-card,.project-card{break-inside:avoid;border:1px solid #ccc}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.js-focus-visible :focus:not(.focus-visible){outline:none}
