@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";.nav[data-astro-cid-dmqpwcec]{position:sticky;top:0;z-index:100;background:linear-gradient(180deg,var(--color-nav-bg-start),var(--color-nav-bg-end));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);height:var(--nav-height);box-shadow:var(--shadow-nav)}.nav__inner[data-astro-cid-dmqpwcec]{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-xl);height:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-xl)}.nav__logo[data-astro-cid-dmqpwcec]{font-family:var(--font-heading);font-size:1rem;font-weight:700;letter-spacing:.12em;color:var(--color-text-heading);text-decoration:none;display:flex;align-items:center;gap:1px;transition:color var(--transition-fast);white-space:nowrap;flex-shrink:0}.nav__logo-bracket[data-astro-cid-dmqpwcec]{color:var(--color-accent);font-size:1.1em}.nav__logo[data-astro-cid-dmqpwcec]:hover{color:var(--color-accent)}.nav__logo-text[data-astro-cid-dmqpwcec]{text-shadow:0 0 14px rgba(87,166,255,.12)}.nav__links[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:var(--space-xs);list-style:none}.nav__link[data-astro-cid-dmqpwcec]{font-family:var(--font-heading);font-size:.76rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);text-decoration:none;padding:.4em .75em;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast);position:relative}.nav__link[data-astro-cid-dmqpwcec]:hover{color:var(--color-text);background:linear-gradient(90deg,#57a6ff14,#22d3ee0f)}.nav__link[data-astro-cid-dmqpwcec]:focus-visible{color:var(--color-text);background:linear-gradient(90deg,var(--color-accent-dim),var(--color-accent2-dim))}.nav__link--active[data-astro-cid-dmqpwcec]{color:var(--color-accent)}.nav__link--active[data-astro-cid-dmqpwcec]:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:28px;height:2px;background:linear-gradient(90deg,var(--color-accent),var(--color-accent2))}.nav__toggle[data-astro-cid-dmqpwcec]{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:var(--space-sm);border-radius:var(--radius-sm)}.nav__toggle-bar[data-astro-cid-dmqpwcec]{display:block;width:22px;height:2px;background:var(--color-text-heading);border-radius:1px;transition:transform var(--transition-base),opacity var(--transition-fast)}.nav__mobile[data-astro-cid-dmqpwcec]{display:none;background:linear-gradient(180deg,var(--color-nav-mobile-bg-start),var(--color-nav-mobile-bg-end));border-top:1px solid var(--color-border);padding:var(--space-md) var(--space-xl)}.nav__mobile[data-astro-cid-dmqpwcec] ul[data-astro-cid-dmqpwcec]{list-style:none;display:flex;flex-direction:column;gap:var(--space-xs)}.nav__mobile-link[data-astro-cid-dmqpwcec]{display:block;font-family:var(--font-heading);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast);text-decoration:none}.nav__mobile-link[data-astro-cid-dmqpwcec]:hover,.nav__mobile-link--active[data-astro-cid-dmqpwcec]{color:var(--color-accent);background:linear-gradient(90deg,#57a6ff1f,#22d3ee14)}@media(max-width:768px){.nav[data-astro-cid-dmqpwcec]{height:auto;min-height:var(--nav-height)}.nav__inner[data-astro-cid-dmqpwcec]{height:var(--nav-height);padding-inline:var(--space-md);gap:var(--space-md)}.nav__logo[data-astro-cid-dmqpwcec]{font-size:.9rem;letter-spacing:.1em}.nav__links[data-astro-cid-dmqpwcec]{display:none}.nav__toggle[data-astro-cid-dmqpwcec]{display:flex}.nav__mobile[data-astro-cid-dmqpwcec].is-open{display:block}.nav__mobile[data-astro-cid-dmqpwcec]{padding:var(--space-sm) var(--space-md) var(--space-md)}.nav__mobile-link[data-astro-cid-dmqpwcec]{font-size:.8rem;padding:.7rem var(--space-md)}.nav__toggle[data-astro-cid-dmqpwcec][aria-expanded=true] .nav__toggle-bar[data-astro-cid-dmqpwcec]:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav__toggle[data-astro-cid-dmqpwcec][aria-expanded=true] .nav__toggle-bar[data-astro-cid-dmqpwcec]:nth-child(2){opacity:0}.nav__toggle[data-astro-cid-dmqpwcec][aria-expanded=true] .nav__toggle-bar[data-astro-cid-dmqpwcec]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}}.footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--color-border);background:linear-gradient(180deg,var(--color-footer-bg-start),var(--color-footer-bg-end));padding-block:var(--space-2xl) var(--space-xl);margin-top:var(--space-4xl)}.footer__inner[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:1fr auto auto;gap:var(--space-2xl);align-items:start;margin-bottom:var(--space-xl)}.footer__brand[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:var(--space-sm)}.footer__logo[data-astro-cid-sz7xmlte]{font-family:var(--font-heading);font-size:.9rem;font-weight:700;letter-spacing:.12em;color:var(--color-text-heading);text-shadow:0 0 14px rgba(87,166,255,.12)}.bracket[data-astro-cid-sz7xmlte]{color:var(--color-accent)}.footer__tagline[data-astro-cid-sz7xmlte]{font-size:.88rem;color:var(--color-text-muted);line-height:1.7;margin:0}.footer__links[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:var(--space-sm)}.footer__links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-family:var(--font-heading);font-size:.76rem;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted);text-decoration:none;transition:color var(--transition-fast)}.footer__links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-accent)}.footer__social[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:var(--space-md)}.footer__social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--color-text-muted);transition:color var(--transition-fast);display:flex;align-items:center}.footer__social[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--color-accent)}.footer__bottom[data-astro-cid-sz7xmlte]{border-top:1px solid var(--color-border);padding-top:var(--space-md);text-align:center}.footer__bottom-text[data-astro-cid-sz7xmlte]{font-size:.78rem;letter-spacing:.05em}@media(max-width:768px){.footer__inner[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:var(--space-xl)}.footer__links[data-astro-cid-sz7xmlte]{flex-direction:row;flex-wrap:wrap;gap:var(--space-sm) var(--space-lg)}.footer__social[data-astro-cid-sz7xmlte]{flex-direction:row;gap:var(--space-lg)}.footer__tagline[data-astro-cid-sz7xmlte]{font-size:.86rem;line-height:1.6}.footer__links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-size:.76rem;letter-spacing:.07em}.footer__bottom-text[data-astro-cid-sz7xmlte]{font-size:.7rem}}:root{--color-primary: #57a6ff;--color-secondary: #22d3ee;--color-bg: #040b19;--color-bg-secondary: #091327;--color-bg-card: #0c1830;--color-bg-card-hover: #12203b;--color-bg-gradient-top: #07101e;--color-bg-gradient-mid: #040b19;--color-bg-gradient-bottom: #020611;--color-border: rgba(87, 166, 255, .16);--color-border-strong: rgba(87, 166, 255, .34);--color-featured-border: rgba(124, 211, 137, .26);--color-accent: #57a6ff;--color-accent-dim: rgba(87, 166, 255, .14);--color-accent-glow: rgba(87, 166, 255, .28);--color-accent2: #22d3ee;--color-accent2-dim: rgba(34, 211, 238, .14);--color-accent2-glow: rgba(34, 211, 238, .26);--color-surface-sheen: rgba(255, 255, 255, .02);--color-surface-sheen-soft: rgba(255, 255, 255, .012);--color-overlay-grid: rgba(87, 166, 255, .03);--color-overlay-grid-soft: rgba(255, 255, 255, .012);--color-nav-bg-start: rgba(6, 14, 28, .96);--color-nav-bg-end: rgba(9, 19, 39, .92);--color-nav-mobile-bg-start: rgba(9, 19, 39, .98);--color-nav-mobile-bg-end: rgba(12, 24, 48, .96);--color-footer-bg-start: rgba(9, 19, 39, .96);--color-footer-bg-end: rgba(4, 11, 25, .98);--color-project-corner-accent: rgba(87, 166, 255, .22);--color-project-media-chip-bg: rgba(4, 11, 25, .52);--color-project-media-tag-bg: rgba(4, 11, 25, .42);--color-timeline-card-bg: rgba(9, 19, 39, .72);--color-timeline-track-bg: color-mix(in srgb, var(--color-bg-card), transparent 35%);--color-timeline-bar-text: rgba(244, 248, 255, .92);--color-now-marker-text: color-mix(in srgb, var(--color-success), white 10%);--color-link-hover: #f4f8ff;--color-focus-ring: #8dc0ff;--color-success: #4ade80;--color-warning: #fbbf24;--color-danger: #ef4444;--color-timeline-success: #4ade80;--color-timeline-success-dim: rgba(74, 222, 128, .08);--color-timeline-success-medium: rgba(74, 222, 128, .45);--color-timeline-success-bright: rgba(74, 222, 128, .75);--color-era-accent: rgba(124, 211, 137, .04);--color-era-accent-strong: rgba(124, 211, 137, .12);--color-text: #e6efff;--color-text-muted: #b2c2df;--color-text-dim: #88a0c5;--color-text-heading: #f4f8ff;--font-heading: "Sora", "Space Grotesk", sans-serif;--font-body: "Manrope", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--container-max: 1200px;--container-md: 900px;--container-sm: 680px;--container-page: 980px;--container-reading: 760px;--nav-height: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--glow-accent: 0 10px 30px rgba(87, 166, 255, .14);--glow-accent-strong: 0 18px 44px rgba(87, 166, 255, .18);--glow-accent2: 0 10px 28px rgba(34, 211, 238, .12);--shadow-card: 0 14px 34px rgba(1, 8, 22, .34);--shadow-card-hover: 0 24px 58px rgba(1, 8, 22, .46);--shadow-nav: 0 8px 24px rgba(0, 0, 0, .18);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--font-size-label: .75rem;--font-size-meta: .8125rem;--font-size-body: .9375rem;--font-size-body-sm: .875rem;--font-size-card-title: 1rem;--font-size-lead: 1.0625rem}@media(prefers-color-scheme:light){:root{--color-bg: #f5f8ff;--color-bg-secondary: #eaf0fb;--color-bg-card: #ffffff;--color-bg-card-hover: #f3f7ff;--color-bg-gradient-top: #f7faff;--color-bg-gradient-mid: #eef3ff;--color-bg-gradient-bottom: #e5edf9;--color-text: #12203a;--color-text-muted: #334867;--color-text-dim: #4a6288;--color-text-heading: #0f1f3b;--color-border: rgba(43, 98, 174, .2);--color-border-strong: rgba(43, 98, 174, .36);--color-surface-sheen: rgba(255, 255, 255, .65);--color-surface-sheen-soft: rgba(255, 255, 255, .42);--color-overlay-grid: rgba(43, 98, 174, .05);--color-overlay-grid-soft: rgba(43, 98, 174, .03);--color-nav-bg-start: rgba(245, 248, 255, .94);--color-nav-bg-end: rgba(234, 240, 251, .95);--color-nav-mobile-bg-start: rgba(245, 248, 255, .98);--color-nav-mobile-bg-end: rgba(234, 240, 251, .98);--color-footer-bg-start: rgba(234, 240, 251, .98);--color-footer-bg-end: rgba(224, 233, 246, .98);--color-project-corner-accent: rgba(87, 166, 255, .2);--color-project-media-chip-bg: rgba(255, 255, 255, .74);--color-project-media-tag-bg: rgba(255, 255, 255, .72);--color-timeline-card-bg: rgba(255, 255, 255, .8);--color-timeline-track-bg: color-mix(in srgb, var(--color-bg-secondary), transparent 8%);--color-timeline-bar-text: rgba(248, 251, 255, .98);--color-now-marker-text: color-mix(in srgb, var(--color-success), black 18%);--shadow-nav: 0 8px 22px rgba(19, 33, 55, .12)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%}body{background:radial-gradient(circle at top,rgba(87,166,255,.12),transparent 30%),radial-gradient(circle at 80% 12%,rgba(34,211,238,.08),transparent 24%),linear-gradient(180deg,var(--color-bg-gradient-top) 0%,var(--color-bg-gradient-mid) 48%,var(--color-bg-gradient-bottom) 100%);color:var(--color-text);font-family:var(--font-body);line-height:1.7;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative}body:before{content:"";position:fixed;inset:0;background:linear-gradient(135deg,rgba(87,166,255,.05),transparent 32%),radial-gradient(circle at 15% 20%,rgba(34,211,238,.06),transparent 14%),repeating-linear-gradient(90deg,transparent,transparent 0 42px,var(--color-overlay-grid) 42px 43px);pointer-events:none;z-index:0}body:after{content:"";position:fixed;inset:0;background:radial-gradient(circle at bottom right,rgba(34,211,238,.06),transparent 22%),repeating-linear-gradient(0deg,transparent,transparent 0 28px,var(--color-overlay-grid-soft) 28px 29px);mix-blend-mode:screen;opacity:.55;pointer-events:none;z-index:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text-heading);line-height:1.2;letter-spacing:.02em}h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:700}h2{font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700}h3{font-size:clamp(1.125rem,2vw,1.5rem);font-weight:500}h4{font-size:1.125rem;font-weight:500}p{margin-bottom:var(--space-md)}p:last-child{margin-bottom:0}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-link-hover)}code,pre{font-family:var(--font-mono);font-size:.875em}pre{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-lg);overflow-x:auto;box-shadow:var(--shadow-card)}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-xl)}.container--md{max-width:var(--container-md)}.container--sm{max-width:var(--container-sm)}.container--page{max-width:var(--container-page)}.container--reading{max-width:var(--container-reading)}.section{padding-block:var(--space-4xl)}.section--sm{padding-block:var(--space-3xl)}.section--alt{background:var(--color-bg-secondary);border-block:1px solid var(--color-border)}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-xl)}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-xl)}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);transition:border-color var(--transition-base),box-shadow var(--transition-base),background var(--transition-base)}.card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-card-hover),var(--glow-accent);background:var(--color-bg-card-hover)}.panel{background:linear-gradient(180deg,var(--color-surface-sheen-soft),transparent 25%),var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);position:relative;overflow:hidden}.panel:before{content:"";position:absolute;top:0;left:0;width:56px;height:56px;background:linear-gradient(135deg,rgba(87,166,255,.2),transparent 64%);clip-path:polygon(0 0,100% 0,0 100%)}.btn{display:inline-flex;align-items:center;gap:var(--space-sm);padding:.625rem 1.25rem;border-radius:var(--radius-md);font-family:var(--font-heading);font-size:.84rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all var(--transition-base);text-decoration:none;border:none;white-space:nowrap}.btn-primary{background:var(--color-accent);color:#06101f;box-shadow:0 8px 24px #57a6ff33}.btn-primary:hover{background:#7db8ff;color:#06101f;box-shadow:var(--glow-accent-strong);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--color-accent);border:1px solid var(--color-accent)}.btn-outline:hover{background:var(--color-accent-dim);box-shadow:var(--glow-accent);transform:translateY(-1px);color:var(--color-accent)}.btn-ghost{background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border)}.btn-ghost:hover{color:var(--color-text);border-color:var(--color-border-strong);background:var(--color-accent-dim)}.btn-sm{font-size:.7rem;padding:.4em .9em}.badge{display:inline-flex;align-items:center;padding:.2em .6em;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.04em;font-weight:500;text-transform:uppercase;border:1px solid}.badge-cyan{color:var(--color-accent);border-color:#57a6ff47;background:#57a6ff14}.badge-purple{color:var(--color-accent2);border-color:#22d3ee4d;background:#22d3ee14}.badge-green{color:var(--color-success);border-color:#10b9814d;background:#10b98114}.badge-yellow{color:var(--color-warning);border-color:#f59e0b4d;background:#f59e0b14}.badge-gray{color:var(--color-text-muted);border-color:#7a8fa64d;background:#7a8fa614}.divider{border:none;border-top:1px solid var(--color-border);margin-block:var(--space-xl)}.accent-line{display:block;width:72px;height:2px;background:linear-gradient(90deg,var(--color-accent),var(--color-accent2),transparent);margin-bottom:var(--space-lg)}.section-label{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm)}.prose p{color:var(--color-text-muted);line-height:1.9;max-width:70ch;margin-bottom:var(--space-lg)}.prose p:last-child{margin-bottom:0}.tag-cloud{display:flex;flex-wrap:wrap;gap:var(--space-xs)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:#57a6ff38;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#57a6ff61}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:3px;border-radius:2px}@media(max-width:768px){.container{padding-inline:var(--space-lg)}.section{padding-block:var(--space-3xl)}.panel,.card{padding:var(--space-lg)}.btn{font-size:.78rem;letter-spacing:.05em;padding:.65rem 1rem}.grid-2,.grid-3{grid-template-columns:1fr}}@media(max-width:480px){.container{padding-inline:var(--space-md)}.btn{width:100%;justify-content:center}.section-label{font-size:.7rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 8px #57a6ff38}50%{box-shadow:0 0 18px #57a6ff61}}.animate-fade-up{animation:fadeInUp .6s ease both}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.text-accent{color:var(--color-accent)}.text-muted{color:var(--color-text-muted)}.text-dim{color:var(--color-text-dim)}.text-mono{font-family:var(--font-mono)}.text-center{text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
