:root{--bg-color: #050505;--surface-color: #0f0f0f;--surface-hover: #1a1a1a;--text-primary: #ededed;--text-secondary: #a1a1a1;--text-muted: #71717a;--accent-color: #3b82f6;--accent-glow: rgba(59, 130, 246, .5);--border-color: #27272a;--bg-color-rgb: 5, 5, 5;--font-main: "Outfit", sans-serif;--space-xs: clamp(.25rem, 1vw, .5rem);--space-sm: clamp(.5rem, 2vw, 1rem);--space-md: clamp(1rem, 3vw, 1.5rem);--space-lg: clamp(1.5rem, 4vw, 2.5rem);--space-xl: clamp(2.5rem, 6vw, 4.5rem);--step-0: clamp(.9rem, .17vw + .86rem, 1rem);--step-1: clamp(1.08rem, .35vw + 1rem, 1.25rem);--step-2: clamp(1.3rem, .65vw + 1.15rem, 1.6rem);--step-3: clamp(1.8rem, 1.25vw + 1.5rem, 2.8rem);--step-4: clamp(2.5rem, 2.5vw + 2rem, 4.5rem);--container-width: 1100px}[data-theme=light]{--bg-color: #f5f5f7;--surface-color: #ffffff;--surface-hover: #e8e8ed;--text-primary: #1d1d1f;--text-secondary: #86868b;--text-muted: #a1a1a6;--accent-color: #0071e3;--accent-glow: rgba(0, 113, 227, .1);--border-color: #d2d2d7;--bg-color-rgb: 245, 245, 247}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}a{color:inherit;text-decoration:none}button{all:unset;cursor:pointer;font-family:inherit;color:inherit;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}ul{list-style:none}body{font-family:var(--font-main);background-color:var(--bg-color);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-size:var(--step-0);padding:clamp(0rem,2vw,2rem);min-height:100vh}.container{width:100%;max-width:var(--container-width);margin:0 auto;padding:0 24px}.section{padding:var(--space-xl) 0;margin-bottom:var(--space-md)}@media (min-width: 480px){#root{border:1px solid var(--border-color);border-radius:24px;background-color:var(--bg-color);box-shadow:0 20px 50px #0000001a}}@media (max-width: 479px){body{padding:0}.container{padding:0 20px}#root{border:none;border-radius:0}}.section-title{font-size:var(--step-2);font-weight:700;margin-bottom:var(--space-lg);color:var(--text-primary);letter-spacing:-.03em}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.grid{display:grid}.skill-pill{display:inline-flex;align-items:center;gap:.25rem;background-color:var(--surface-color);border:1px solid var(--border-color);padding:.1rem .6rem;border-radius:6px;font-size:.9em;color:var(--text-primary);margin:0 .3rem;vertical-align:middle}@media (max-width: 768px){.hidden-mobile{display:none!important}}@media (min-width: 769px){.show-mobile{display:none!important}}a,button{transition:all .2s ease-in-out}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.bot-cursor-wrapper{position:fixed;top:0;left:0;pointer-events:none;z-index:1000000;will-change:transform;opacity:.85;filter:drop-shadow(0 0 4px rgba(0,0,0,.1))}[data-theme=dark] .bot-cursor-wrapper{filter:drop-shadow(0 0 10px var(--accent-glow))}.bot-container{display:flex;align-items:center;justify-content:center}.bot-svg-wrapper{animation:bot-bob 2s infinite ease-in-out}@keyframes bot-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.bot-svg{width:50px;height:60px;filter:drop-shadow(0 0 8px var(--accent-color))}.bot-svg .bot-main{fill:var(--text-primary);opacity:.9}.bot-svg .bot-accent{fill:var(--surface-color);stroke:var(--border-color);stroke-width:1px}.bot-svg .bot-head{fill:var(--surface-hover);stroke:var(--text-secondary);stroke-width:1px}.leg{animation:bot-leg-move .8s infinite alternate ease-in-out;transform-origin:top center}.arm{animation:bot-arm-swing .9s infinite alternate ease-in-out;transform-origin:top center}.bot-walking .leg{animation-duration:.2s}.bot-walking .arm{animation-duration:.25s}@keyframes bot-leg-move{0%{transform:translateY(0) rotate(-10deg)}to{transform:translateY(-4px) rotate(15deg)}}@keyframes bot-arm-swing{0%{transform:rotate(10deg)}to{transform:rotate(-15deg)}}.eye-glow{animation:eye-pulse 2s infinite}@keyframes eye-pulse{0%,to{opacity:1;filter:brightness(1.2)}50%{opacity:.7;filter:brightness(1.8) blur(1px)}}.bot-hover .eye-glow{animation:scanner .2s infinite;fill:#f05}@keyframes scanner{0%{opacity:1}50%{opacity:.2}to{opacity:1}}.bot-hover .bot-svg{filter:drop-shadow(0 0 15px #ff0055)}@media (prefers-reduced-motion: reduce){.bot-cursor-wrapper,.bot-svg-wrapper,.leg,.arm{animation:none!important}}
