@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_2fe1ab3d-module__-T-KAq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_2fe1ab3d-module__-T-KAq__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--bg-primary:#191919;--bg-secondary:#202020;--bg-hover:#2c2c2c;--text-primary:#d4d4d4;--text-secondary:#9b9b9b;--border-color:#2f2f2f;--sidebar-width:240px;--font-main:var(--font-inter), "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--ease-out:cubic-bezier(.25, .46, .45, .94)}::selection{color:#fff;background-color:#a259ff59}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;height:100vh;font-size:14px;line-height:1.5;overflow:hidden}button{font-family:inherit}:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #a259ff99}.app-container{height:100%;display:flex}.sidebar{width:var(--sidebar-width);background-color:var(--bg-secondary);border-right:1px solid var(--border-color);flex-direction:column;padding:8px 0;transition:width .2s;display:flex}.sidebar-header{cursor:pointer;height:45px;transition:background-color .15s var(--ease-out);border-radius:6px;justify-content:space-between;align-items:center;margin:0 6px 8px;padding:0 8px;display:flex}.sidebar-header:hover{background-color:var(--bg-hover)}.user-profile{flex:1;align-items:center;gap:8px;display:flex;overflow:hidden}.user-avatar-sm{color:#fff;background-color:#a259ff;border-radius:3px;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:600;display:flex}.username{white-space:nowrap;text-overflow:ellipsis;color:var(--text-primary);font-weight:500;overflow:hidden}.sidebar-actions{opacity:0;transition:opacity .15s var(--ease-out);gap:4px;display:flex}.sidebar-header:hover .sidebar-actions{opacity:1}.menu-item{cursor:pointer;color:var(--text-secondary);min-height:28px;transition:background-color .15s var(--ease-out), color .15s var(--ease-out);border-radius:6px;align-items:center;gap:10px;margin:1px 6px;padding:4px 8px;display:flex}.menu-item:hover{background-color:var(--bg-hover);color:var(--text-primary)}.menu-item:active{background-color:#333}.menu-item.active{background-color:var(--bg-hover);color:var(--text-primary)}.sidebar-section{margin-top:16px}.section-title{letter-spacing:.02em;color:var(--text-secondary);margin-bottom:4px;padding:0 14px;font-size:11px;font-weight:600}.icon{flex-shrink:0;width:16px;height:16px}.main-content{background-color:var(--bg-primary);flex-direction:column;flex:1;display:flex;position:relative}.top-bar{z-index:10;justify-content:space-between;align-items:center;height:45px;padding:0 12px;display:flex;position:absolute;top:0;left:0;right:0}.top-bar:hover{background-color:var(--bg-primary)}.breadcrumbs{color:var(--text-primary);cursor:pointer;transition:background-color .15s var(--ease-out);border-radius:6px;align-items:center;gap:6px;padding:4px 8px;font-size:14px;display:flex}.breadcrumbs:hover{background-color:var(--bg-hover)}.top-actions{color:var(--text-primary);align-items:center;gap:12px;display:flex}.action-text{cursor:pointer;font-size:14px}.share-button:hover{background-color:var(--bg-hover)!important}.page-scroller{overscroll-behavior-y:contain;flex:1;overflow-y:auto}.page-content{animation:pageEnter .45s var(--ease-out) both}@keyframes pageEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.cover-image{-ms-overflow-style:none;scrollbar-width:none;background-color:#0d1117;width:100%;height:clamp(235px,30vh,380px);margin-top:45px;padding-bottom:32px;position:relative;overflow:hidden}.cover-calendar-scroll{z-index:1;-ms-overflow-style:none;scrollbar-width:none;-webkit-overflow-scrolling:touch;width:100%;position:relative;overflow-x:auto}.cover-calendar-scroll::-webkit-scrollbar{display:none}.cover-image::-webkit-scrollbar{display:none}.page-content{max-width:900px;margin:-48px auto 0;padding:0 96px;position:relative}.page-icon-large{z-index:2;border-radius:3px;width:124px;height:124px;margin-bottom:4px;position:relative;box-shadow:0 2px 10px #0003}.page-icon-large img{object-fit:cover;background-color:#fff;border-radius:3px;width:100%;height:100%}.page-title{color:var(--text-primary);margin-bottom:8px;font-size:40px;font-weight:700;line-height:1.2}.block-group{margin-bottom:32px}.block-heading{color:var(--text-primary);margin-top:24px;margin-bottom:4px;font-size:22px;font-weight:600}.block-text{color:var(--text-primary);margin-bottom:6px;font-size:16px;line-height:1.5}.block-list{color:var(--text-primary);padding-left:24px;font-size:16px;line-height:1.6;list-style-type:disc}.block-list li{margin-bottom:6px}.experience-list>li{margin-bottom:16px}.experience-list ul{margin-top:6px;padding-left:22px;font-size:15px;line-height:1.55;list-style-type:circle}.experience-list ul li{margin-bottom:4px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff24 padding-box padding-box;border:2px solid #0000;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff47 padding-box padding-box;border:2px solid #0000}*{scrollbar-width:thin;scrollbar-color:#ffffff24 transparent}@media (max-width:1024px){.page-content{padding:0 48px}}.mobile-menu-toggle{background-color:var(--bg-secondary);border:1px solid var(--border-color);width:56px;height:56px;color:var(--text-primary);cursor:pointer;z-index:1000;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:none;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 12px #0000004d}.mobile-menu-toggle:active{transform:scale(.95)}@media (max-width:768px){.mobile-menu-toggle{display:flex}.sidebar{z-index:999;width:280px;height:100vh;transition:transform .3s var(--ease-out);position:fixed;top:0;left:0;transform:translate(-105%);box-shadow:2px 0 16px #0006}.sidebar.mobile-open{transform:translate(0)}.mobile-overlay{z-index:998;opacity:0;visibility:hidden;transition:opacity .3s var(--ease-out), visibility .3s;background-color:#00000080;position:fixed;inset:0}.mobile-overlay.active{opacity:1;visibility:visible}.mobile-close-btn{display:block!important}.sidebar-header{justify-content:space-between}.main-content{width:100%}.page-content{margin-top:-32px;padding:0 16px}.page-title{font-size:28px}.page-icon-large{width:80px;height:80px}.block-heading{font-size:18px}.block-text{font-size:15px}.top-bar{padding:0 8px}.breadcrumbs{font-size:13px}.cover-image{height:clamp(215px,25vh,280px);padding-bottom:24px}.block-group>div[style*=grid]{grid-template-columns:1fr!important}.social-link{padding:6px 10px;font-size:13px}.code-block{padding:12px;font-size:11px;overflow-x:auto}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{min-width:500px;font-size:12px}.data-table th,.data-table td{padding:8px}}.project-video{aspect-ratio:16/9;object-fit:cover;background-color:#000;border-radius:4px;width:100%}.lore-link{color:var(--text-secondary);border-bottom:1px solid #0000;align-items:center;gap:4px;font-size:14px;text-decoration:none;transition:color .2s;display:inline-flex}.lore-link:hover{color:var(--text-primary);border-bottom-color:var(--text-primary)}.block-subheading{color:var(--text-primary);margin-top:16px;margin-bottom:8px;font-size:18px;font-weight:600}.block-list-ordered{color:var(--text-primary);padding-left:24px;font-size:16px;line-height:1.6;list-style-type:decimal}.block-list-ordered li{margin-bottom:6px}.code-block{color:#e0e0e0;background-color:#111;border:1px solid #333;border-radius:4px;margin-top:8px;padding:16px;font-family:Menlo,Monaco,Courier New,monospace;font-size:12px;line-height:1.4;overflow-x:auto}.table-container{margin-top:12px;margin-bottom:24px;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.data-table th,.data-table td{border-bottom:1px solid #333;padding:10px}.data-table th{color:var(--text-secondary);border-bottom:2px solid #444;font-weight:600}.data-table td{color:var(--text-primary)}.data-table code{background-color:#ffffff1a;border-radius:3px;padding:2px 4px;font-family:monospace;font-size:13px}.video-container{width:100%;position:relative}.video-thumbnail{cursor:pointer;border-radius:4px;position:relative;overflow:hidden}.video-thumbnail video{transition:transform .3s}.video-thumbnail:hover video{transform:scale(1.02)}.video-thumbnail:hover .video-play-overlay{opacity:0;transform:translate(-50%,-50%)scale(.8)}.video-play-overlay{opacity:.9;pointer-events:none;z-index:2;transition:all .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.youtube-video-container{background-color:#000;width:100%;margin-top:45px;position:relative}.youtube-video-player{background-color:#000;width:100%;max-height:70vh;display:block}@media (max-width:768px){.youtube-video-player{max-height:40vh}.project-video{border-radius:8px}.video-play-overlay svg{width:48px;height:48px}.github-tooltip{padding:6px 10px;font-size:11px}.share-button{padding:4px 6px!important;font-size:13px!important}.action-text{font-size:13px}.top-actions{gap:8px}.block-list,.block-list-ordered{padding-left:20px;font-size:15px}.block-group div[style*="display: flex"] span[style*=borderRadius]{padding:4px 10px!important;font-size:11px!important}}.social-link{color:var(--text-secondary);opacity:.6;border:1px solid #0000;border-radius:4px;align-items:center;gap:6px;padding:4px 8px;font-size:14px;text-decoration:none;transition:all .2s;display:inline-flex}.social-link:hover{opacity:1;background-color:#ffffff0d;border-color:#ffffff1a}.social-link svg{opacity:.8}.github-tooltip{color:#fff;pointer-events:none;z-index:10000;white-space:nowrap;background-color:#000000f2;border:1px solid #ffffff1a;border-radius:6px;padding:8px 12px;font-size:12px;animation:.15s tooltipFadeIn;position:fixed;box-shadow:0 4px 12px #0000004d}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.cover-skeleton{grid-template-rows:repeat(7,11px);grid-auto-columns:11px;grid-auto-flow:column;justify-content:center;gap:4px;max-width:100%;padding:0 20px;display:grid;overflow:hidden}.cover-skeleton-cell{width:11px;height:11px;animation:1.8s ease-in-out infinite skeletonPulse;animation-delay:calc(var(--col) * 35ms);background-color:#161b22;border-radius:2px}@keyframes skeletonPulse{0%,to{opacity:.45}50%{opacity:1}}.cover-calendar-enter{animation:coverFadeIn .5s var(--ease-out) both}.mermaid-chart svg{animation:coverFadeIn .4s var(--ease-out) both}@keyframes coverFadeIn{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
