:root{--color-bg: #0b1020;--color-surface: #0f172a;--color-elevated: #111827;--color-border: rgba(255,255,255,.08);--color-text: #e5e7eb;--color-text-muted: #9ca3af;--color-primary: #60a5fa;--color-primary-strong: #3b82f6;--color-accent: #22d3ee;--color-accent-strong: #06b6d4;--color-success: #34d399;--color-warning: #f59e0b;--color-danger: #f43f5e;--font-sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Inter, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--fs-hero: clamp(2rem, 3.5vw + 1rem, 3rem);--fs-h1: clamp(1.75rem, 2.5vw + 1rem, 2.5rem);--fs-h2: clamp(1.5rem, 1.5vw + 1rem, 2rem);--fs-h3: 1.25rem;--fs-body: 1rem;--fs-small: .9rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--shadow-sm: 0 4px 10px rgba(0,0,0,.25);--shadow-md: 0 8px 24px rgba(0,0,0,.3);--shadow-lg: 0 16px 40px rgba(0,0,0,.35);--glass: backdrop-filter: blur(10px);--transition-fast: .15s ease;--transition: .25s cubic-bezier(.25, .8, .25, 1)}@media (prefers-color-scheme: light){:root{--color-bg: #f7fafc;--color-surface: #ffffff;--color-elevated: #f9fafb;--color-border: rgba(0,0,0,.08);--color-text: #0f172a;--color-text-muted: #475569}}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);color:var(--color-text);background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);background-attachment:fixed;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}img,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{line-height:1.25;margin:0 0 var(--space-4)}h1{font-size:var(--fs-h1);font-weight:700}h2{font-size:var(--fs-h2);font-weight:700}h3{font-size:var(--fs-h3);font-weight:600}p{margin:0 0 var(--space-4);font-size:var(--fs-body)}small,.text-muted{color:var(--color-text-muted);font-size:var(--fs-small)}.mono{font-family:var(--font-mono)}.container{max-width:1200px;margin-inline:auto;padding-inline:var(--space-4);margin-top:0!important}.section{padding:var(--space-12) 0}.section-header{margin-bottom:var(--space-8)}.section-header .eyebrow{display:inline-block;font-size:var(--fs-small);color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--space-2)}.surface{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.surface-elevated{background:linear-gradient(180deg,#ffffff08,#fff0 60%) var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.button,.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:.6rem 1rem;border-radius:var(--radius-md);border:1px solid transparent;background:var(--color-primary-strong);color:#fff;text-decoration:none;transition:transform var(--transition),box-shadow var(--transition),filter var(--transition)}.button:hover,.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px #3b82f659}.button:active,.btn:active{transform:translateY(0);filter:brightness(.95)}.link{color:var(--color-primary);text-decoration:none}.link:hover{color:var(--color-primary-strong);text-decoration:underline}.grid{display:grid;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width: 900px){.grid-2,.grid-3{grid-template-columns:1fr}}.flex{display:flex}.center{align-items:center;justify-content:center}.stack-sm>*+*{margin-top:var(--space-3)}.stack>*+*{margin-top:var(--space-4)}.stack-lg>*+*{margin-top:var(--space-6)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.border{border:1px solid var(--color-border)}.mono-quiet{font-family:var(--font-mono);color:var(--color-text-muted)}:where(a,button,[role=button]){transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}html{scroll-padding-top:80px;scroll-behavior:smooth}section{scroll-margin-top:80px}#home,#about,#projects,#contact,#skills{scroll-margin-top:80px}@media (max-width: 768px){html{scroll-padding-top:70px}section{scroll-margin-top:70px}#home,#about,#projects,#contact,#skills{scroll-margin-top:70px}}.main-content{padding-top:80px;min-height:calc(100vh - 80px)}@media (max-width: 768px){.main-content{padding-top:70px;min-height:calc(100vh - 70px)}}footer{color:var(--color-text-muted);border-top:1px solid var(--color-border);padding:var(--space-8) 0}.app-container{background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);background-attachment:fixed;min-height:100vh}router-outlet+*{display:block;min-height:calc(100vh - 80px)}@media (max-width: 768px){router-outlet+*{min-height:calc(100vh - 70px)}}
