html,body{scrollbar-width:thin;scrollbar-color:var(--zinc-700)transparent;-ms-overflow-style:auto}html{scroll-behavior:smooth;scrollbar-gutter:stable}html::-webkit-scrollbar{width:8px;height:8px}body::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar{width:8px;height:8px}html::-webkit-scrollbar-thumb{background:var(--zinc-700);border-radius:999px}body::-webkit-scrollbar-thumb{background:var(--zinc-700);border-radius:999px}::-webkit-scrollbar-thumb{background:var(--zinc-700);border-radius:999px}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--zinc-50:#fafafa;--zinc-950:#09090b;--zinc-900:#18181b;--zinc-800:#27272a;--zinc-700:#3f3f46;--zinc-600:#52525b;--zinc-500:#71717a;--zinc-400:#a1a1aa;--zinc-300:#d4d4d8;--zinc-200:#e4e4e7;--zinc-100:#f4f4f5;--font-jetbrains:"JetBrains Mono",monospace;--font-geist:"Geist",sans-serif;--font-doto:"Doto",sans-serif;--bg-secondary:var(--zinc-900);--border:var(--zinc-800);--text-muted:var(--zinc-500);--surface-low:#09090b47;--surface-card:#09090b66;--surface-card-hover:#18181b6b;--surface-panel:#18181b66;--surface-panel-strong:#18181bc7;--surface-hover:#27272a4d;--terminal-bg:#0d0d0d;--soft-border:#ffffff14;--image-border:#ffffff0d;--grid-line:#ffffff0a;--scanline-a:#12101000;--scanline-b:#00000040;--scanline-r:#ff00000f;--scanline-g:#00ff0005;--scanline-bc:#0000ff0f;--pattern-line:#52525b4d;--shadow-soft:#00000059;--fallback-gradient-start:#09090bf2;--fallback-gradient-end:#18181bb8;--theme-toggle-bg:#09090bb8;--theme-toggle-hover:#18181beb;--theme-wave-light:#f5f1e8;--theme-wave-dark:#18181b}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--zinc-50:#050505;--zinc-950:#fffdf8;--zinc-900:#f5f1e8;--zinc-800:#ddd5c7;--zinc-700:#c5b9a6;--zinc-600:#9b8f7c;--zinc-500:#6f675b;--zinc-400:#4c463d;--zinc-300:#34312c;--zinc-200:#24221f;--zinc-100:#151412;--bg-secondary:#f1eadf;--border:#d8ccba;--text-muted:#6f675b;--surface-low:#fffdf87a;--surface-card:#fffdf89e;--surface-card-hover:#fffdf8e6;--surface-panel:#fffdf88f;--surface-panel-strong:#fffdf8e0;--surface-hover:#ded5c78c;--terminal-bg:#fffaf1;--soft-border:#1514121a;--image-border:#15141214;--grid-line:#1514120f;--scanline-a:#fff0;--scanline-b:#5d503d14;--scanline-r:#a3651908;--scanline-g:#15141205;--scanline-bc:#35415a08;--pattern-line:#6f675b2e;--shadow-soft:#52432c21;--fallback-gradient-start:#fffdf8fa;--fallback-gradient-end:#e8decfc7;--theme-toggle-bg:#fffdf8d1;--theme-toggle-hover:#fffdf8fa;--theme-wave-light:#f5f1e8;--theme-wave-dark:#18181b}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;color:var(--zinc-100);background-color:var(--zinc-900);font-family:var(--font-geist);overscroll-behavior-y:contain;text-rendering:optimizeLegibility;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-jetbrains);letter-spacing:-.02em}a{color:inherit;text-decoration:none}button{font-family:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=link]:focus-visible{outline:2px solid var(--zinc-300);outline-offset:3px}::selection{background-color:var(--zinc-200);color:var(--zinc-900)}.scanlines{pointer-events:none;z-index:40;opacity:.03;background:linear-gradient(var(--scanline-a)50%,var(--scanline-b)50%),linear-gradient(90deg,var(--scanline-r),var(--scanline-g),var(--scanline-bc));background-size:100% 2px,3px 100%;position:fixed;inset:0}.side-pattern{background-color:var(--zinc-900);border-style:dashed;border-color:var(--zinc-800);z-index:0;width:32px;height:100%;display:none;position:fixed;top:0;bottom:0;overflow:hidden}.side-pattern.left{border-right-width:1px;left:0}.side-pattern.right{border-left-width:1px;right:0}.side-pattern-inner{pointer-events:none;opacity:.5;background-image:repeating-linear-gradient(315deg,var(--pattern-line)0px,var(--pattern-line)1px,transparent 1px,transparent 10px);position:absolute;inset:0}@media (min-width:768px){.side-pattern{display:flex}}.main-wrapper{z-index:10;justify-content:center;align-items:flex-start;min-height:100vh;padding:32px 16px 96px;display:flex;position:relative}.skip-link{z-index:10000;border:1px dashed var(--zinc-700);background:var(--surface-panel-strong);color:var(--zinc-100);font-family:var(--font-jetbrains);letter-spacing:.08em;text-transform:uppercase;border-radius:8px;padding:10px 12px;font-size:.72rem;transition:transform .2s;position:fixed;top:18px;left:18px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.theme-toggle-button{z-index:60;border:1px dashed var(--zinc-700);background:var(--theme-toggle-bg);color:var(--zinc-300);font-family:var(--font-jetbrains);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 10px 30px var(--shadow-soft);border-radius:999px;align-items:center;gap:8px;padding:9px 12px;font-size:.68rem;transition:color .2s,border-color .2s,background .2s,transform .2s;display:inline-flex;position:fixed;top:18px;right:18px}.theme-toggle-button:hover{color:var(--zinc-100);border-color:var(--zinc-500);background:var(--theme-toggle-hover);transform:translateY(-1px)}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:9998}.theme-wave{left:var(--wave-x);top:var(--wave-y);width:var(--wave-size);height:var(--wave-size);pointer-events:none;z-index:9998;border-radius:9999px;animation:.78s cubic-bezier(.16,1,.3,1) forwards theme-wave-spread;position:fixed;transform:translate(-50%,-50%)scale(0)}.theme-wave-light{background:var(--theme-wave-light)}.theme-wave-dark{background:var(--theme-wave-dark)}@keyframes theme-wave-spread{0%{opacity:1;transform:translate(-50%,-50%)scale(0)}72%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}@media (max-width:639px){.theme-toggle-button{padding:8px 10px;font-size:.6rem;top:12px;right:12px}}@media (min-width:1024px){.main-wrapper{padding:32px}}.main-content{width:100%;max-width:672px}@media (min-width:900px){.main-content.main-content-wide{max-width:980px}}.content-border{border-left:1px dashed var(--zinc-800);border-right:1px dashed var(--zinc-800);min-height:85vh;padding:48px 16px;position:relative}.page-loader{min-height:40vh;color:var(--zinc-500);font-family:var(--font-jetbrains);letter-spacing:.08em;text-transform:uppercase;justify-content:center;align-items:center;font-size:.72rem;display:flex}.page-loader span{border:1px dashed var(--zinc-800);background:var(--surface-low);border-radius:8px;padding:10px 12px}.github-contributions-placeholder{min-height:248px}@media (max-width:639px){.github-contributions-placeholder{min-height:204px}}@media (min-width:640px){.content-border{padding:48px 40px}}@media (max-width:639px){.main-wrapper{padding:16px 10px 84px}.content-border{min-height:auto;padding:30px 14px}.section-header{letter-spacing:.08em;margin-bottom:22px;padding-bottom:12px;font-size:.68rem}}.dot-matrix{text-transform:uppercase;letter-spacing:-.05em;font-family:Doto,sans-serif;font-size:4rem;font-weight:900;line-height:1}@media (min-width:640px){.dot-matrix{font-size:5rem}}.section-header{font-family:var(--font-jetbrains);color:var(--zinc-500);text-transform:uppercase;letter-spacing:.1em;border-bottom:1px dashed var(--zinc-800);justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;font-size:.75rem;font-weight:500;display:flex}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.animate-blink{animation:1.06s infinite blink}.footer-text{text-align:center;width:100%;font-size:10px;font-family:var(--font-jetbrains);color:var(--zinc-700);padding:24px 0}.scroll-hidden{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(20px)}.scroll-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.sidebar{z-index:50;border:1px dashed var(--zinc-800);background:var(--theme-toggle-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 12px 28px var(--shadow-soft);border-radius:16px;flex-direction:column;align-items:center;gap:24px;padding:8px;display:none;position:fixed;top:50%;left:16px;transform:translateY(-50%)}@media (min-width:1024px){.sidebar{display:flex;left:36px}}.sidebar-logo{background:var(--surface-panel-strong);border:1px solid var(--soft-border);border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;transition:border-color .3s;display:flex}.sidebar-logo:hover{border-color:var(--zinc-500)}.sidebar-logo svg{width:20px;height:20px;color:var(--zinc-100);transition:color .3s}.sidebar-logo:hover svg{color:#60a5fa}.sidebar-nav{flex-direction:column;gap:16px;display:flex}.sidebar-nav-item{width:40px;height:40px;color:var(--zinc-500);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:20px;transition:all .3s;display:flex;position:relative}.sidebar-nav-item:hover{color:var(--zinc-300);background:var(--surface-hover)}.sidebar-nav-item.active{color:var(--zinc-100);background:var(--zinc-800);box-shadow:inset 0 1px #ffffff1a}.sidebar-nav-item .corner{border-color:#0000;width:6px;height:6px;transition:border-color .3s;position:absolute}.sidebar-nav-item .corner.tl{border-top:1px solid;border-left:1px solid;top:0;left:0}.sidebar-nav-item .corner.tr{border-top:1px solid;border-right:1px solid;top:0;right:0}.sidebar-nav-item .corner.bl{border-bottom:1px solid;border-left:1px solid;bottom:0;left:0}.sidebar-nav-item .corner.br{border-bottom:1px solid;border-right:1px solid;bottom:0;right:0}.sidebar-nav-item:hover .corner{border-color:var(--zinc-700)}.sidebar-nav-item.active .corner{border-color:var(--zinc-500)}.mobile-nav{z-index:50;background:var(--theme-toggle-hover);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--soft-border);padding-bottom:env(safe-area-inset-bottom,0);display:flex;position:fixed;bottom:0;left:0;right:0}@media (min-width:1024px){.mobile-nav{display:none}}.mobile-nav-inner{justify-content:space-around;align-items:center;width:100%;height:64px;padding:0 4px;display:flex}.mobile-nav-item{color:var(--zinc-500);background:0 0;border:none;border-radius:8px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;min-width:0;padding:4px 2px;font-size:20px;transition:all .2s cubic-bezier(.25,.46,.45,.94);display:flex;transform:scale(1)}.mobile-nav-item:active{transition:transform 50ms ease-out;transform:scale(.85)}.mobile-nav-item.active{color:var(--zinc-100)}.mobile-nav-item .icon-wrap{border-radius:8px;padding:6px;transition:background-color .2s}.mobile-nav-item.active .icon-wrap{background:var(--zinc-800)}.mobile-nav-item .nav-label{font-size:8px;font-family:var(--font-jetbrains);letter-spacing:-.02em;white-space:nowrap}.mobile-nav-item.active .nav-label{color:var(--zinc-300)}@media (max-width:639px){.mobile-nav-inner{height:58px;padding:0 2px}.mobile-nav-item{gap:1px;padding:3px 1px;font-size:18px}.mobile-nav-item .icon-wrap{padding:5px}.mobile-nav-item .nav-label{font-size:7px}}.custom-cursor{z-index:9999;pointer-events:none;opacity:0;mix-blend-mode:difference;contain:layout style paint;will-change:transform;background-color:#fff;border-radius:50%;width:16px;height:16px;transition:width .18s cubic-bezier(.16,1,.3,1),height .18s cubic-bezier(.16,1,.3,1),opacity .16s ease-out;position:fixed;top:0;left:0;transform:translate(-120px,-120px)}.custom-cursor[data-visible=true]{opacity:1}.custom-cursor[data-hover=true]{width:32px;height:32px}.boot-screen{background-color:var(--zinc-950);z-index:9999;box-sizing:border-box;width:100vw;height:100vh;padding:24px;transition:opacity .8s ease-out;position:fixed;top:0;left:0;overflow:hidden}.boot-screen.fade-out{opacity:0;pointer-events:none}.boot-content{font-family:var(--font-jetbrains),monospace;color:var(--zinc-300);max-width:800px;margin:0 auto;font-size:.9rem;line-height:1.6}.boot-line{white-space:pre-wrap;word-wrap:break-word;margin:4px 0}.boot-status{color:#34d399;font-weight:700}.boot-status.warn{color:#fbbf24}.boot-cursor{background-color:var(--zinc-300);vertical-align:middle;width:10px;height:1.2em;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}.matrix-canvas{z-index:0;pointer-events:none;opacity:.15;contain:strict;width:100vw;height:100vh;position:fixed;top:0;left:0;transform:translateZ(0)}:root[data-theme=light] .matrix-canvas{opacity:.08;filter:contrast(.72)sepia(.14);mix-blend-mode:multiply}.ai-summary-dock{z-index:58;border:1px dashed var(--zinc-700);background:linear-gradient(135deg,#f4f4f514,transparent 42%),var(--theme-toggle-bg);max-width:calc(100vw - 36px);color:var(--zinc-300);box-shadow:0 14px 34px var(--shadow-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:999px;align-items:center;gap:12px;padding:10px 12px;display:inline-flex;position:fixed;bottom:18px;right:18px}.ai-summary-label{white-space:nowrap;font-family:var(--font-jetbrains);letter-spacing:.06em;color:var(--zinc-300);font-size:.68rem}.ai-summary-actions{align-items:center;gap:6px;display:inline-flex}.ai-summary-button{width:30px;height:30px;color:var(--zinc-400);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;transition:color .18s,border-color .18s,background-color .18s,transform .18s;display:inline-flex}.ai-summary-button:hover{color:var(--zinc-100);border-color:var(--soft-border);background:var(--surface-hover);transform:translateY(-1px)}.ai-summary-button:focus-visible{outline:2px solid var(--zinc-300);outline-offset:3px}.ai-summary-button-chatgpt:hover{color:#f4f4f5}.ai-summary-button-perplexity:hover{color:#7dd3fc}.ai-summary-button-claude:hover{color:#f0c7a7}.ai-summary-button-gemini:hover{color:#a5b4fc}:root[data-theme=light] .ai-summary-dock{background:linear-gradient(135deg,#1514120f,transparent 46%),var(--theme-toggle-bg);border-color:var(--zinc-700)}:root[data-theme=light] .ai-summary-button-chatgpt:hover{color:#151412}:root[data-theme=light] .ai-summary-button-perplexity:hover{color:#047c89}:root[data-theme=light] .ai-summary-button-claude:hover{color:#9a3412}:root[data-theme=light] .ai-summary-button-gemini:hover{color:#4f46e5}@media (max-width:639px){.ai-summary-dock{gap:8px;padding:8px 9px;bottom:76px;right:10px}.ai-summary-label{font-size:.58rem}.ai-summary-actions{gap:3px}.ai-summary-button{width:28px;height:28px}}@media (max-width:390px){.ai-summary-dock{justify-content:space-between;left:10px}}@media (prefers-reduced-motion:reduce){.ai-summary-button{transition:none}}
