:root{--bg: #030305;--bg-radial-1: #07060d;--bg-radial-2: #030305;--bg-radial-3: #010102;--fg: #e7e7ea;--muted: #6b6b74;--accent: #5b3fd6;--accent-2: #0ea5b7;--line: rgba(255, 255, 255, .04);--vignette-mid: rgba(0, 0, 0, .65);--vignette-edge: rgba(0, 0, 0, .95);--aurora-opacity: .7;--noise-opacity: .05;--stars-opacity: .7;--chip-bg: rgba(255, 255, 255, .04);--mx: 0;--my: 0;--px: 50%;--py: 50%;--mono: ui-monospace, SFMono-Regular, "JetBrains Mono", Menlo, Consolas, monospace;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;color-scheme:dark}[data-theme=light]{--bg: #f6f4ef;--bg-radial-1: #fbfaf6;--bg-radial-2: #f0ede5;--bg-radial-3: #e8e4d8;--fg: #1a1a22;--muted: #6b6b74;--accent: #5b3fd6;--accent-2: #0e8a9b;--line: rgba(0, 0, 0, .06);--vignette-mid: rgba(0, 0, 0, .06);--vignette-edge: rgba(0, 0, 0, .16);--aurora-opacity: .35;--noise-opacity: 0;--stars-opacity: 0;--chip-bg: rgba(0, 0, 0, .04);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100%}body{background:transparent;min-height:100vh;display:grid;place-items:center;overflow-x:hidden;position:relative}.bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 50% 0%,var(--bg-radial-1) 0%,var(--bg-radial-2) 60%,var(--bg-radial-3) 100%)}.spotlight{position:absolute;inset:0;background:radial-gradient(600px circle at var(--px) var(--py),rgba(124,92,255,.1),transparent 60%);transition:background .15s ease-out}.aurora{position:absolute;border-radius:50%;filter:blur(90px);mix-blend-mode:screen;will-change:transform,opacity;opacity:var(--aurora-opacity)}.aurora-a{width:70vmax;height:70vmax;top:-25vmax;left:-20vmax;background:conic-gradient(from 90deg at 50% 50%,#5b3fd600,#5b3fd68c,#c026d359 180deg,#5b3fd600 360deg);animation:spin 38s linear infinite,breathe 11s ease-in-out infinite alternate;translate:calc(var(--mx) * 24px) calc(var(--my) * 24px);transition:translate .6s cubic-bezier(.2,.8,.2,1)}.aurora-b{width:65vmax;height:65vmax;bottom:-22vmax;right:-18vmax;background:conic-gradient(from 220deg at 50% 50%,#0ea5b700,#0ea5b78c 110deg,#22d3ee59 200deg,#0ea5b700 360deg);animation:spin-rev 46s linear infinite,breathe 14s ease-in-out infinite alternate-reverse;translate:calc(var(--mx) * -28px) calc(var(--my) * -28px);transition:translate .6s cubic-bezier(.2,.8,.2,1)}.aurora-c{width:50vmax;height:50vmax;top:30%;left:40%;transform:translate(-50%,-50%);background:conic-gradient(from 0deg at 50% 50%,#ec489900,#ec489938 80deg,#7c3aed2e 200deg,#ec489900 360deg);opacity:.85;animation:spin 60s linear infinite reverse,breathe 17s ease-in-out infinite alternate;translate:calc(var(--mx) * 16px) calc(var(--my) * 16px);transition:translate .6s cubic-bezier(.2,.8,.2,1)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin-rev{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes breathe{0%{opacity:.35}to{opacity:.7}}.stars{position:absolute;inset:-4%;background-image:radial-gradient(1px 1px at 20% 30%,rgba(255,255,255,.7),transparent 50%),radial-gradient(1px 1px at 70% 65%,rgba(255,255,255,.6),transparent 50%),radial-gradient(1.5px 1.5px at 40% 80%,rgba(255,255,255,.5),transparent 50%),radial-gradient(1px 1px at 85% 20%,rgba(255,255,255,.55),transparent 50%),radial-gradient(1px 1px at 15% 75%,rgba(255,255,255,.45),transparent 50%),radial-gradient(1.5px 1.5px at 60% 15%,rgba(255,255,255,.5),transparent 50%),radial-gradient(1px 1px at 90% 90%,rgba(255,255,255,.4),transparent 50%),radial-gradient(1px 1px at 33% 50%,rgba(255,255,255,.5),transparent 50%),radial-gradient(1px 1px at 78% 45%,rgba(255,255,255,.4),transparent 50%);background-size:100% 100%;animation:twinkle 6s ease-in-out infinite;opacity:var(--stars-opacity);translate:calc(var(--mx) * -10px) calc(var(--my) * -10px);transition:translate .5s cubic-bezier(.2,.8,.2,1)}@keyframes twinkle{0%,to{opacity:.45}50%{opacity:.85}}.grid{position:absolute;inset:-2%;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(ellipse at center,#000 25%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at center,#000 25%,transparent 70%);opacity:.6;translate:calc(var(--mx) * -6px) calc(var(--my) * -6px);transition:translate .4s cubic-bezier(.2,.8,.2,1)}.vignette{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 25%,var(--vignette-mid) 75%,var(--vignette-edge) 100%)}.noise{position:absolute;inset:0;opacity:var(--noise-opacity);mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}main{position:relative;z-index:1}main{width:min(640px,92vw);padding:48px 0;animation:rise .8s cubic-bezier(.2,.8,.2,1) both}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.prompt{font-family:var(--mono);color:#c9c8d1;font-size:.88rem;margin:0 0 18px;letter-spacing:.02em;background:#7c5cff14;border:1px solid rgba(124,92,255,.28);padding:6px 12px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease;animation:chip-pulse-purple 2.6s ease-in-out infinite}@keyframes chip-pulse-purple{0%,to{box-shadow:0 0 #7c5cff00}50%{box-shadow:0 0 0 6px #7c5cff1a}}.prompt:hover,.prompt:focus-visible{color:#fff;border-color:#7c5cffb3;background:#7c5cff2e;transform:translateY(-1px);box-shadow:0 6px 24px -10px #7c5cff99;outline:none;animation:none}.prompt .hint{font-size:.72rem;color:var(--accent-2);border:1px solid rgba(14,165,183,.4);border-radius:4px;padding:0 5px;line-height:1.4;background:#0ea5b714;transition:background .2s ease,color .2s ease}.prompt:hover .hint,.prompt:focus-visible .hint{background:#0ea5b72e;color:#fff}.caret{color:var(--accent-2);margin-right:4px;animation:blink 1.1s steps(2,start) infinite}@keyframes blink{to{opacity:.3}}.name{font-size:clamp(2.2rem,6vw,3.4rem);font-weight:700;letter-spacing:-.02em;margin:0 0 14px;line-height:1.05}.name-text{background:linear-gradient(120deg,#fff,#c9c8d1,#fff);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s linear infinite}@keyframes shine{0%{background-position:0% 50%}to{background-position:200% 50%}}.tagline{font-size:1.05rem;color:#c9c8d1;margin:0 0 10px;line-height:1.55}.now{font-family:var(--mono);font-size:.85rem;color:var(--muted);margin:0 0 36px;display:flex;align-items:center;gap:10px}.dot{width:8px;height:8px;border-radius:50%;background:#22d3ee;box-shadow:0 0 #22d3ee99;animation:pulse 2.2s ease-out infinite}@keyframes pulse{0%{box-shadow:0 0 #22d3ee8c}70%{box-shadow:0 0 0 12px #22d3ee00}to{box-shadow:0 0 #22d3ee00}}.links{list-style:none;display:flex;gap:12px;padding:0;margin:0 0 48px;flex-wrap:wrap}.links a{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid var(--line);border-radius:12px;color:var(--fg);background:#ffffff05;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:transform .2s ease,border-color .2s ease,color .2s ease,background .2s ease}.links a:hover,.links a:focus-visible{transform:translateY(-3px);border-color:#7c5cff99;color:#fff;background:#7c5cff1f;outline:none}.links svg{width:20px;height:20px}footer{font-family:var(--mono);font-size:.78rem;color:var(--muted);display:flex;align-items:center;gap:10px}footer a{color:#c9c8d1;text-decoration:none;border:1px solid rgba(124,92,255,.28);background:#7c5cff14;padding:4px 10px;border-radius:999px;font-family:var(--mono);font-size:.78rem;display:inline-flex;align-items:center;gap:8px;letter-spacing:.02em;transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease;animation:chip-pulse-purple 2.6s ease-in-out infinite 1.3s}@keyframes chip-pulse-cyan{0%,to{box-shadow:0 0 #0ea5b700}50%{box-shadow:0 0 0 5px #0ea5b71a}}footer a:hover{color:#fff;border-color:#7c5cffb3;background:#7c5cff2e;transform:translateY(-1px);box-shadow:0 6px 24px -10px #7c5cff99;animation:none}footer a .caret{color:var(--accent);font-weight:600}footer a .hint{font-size:.7rem;color:var(--accent-2);border:1px solid rgba(14,165,183,.4);border-radius:4px;padding:0 5px;line-height:1.4;background:#0ea5b714;transition:background .2s ease,color .2s ease}footer a:hover .hint{background:#0ea5b72e;color:#fff}footer a:after{content:none}.footer-link{font-family:var(--mono)}.sep{opacity:.5}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px}.modal[hidden]{display:none}.modal-backdrop{position:absolute;inset:0;background:#02020499;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .25s ease}.modal.is-open .modal-backdrop{opacity:1}.modal-card{position:relative;width:min(760px,100%);max-height:85vh;overflow:hidden;background:#0f0f16d9;border:1px solid rgba(255,255,255,.08);border-radius:12px;box-shadow:0 24px 60px #0000008c,0 0 0 1px #7c5cff14;font-family:var(--mono);transform:translateY(8px) scale(.98);opacity:0;transition:opacity .25s ease,transform .25s cubic-bezier(.2,.8,.2,1)}.modal.is-open .modal-card{opacity:1;transform:translateY(0) scale(1)}.modal-header{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06);background:#ffffff05}.dots{display:inline-flex;gap:6px}.dots i{width:11px;height:11px;border-radius:50%;background:#3a3a44;display:inline-block}.dots i:nth-child(1){background:#ff5f57}.dots i:nth-child(2){background:#febc2e}.dots i:nth-child(3){background:#28c840}.modal-title{flex:1;text-align:center;font-size:.78rem;color:var(--muted);letter-spacing:.02em}.modal-close{background:transparent;border:0;color:var(--muted);font-size:1.2rem;cursor:pointer;width:26px;height:26px;border-radius:6px;transition:color .2s ease,background .2s ease}.modal-close:hover{color:var(--fg);background:#ffffff0f}.modal-body{padding:22px 24px 26px;overflow-y:auto;max-height:calc(85vh - 44px);font-size:.9rem;color:#c9c8d1;line-height:1.65}.modal-body p{margin:0 0 4px}.modal-body .k{display:inline-block;width:70px;color:var(--accent-2)}.modal-body .section{margin:16px 0 8px;color:var(--muted);font-size:.8rem;letter-spacing:.04em}.timeline{list-style:none;padding:0;margin:0 0 4px;display:grid;gap:8px}.timeline li{display:grid;grid-template-columns:110px 200px 1fr;gap:16px;padding:8px 10px;border:1px solid rgba(255,255,255,.05);border-radius:8px;background:#ffffff04}.t-date{color:var(--muted);font-size:.78rem}.t-date a{color:var(--muted);text-decoration:none;border-bottom:1px dashed transparent;transition:color .2s ease,border-color .2s ease}.t-date a:hover{color:var(--accent-2);border-bottom-color:var(--accent-2)}.t-date .sep-dot{opacity:.5;margin:0 4px}.t-where{color:#fff;font-weight:600;font-size:.82rem;display:flex;flex-direction:column;gap:2px}.t-loc{font-style:normal;font-weight:400;font-size:.7rem;color:var(--muted);letter-spacing:.04em}.t-what{color:#a8a7b3;font-size:.8rem}.stack{color:#a8a7b3;font-size:.84rem}@media(max-width:540px){.timeline li{grid-template-columns:1fr;gap:2px}}@media(max-width:640px){main{width:100%;max-width:480px;padding:32px 22px 40px}.name{font-size:clamp(2rem,9vw,2.6rem)}.tagline{font-size:.98rem}.now{font-size:.78rem}.links{gap:10px}.links a{width:42px;height:42px;border-radius:10px}.links svg{width:18px;height:18px}.modal{padding:12px}.modal-card{width:100%;max-height:92vh;border-radius:14px}.modal-body{padding:16px 16px 20px;max-height:calc(92vh - 44px);font-size:.86rem}.modal-body .k{width:60px}.timeline li{padding:10px 12px;grid-template-columns:1fr;gap:4px}.t-where{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:8px}.t-loc{font-size:.72rem}.t-date{font-size:.74rem}.aurora{filter:blur(70px);opacity:.55}.grid{background-size:32px 32px}.spotlight{display:none}}@media(max-width:380px){.links a{width:40px;height:40px}.modal-body{font-size:.82rem}}@supports (padding: max(0px)){body{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}}.theme-toggle{position:fixed;top:18px;right:18px;z-index:30;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(124,92,255,.28);background:#7c5cff14;color:var(--fg);cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}.theme-toggle:hover,.theme-toggle:focus-visible{border-color:#7c5cffb3;background:#7c5cff2e;transform:translateY(-1px);box-shadow:0 6px 24px -10px #7c5cff99;outline:none}.theme-toggle svg{width:18px;height:18px;display:block}.theme-toggle .icon-sun{display:none}[data-theme=light] .theme-toggle .icon-sun{display:block}[data-theme=light] .theme-toggle .icon-moon{display:none}@media(max-width:640px){.theme-toggle{top:12px;right:12px;width:36px;height:36px}}[data-theme=light] .name-text{background:linear-gradient(120deg,#1a1a22,#5b3fd6,#1a1a22);-webkit-background-clip:text;background-clip:text;color:transparent}[data-theme=light] .tagline{color:#2d2d38}[data-theme=light] .now{color:#5a5a64}[data-theme=light] .prompt{color:#2d2d38}[data-theme=light] .prompt:hover,[data-theme=light] .prompt:focus-visible{color:#1a1a22}[data-theme=light] footer a{color:#2d2d38}[data-theme=light] footer a:hover{color:#1a1a22}[data-theme=light] .links a{color:#2d2d38;background:#00000008;border-color:#00000014}[data-theme=light] .links a:hover{color:#1a1a22;background:#7c5cff1f}[data-theme=light] .modal-backdrop{background:#dcdad299}[data-theme=light] .modal-card{background:#fffdf8f2;border-color:#00000014;box-shadow:0 24px 60px #0000002e,0 0 0 1px #7c5cff14}[data-theme=light] .modal-header{background:#00000006;border-bottom-color:#0000000f}[data-theme=light] .modal-body{color:#2d2d38}[data-theme=light] .timeline li{border-color:#00000014;background:#00000005}[data-theme=light] .t-where{color:#1a1a22}[data-theme=light] .t-what,[data-theme=light] .stack{color:#4a4a55}[data-theme=light] .modal-close:hover{color:#1a1a22;background:#0000000f}
