@font-face{font-family:System;src:local(San Francisco),local(Segoe UI)}:root{--orange:#ff4d1c;--black:#14120f;--cream:#fcfaf6;--gray:#6b6b68;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--black);height:100%;margin:0;padding:0}html.no-scroll,body.no-scroll{overscroll-behavior:none;overflow:hidden}body{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.hero{background:var(--black);width:100vw;height:100dvh;color:var(--cream);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow:hidden}.glow{background:radial-gradient(60% 55% at 85% 90%, #ffe0b28c 0%, #ffe0b200 60%), radial-gradient(70% 65% at 78% 100%, var(--orange) 0%, #ff4d1c00 65%);filter:blur(10px);opacity:.9;pointer-events:none;position:absolute;inset:-20%}.content{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:20px;max-width:90vw;display:flex;position:relative}.brand{align-items:center;gap:12px;display:flex}.mark{flex-shrink:0;width:clamp(32px,6vw,44px);height:clamp(32px,6vw,44px)}.name{letter-spacing:-.01em;font-size:clamp(1.1rem,3vw,1.6rem);font-weight:700}.role{letter-spacing:-.02em;color:var(--cream);max-width:18ch;margin:0;font-size:clamp(1.75rem,6vw,3.25rem);font-weight:800;line-height:1.1}.status{letter-spacing:.04em;color:var(--gray);margin:0;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:clamp(.75rem,2.2vw,.85rem);font-weight:500}.status .prompt{color:var(--orange)}.status .cursor{background:var(--gray);width:.55em;margin-left:1px;animation:1.1s step-end infinite blink;display:inline-block}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.projects{flex-flow:wrap;justify-content:center;gap:14px;margin-top:8px;display:flex}.project{--shadow-ambient:0 1px 2px #0006, 0 4px 10px #00000059, 0 14px 28px #0000004d;--shadow-hover:0 2px 4px #00000073, 0 8px 16px #0006, 0 22px 40px #00000059;box-shadow:var(--shadow-ambient), inset 0 1px 0 #ffffff14;color:var(--cream);-webkit-tap-highlight-color:transparent;background:linear-gradient(#ffffff12,#ffffff08);border:1px solid #ffffff1a;border-radius:14px;align-items:center;gap:10px;padding:10px 18px 10px 12px;text-decoration:none;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s,border-color .18s,background .18s;display:inline-flex;position:relative}.project:hover{box-shadow:var(--shadow-hover), inset 0 1px 0 #ffffff1a;background:linear-gradient(#ffffff1a,#ffffff0a);border-color:#ffffff2e;transform:translateY(-2px)}.project:active{box-shadow:var(--shadow-ambient), inset 0 1px 0 #ffffff14;transform:translateY(0)}.project-icon{flex-shrink:0;width:28px;height:28px;box-shadow:0 1px 2px #00000080}.project-name{letter-spacing:-.01em;white-space:nowrap;font-size:.95rem;font-weight:600}.project-arrow{color:var(--gray);transition:color .18s,transform .18s}.project:hover .project-arrow{color:var(--cream);transform:translate(1px,-1px)}.footer{z-index:1;position:absolute;bottom:clamp(16px,4vh,32px)}.footer a{color:var(--gray);font-size:clamp(.75rem,2.2vw,.85rem);text-decoration:none;transition:color .2s}.footer a:hover{color:var(--cream)}.footer-sep{color:#ffffff2e;margin:0 8px;font-size:clamp(.75rem,2.2vw,.85rem)}@media (prefers-reduced-motion:reduce){.cursor{animation:none}}.page{background:var(--black);min-height:100dvh;color:var(--cream);flex-direction:column;align-items:center;padding:clamp(24px,6vw,48px) 20px 64px;display:flex;position:relative;overflow:hidden}.page-glow{background:radial-gradient(60% 55% at 85% 90%, #ffe0b28c 0%, #ffe0b200 60%), radial-gradient(70% 65% at 78% 100%, var(--orange) 0%, #ff4d1c00 65%);filter:blur(10px);opacity:.9;pointer-events:none;z-index:0;position:fixed;inset:-20%}.page-header{z-index:1;justify-content:space-between;align-items:center;width:100%;max-width:640px;margin-bottom:clamp(32px,8vh,64px);display:flex;position:relative}.page-brand{color:var(--cream);align-items:center;gap:10px;text-decoration:none;display:flex}.page-brand img{width:28px;height:28px}.page-brand span{letter-spacing:-.01em;font-size:1rem;font-weight:700}.page-back{color:var(--gray);font-size:.85rem;text-decoration:none;transition:color .18s}.page-back:hover{color:var(--cream)}.page-content{z-index:1;width:100%;max-width:640px;position:relative}.page-content h1{letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(1.75rem,5vw,2.5rem);font-weight:800}.page-content .updated{color:var(--gray);margin:0 0 40px;font-size:.85rem}.page-content h2{letter-spacing:-.01em;margin:36px 0 12px;font-size:1.1rem;font-weight:700}.page-content p,.page-content li{color:#fcfaf6bf;font-size:.95rem;line-height:1.7}.page-content ul{margin:0 0 16px;padding-left:20px}.page-content a{color:var(--orange);text-decoration:none}.page-content a:hover{text-decoration:underline}.not-found{z-index:1;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex;position:relative}.not-found .code{color:var(--orange);letter-spacing:.04em;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:clamp(.85rem,2.5vw,1rem)}.not-found h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.75rem,6vw,2.75rem);font-weight:800}.not-found p{color:var(--gray);max-width:40ch;font-size:clamp(.9rem,2.5vw,1rem)}.not-found .home-link{color:var(--cream);background:linear-gradient(#ffffff12,#ffffff08);border:1px solid #ffffff1a;border-radius:14px;margin-top:8px;padding:10px 20px;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s;box-shadow:0 1px 2px #0006,0 4px 10px #00000059,0 14px 28px #0000004d,inset 0 1px #ffffff14}.not-found .home-link:hover{transform:translateY(-2px);box-shadow:0 2px 4px #00000073,0 8px 16px #0006,0 22px 40px #00000059,inset 0 1px #ffffff1a}
