:root{color-scheme:dark;--font-sans: Inter, "Noto Sans SC", "PingFang SC", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-full: 999px;--transition-fast: .16s ease;--transition-normal: .26s ease;--bg-page: #2e3440;--bg-page-glow: rgba(136, 192, 208, .11);--bg-card: #3b4252;--bg-card-subtle: #434c5e;--bg-card-hover: #4c566a;--text-main: #eceff4;--text-muted: #d8dee9;--text-subtle: #aeb8c8;--border-card: rgba(216, 222, 233, .16);--border-subtle: rgba(216, 222, 233, .1);--shadow-card: 0 16px 40px rgba(46, 52, 64, .22);--shadow-hover: 0 20px 46px rgba(46, 52, 64, .35);--primary: #88c0d0;--primary-strong: #81a1c1;--primary-text: #8fbcbb;--primary-subtle: rgba(136, 192, 208, .16);--danger: #bf616a;--success: #a3be8c;--warning: #ebcb8b;--purple: #b48ead;--gh-0: #434c5e;--gh-1: #4f6b69;--gh-2: #6e9c93;--gh-3: #88c0d0;--gh-4: #8fbcbb}[data-theme=light]{color-scheme:light;--bg-page: #eceff4;--bg-page-glow: rgba(94, 129, 172, .14);--bg-card: #e5e9f0;--bg-card-subtle: #d8dee9;--bg-card-hover: #cfd6e0;--text-main: #2e3440;--text-muted: #3b4252;--text-subtle: #4c566a;--border-card: rgba(46, 52, 64, .18);--border-subtle: rgba(46, 52, 64, .1);--shadow-card: 0 14px 36px rgba(46, 52, 64, .11);--shadow-hover: 0 18px 42px rgba(46, 52, 64, .18);--primary: #5e81ac;--primary-strong: #4c6f96;--primary-text: #3f6f70;--primary-subtle: rgba(94, 129, 172, .14);--gh-0: #cfd6e0;--gh-1: #b4cfca;--gh-2: #87ada6;--gh-3: #5e9fae;--gh-4: #4b8584}*{box-sizing:border-box}html{min-width:320px;background:var(--bg-page)}body{margin:0;min-width:320px;background:var(--bg-page);color:var(--text-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.skip-link{position:fixed;z-index:100;top:-48px;left:16px;padding:9px 12px;border-radius:var(--radius-sm);background:var(--primary);color:#2e3440;font-weight:700;text-decoration:none;transition:top var(--transition-fast)}.skip-link:focus{top:16px}.site-shell{position:relative;z-index:1;width:min(1180px,calc(100% - 40px));margin:0 auto;padding:26px 0 54px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:50px;margin:0 0 20px;padding:8px 10px 8px 14px;border:1px solid color-mix(in srgb,var(--border-card) 88%,transparent);border-radius:18px;background:color-mix(in srgb,var(--bg-card) 70%,transparent);box-shadow:0 10px 30px color-mix(in srgb,var(--bg-page) 34%,transparent),inset 0 1px #ffffff1a;-webkit-backdrop-filter:blur(18px) saturate(135%);backdrop-filter:blur(18px) saturate(135%)}.brand{display:inline-flex;align-items:center;gap:8px;color:var(--text-main);font-family:var(--font-mono);font-size:.92rem;font-weight:700;text-decoration:none;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--primary);border-radius:var(--radius-sm);color:var(--primary)}.header-tools{display:flex;align-items:center;justify-content:flex-end;gap:12px}.sync-indicator{display:inline-flex;align-items:center;gap:7px;color:var(--text-subtle);font-size:.72rem}.sync-indicator:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--warning);box-shadow:0 0 0 3px color-mix(in srgb,var(--warning) 14%,transparent)}.sync-indicator.is-ready:before{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 14%,transparent)}.sync-indicator.has-issue:before{background:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 14%,transparent)}.theme-switcher{display:flex;padding:3px;border:1px solid color-mix(in srgb,var(--border-card) 86%,transparent);border-radius:10px;background:color-mix(in srgb,var(--bg-card-subtle) 72%,transparent);box-shadow:inset 0 1px #00000014}.theme-mode-btn{border:0;border-radius:7px;padding:5px 9px;background:transparent;color:var(--text-subtle);font-size:.72rem;cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.theme-mode-btn:hover{color:var(--text-main)}.theme-mode-btn.is-active{background:color-mix(in srgb,var(--primary) 18%,var(--bg-card-subtle));color:var(--primary);box-shadow:0 1px 4px #0f172a24,inset 0 1px #ffffff1f}.bento-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.col-span-1{grid-column:span 1}.col-span-2{grid-column:span 2}.col-span-3{grid-column:1 / -1}.bento-card{position:relative;min-width:0;padding:22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--border-card) 90%,transparent);border-radius:24px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card) 88%,rgba(255,255,255,.12)),color-mix(in srgb,var(--bg-card) 96%,var(--primary) 4%));box-shadow:0 18px 42px color-mix(in srgb,var(--bg-page) 30%,transparent),inset 0 1px #ffffff1f;-webkit-backdrop-filter:blur(20px) saturate(125%);backdrop-filter:blur(20px) saturate(125%);transition:transform .26s cubic-bezier(.2,.8,.2,1),border-color .26s ease,box-shadow .26s ease}.bento-card:not(.now-visual-card):before{position:absolute;top:0;right:0;bottom:0;left:0;content:"";pointer-events:none;background:linear-gradient(132deg,rgba(255,255,255,.09),transparent 28%,transparent 70%,color-mix(in srgb,var(--primary) 9%,transparent))}.bento-card>*{position:relative;z-index:1}@media (hover: hover) and (pointer: fine){.bento-card:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--border-card));box-shadow:0 24px 52px color-mix(in srgb,var(--bg-page) 42%,transparent),inset 0 1px #ffffff29;transform:translateY(-3px)}}.bento-card.interactive-card.is-tilting{transform:translate3d(0,-3px,0) perspective(900px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg))}.bento-card.interactive-card.is-pressed{transform:translate3d(0,-1px,0) scale(.992);transition-duration:.12s}.profile-card{display:flex;align-items:center;gap:20px;min-height:222px}.now-card{display:flex;flex-direction:column;min-height:222px}.github-card,.wakatime-card,.projects-card{padding:22px}@media (max-width: 860px){.site-shell{width:min(680px,calc(100% - 28px))}.bento-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.col-span-3,.profile-card{grid-column:1 / -1}.now-card{grid-column:1 / -1;min-height:initial}.tech-card,.social-card{grid-column:1 / -1}}@media (max-width: 560px){.site-shell{width:min(100% - 20px,680px);padding-top:10px}.site-header{align-items:flex-start;margin-bottom:12px;padding:8px 9px 8px 12px;border-radius:15px}.header-tools{flex-direction:column;align-items:flex-end;gap:7px}.sync-indicator{font-size:.65rem}.theme-mode-btn{padding:5px 7px}.bento-grid{grid-template-columns:1fr;gap:12px}.bento-card,.github-card,.wakatime-card,.projects-card{padding:17px;border-radius:20px}.col-span-1,.col-span-2,.col-span-3{grid-column:1}.profile-card{align-items:flex-start;gap:14px;min-height:0}.profile-avatar-wrap{width:70px;height:70px}.profile-content{min-width:0}}body{background-image:radial-gradient(circle at 4% -10%,var(--bg-page-glow),transparent 32rem),radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--purple) 7%,transparent),transparent 28rem)}.site-shell:before{position:fixed;z-index:-1;top:-170px;left:50%;width:min(900px,110vw);height:420px;content:"";border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--primary) 13%,transparent),transparent 68%);filter:blur(18px);transform:translate(-50%);pointer-events:none}.ambient-particles{position:fixed;z-index:0;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.ambient-particle{position:absolute;top:var(--particle-y);left:var(--particle-x);width:var(--particle-size);height:var(--particle-size);border-radius:50%;background:color-mix(in srgb,var(--primary) 78%,white);box-shadow:0 0 18px color-mix(in srgb,var(--primary) 46%,transparent),0 0 36px color-mix(in srgb,var(--purple) 20%,transparent);opacity:.28;animation:ambient-drift 12s var(--particle-delay) ease-in-out infinite alternate}.ambient-particle:nth-child(3n){background:color-mix(in srgb,var(--purple) 76%,white)}.ambient-particle:nth-child(4n){opacity:.18;filter:blur(.5px)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.compact-header{margin-bottom:14px}.eyebrow{margin:0 0 4px;color:var(--primary);font-family:var(--font-mono);font-size:.69rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.card-title{margin:0;color:var(--text-main);font-size:1rem;font-weight:700;letter-spacing:-.02em}.card-link{color:var(--primary);font-size:.78rem;font-weight:600;text-decoration:none;white-space:nowrap}.card-link:hover{color:var(--primary-text);text-decoration:underline}.profile-avatar-wrap{position:relative;flex:0 0 auto;width:112px;height:112px}.profile-avatar,.profile-avatar-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;width:100%;height:100%;place-items:center;border:1px solid var(--border-card);border-radius:30px;background:var(--bg-card-subtle)}.profile-avatar{z-index:1;object-fit:cover}.profile-avatar-fallback{color:var(--primary);font-family:var(--font-mono);font-size:2rem}.profile-avatar.is-failed{display:none}.profile-content{flex:1}.profile-name-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}.profile-name{margin:0;font-size:clamp(1.45rem,3vw,2rem);line-height:1.12;letter-spacing:-.055em}.profile-handle{color:var(--text-subtle);font-family:var(--font-mono);font-size:.75rem}.profile-role{margin:9px 0 6px;color:var(--primary-text);font-size:.9rem;font-weight:600}.profile-bio{max-width:720px;margin:0 0 14px;color:var(--text-muted);font-size:.88rem;line-height:1.7}.profile-tags{display:flex;flex-wrap:wrap;gap:7px}.pill-tag{display:inline-flex;align-items:center;min-width:0;gap:5px;padding:5px 8px;border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--bg-card-subtle);color:var(--text-subtle);font-family:var(--font-mono);font-size:.67rem}.pill-tag-wide{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nord-swatch{width:30px;height:30px;border-radius:50%;background:conic-gradient(var(--primary) 0 25%,var(--primary-text) 0 50%,var(--purple) 0 75%,var(--warning) 0);box-shadow:0 0 0 4px var(--primary-subtle)}.now-copy{margin:0 0 16px;color:var(--text-muted);font-size:.83rem;line-height:1.65}.source-list{display:grid;margin-top:auto;border-top:1px solid var(--border-subtle)}.source-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border-subtle);color:var(--text-muted);font-family:var(--font-mono);font-size:.72rem;text-decoration:none}.source-list a:hover{color:var(--primary)}.source-list span{color:var(--text-subtle);font-size:.64rem}.source-list span.is-ready{color:var(--success)}.source-list span.is-issue{color:var(--warning)}.profile-avatar,.profile-avatar-fallback{border-color:color-mix(in srgb,var(--primary) 35%,var(--border-card));border-radius:34px;box-shadow:0 10px 26px color-mix(in srgb,var(--bg-page) 30%,transparent),inset 0 1px #ffffff21}.profile-role{letter-spacing:-.015em}.profile-tags{gap:8px}.pill-tag{padding:6px 9px;border-color:color-mix(in srgb,var(--border-subtle) 86%,var(--primary) 14%);background:color-mix(in srgb,var(--bg-card-subtle) 72%,transparent);box-shadow:inset 0 1px #ffffff0f}.gh-stat,.waka-metric,.waka-detail,.waka-item-card,.tech-pill,.copy-email-box,.social-link,.blog-item,.project-row,.friend-card{border-color:color-mix(in srgb,var(--border-subtle) 86%,var(--primary) 14%);background:linear-gradient(145deg,color-mix(in srgb,var(--bg-card-subtle) 82%,rgba(255,255,255,.08)),color-mix(in srgb,var(--bg-card-subtle) 94%,var(--primary) 6%));box-shadow:inset 0 1px #ffffff13,0 5px 14px color-mix(in srgb,var(--bg-page) 10%,transparent)}.gh-stat{padding:14px;border-radius:17px}.gh-stat dd{font-size:1.32rem}.heatmap-outer{overflow:hidden;border-color:color-mix(in srgb,var(--border-subtle) 78%,var(--primary) 22%);border-radius:18px;background:color-mix(in srgb,var(--bg-card-subtle) 52%,transparent);box-shadow:inset 0 1px #ffffff12}.heatmap-info-row{padding:11px 14px;background:color-mix(in srgb,var(--bg-card-subtle) 34%,transparent)}.waka-metric{border-radius:17px}.waka-stacked-bar{height:10px;border:1px solid color-mix(in srgb,var(--border-subtle) 70%,transparent);box-shadow:inset 0 1px 3px #0f172a29}.waka-item-card{border-radius:13px}.waka-tab,.tech-tab{border-radius:9px;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.waka-tab.is-active,.tech-tab.is-active{box-shadow:0 4px 12px color-mix(in srgb,var(--bg-page) 16%,transparent),inset 0 1px #ffffff1f}.tech-pill{border-radius:13px}.tech-pill-icon{width:24px;height:24px;padding:4px;border-radius:8px;background:color-mix(in srgb,var(--primary-subtle) 76%,transparent)}.copy-email-box{border-radius:13px}.social-link{border-radius:12px}.blog-item{border-radius:13px}.project-row{border-radius:18px}.friend-card{border-radius:15px}.friend-avatar-wrap{box-shadow:0 4px 12px color-mix(in srgb,var(--bg-page) 25%,transparent)}@media (hover: hover) and (pointer: fine){.gh-stat:hover,.waka-metric:hover,.waka-item-card:hover,.tech-pill:hover,.social-link:hover,.blog-item:hover,.friend-card:hover{border-color:color-mix(in srgb,var(--primary) 46%,var(--border-card));box-shadow:0 10px 20px color-mix(in srgb,var(--bg-page) 20%,transparent),inset 0 1px #ffffff1f;transform:translateY(-1px)}.project-row:hover{border-color:color-mix(in srgb,var(--primary) 52%,var(--border-card));box-shadow:0 14px 26px color-mix(in srgb,var(--bg-page) 24%,transparent),inset 0 1px #ffffff1a;transform:translateY(-3px)}}.now-visual-card{position:relative;overflow:hidden;isolation:isolate;border-color:color-mix(in srgb,var(--primary) 38%,var(--border-card));background:radial-gradient(circle at 54% 46%,#39435b 0,#252d3d 43%,#1c2330);box-shadow:0 18px 42px #0f172a57,inset 0 1px #ffffff09}.now-visual-card:before,.now-visual-card:after{position:absolute;z-index:-1;content:"";pointer-events:none}.now-visual-card:before{top:0;right:0;bottom:0;left:0;opacity:.36;background:linear-gradient(125deg,transparent 34%,rgba(136,192,208,.13) 50%,transparent 65%);transform:translate(-125%);animation:now-sheen 6.5s ease-in-out infinite}.now-visual-card:after{right:-64px;bottom:-76px;width:180px;height:180px;border-radius:50%;background:#b48ead2e;filter:blur(34px)}.now-header{position:relative;z-index:2}.now-visual-card .eyebrow{color:#8fdef0}.now-visual-card .card-title{color:#edf4ff}.now-live{display:inline-flex;align-items:center;gap:6px;padding:5px 7px;border:1px solid rgba(163,190,140,.38);border-radius:999px;background:#a3be8c17;color:#b9e3a8;font-family:var(--font-mono);font-size:.62rem;font-weight:700;letter-spacing:.08em}.now-live i,.now-signal i{width:6px;height:6px;border-radius:50%;background:#a3be8c;box-shadow:0 0 0 3px #a3be8c1f,0 0 12px #a3be8ce6;animation:now-blink 1.8s ease-in-out infinite}.now-visual{position:relative;min-height:134px;margin:-2px -4px 12px;overflow:hidden;border:1px solid rgba(136,192,208,.22);border-radius:14px;background:radial-gradient(circle at 50% 50%,rgba(136,192,208,.14),transparent 40%),#202837}.now-grid{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.44;background-image:linear-gradient(rgba(136,192,208,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(136,192,208,.16) 1px,transparent 1px);background-size:16px 16px;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 16%,#000 86%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 16%,#000 86%,transparent);transform:perspective(190px) rotateX(48deg) scale(1.45) translateY(23px);transform-origin:50% 100%;animation:now-grid-drift 5s linear infinite}.now-scan{position:absolute;top:-24%;left:-8%;width:116%;height:28%;opacity:.74;background:linear-gradient(to bottom,transparent,rgba(136,192,208,.05) 32%,rgba(136,192,208,.64) 50%,rgba(180,142,173,.18) 54%,transparent);filter:blur(.2px);animation:now-scan 3.6s linear infinite}.now-orbit{position:absolute;top:50%;left:50%;border:1px solid rgba(136,192,208,.39);border-radius:50%;transform:translate(-50%,-50%)}.now-orbit-a{width:75px;height:75px;box-shadow:0 0 22px #88c0d029,inset 0 0 14px #88c0d01f;animation:now-orbit 9s linear infinite}.now-orbit-b{width:114px;height:45px;border-color:#b48ead57;transform:translate(-50%,-50%) rotate(-34deg);animation:now-orbit-reverse 7s linear infinite}.now-core{position:absolute;top:50%;left:50%;display:flex;align-items:baseline;justify-content:center;width:48px;height:48px;border:1px solid rgba(143,222,240,.85);border-radius:50%;background:radial-gradient(circle,rgba(143,222,240,.34),rgba(136,192,208,.08) 58%,transparent 70%);color:#e8fbff;font-family:var(--font-mono);box-shadow:0 0 0 6px #88c0d012,0 0 24px #88c0d070,inset 0 0 14px #8fdef042;transform:translate(-50%,-50%);animation:now-core 2.5s ease-in-out infinite}.now-core span{font-size:.55rem;opacity:.75}.now-core strong{font-size:.66rem;letter-spacing:-.08em}.now-trace{position:absolute;z-index:1;height:1px;transform-origin:left center;background:linear-gradient(90deg,transparent,#88c0d0 23%,rgba(180,142,173,.78) 74%,transparent);box-shadow:0 0 10px #88c0d0bf}.now-trace-a{top:25%;left:10%;width:78%;transform:rotate(18deg);animation:now-trace 4.4s ease-in-out infinite}.now-trace-b{top:71%;left:17%;width:64%;transform:rotate(-22deg);animation:now-trace 5.2s 1.1s ease-in-out infinite}.now-particle{position:absolute;z-index:2;width:4px;height:4px;border-radius:50%;background:#eceff4;box-shadow:0 0 11px 3px #88c0d0}.now-particle-a{top:25%;left:26%;animation:now-float 4s ease-in-out infinite}.now-particle-b{right:21%;bottom:26%;width:3px;height:3px;background:#b48ead;box-shadow:0 0 10px 3px #b48ead;animation:now-float 4.8s .8s ease-in-out infinite}.now-particle-c{top:49%;right:12%;width:2px;height:2px;animation:now-float 3.5s 1.5s ease-in-out infinite}.now-coordinate{position:absolute;z-index:3;color:#d8dee9ad;font-family:var(--font-mono);font-size:.55rem;letter-spacing:.08em}.now-coordinate-a{top:10px;left:11px}.now-coordinate-b{right:10px;bottom:9px}.now-telemetry{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#d8dee99e;font-family:var(--font-mono);font-size:.61rem;letter-spacing:.07em}.now-telemetry time{color:#bfeefa;font-size:.75rem;letter-spacing:.04em}.now-signal{display:inline-flex;align-items:center;gap:5px;color:#b9e3a8}@keyframes now-sheen{0%,48%{transform:translate(-125%)}78%,to{transform:translate(125%)}}@keyframes now-blink{0%,to{opacity:.52;transform:scale(.86)}50%{opacity:1;transform:scale(1.15)}}@keyframes now-grid-drift{to{background-position:0 16px,16px 0}}@keyframes now-scan{0%{transform:translateY(-20%)}to{transform:translateY(500%)}}@keyframes now-orbit{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes now-orbit-reverse{to{transform:translate(-50%,-50%) rotate(-394deg)}}@keyframes now-core{0%,to{filter:brightness(.94);transform:translate(-50%,-50%) scale(.94)}50%{filter:brightness(1.2);transform:translate(-50%,-50%) scale(1.08)}}@keyframes now-trace{0%,to{opacity:.2;filter:saturate(.5)}50%{opacity:1;filter:saturate(1.4)}}@keyframes now-float{0%,to{transform:translate(0);opacity:.52}50%{transform:translate(9px,-7px);opacity:1}}@media (max-width: 860px){.now-visual{min-height:154px}}@media (max-width: 560px){.now-visual{min-height:142px}}[data-theme=light] .now-visual-card{border-color:#5e81ac57;background:radial-gradient(circle at 54% 46%,#fff 0,#edf6fa 48%,#e6e9f5);box-shadow:0 18px 38px #4c6f9629,inset 0 1px #ffffffeb}[data-theme=light] .now-visual-card:before{opacity:.62;background:linear-gradient(125deg,transparent 34%,rgba(94,129,172,.16) 50%,transparent 65%)}[data-theme=light] .now-visual-card:after{background:#b48ead38}[data-theme=light] .now-visual-card .eyebrow{color:#39738a}[data-theme=light] .now-visual-card .card-title{color:#29394c}[data-theme=light] .now-live{border-color:#57875f52;background:#a3be8c24;color:#447352}[data-theme=light] .now-live i,[data-theme=light] .now-signal i{background:#5b9565;box-shadow:0 0 0 3px #5b95651f,0 0 10px #5b956585}[data-theme=light] .now-visual{border-color:#5e81ac3d;background:radial-gradient(circle at 50% 50%,rgba(136,192,208,.28),transparent 40%),linear-gradient(135deg,#f9fdff,#e2f0f5 58%,#eef0f9);box-shadow:inset 0 1px #ffffffe0}[data-theme=light] .now-grid{opacity:.64;background-image:linear-gradient(rgba(73,117,148,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(73,117,148,.18) 1px,transparent 1px)}[data-theme=light] .now-scan{opacity:.68;background:linear-gradient(to bottom,transparent,rgba(94,129,172,.04) 32%,rgba(94,129,172,.52) 50%,rgba(180,142,173,.18) 54%,transparent)}[data-theme=light] .now-orbit{border-color:#407e976b}[data-theme=light] .now-orbit-a{box-shadow:0 0 22px #5e81ac38,inset 0 0 14px #88c0d033}[data-theme=light] .now-orbit-b{border-color:#9d699766}[data-theme=light] .now-core{border-color:#378199b8;background:radial-gradient(circle,rgba(143,222,240,.52),rgba(136,192,208,.14) 58%,transparent 70%);color:#1e596b;box-shadow:0 0 0 6px #5e81ac17,0 0 24px #5e81ac5c,inset 0 0 14px #8fdef066}[data-theme=light] .now-trace{background:linear-gradient(90deg,transparent,#4f91a6 23%,rgba(157,105,151,.7) 74%,transparent);box-shadow:0 0 9px #4f91a68a}[data-theme=light] .now-particle{background:#3f8095;box-shadow:0 0 10px 3px #4f91a69e}[data-theme=light] .now-particle-b{background:#a06299;box-shadow:0 0 9px 3px #a0629980}[data-theme=light] .now-coordinate{color:#2e4a5ea8}[data-theme=light] .now-telemetry{color:#2e4a5ead}[data-theme=light] .now-telemetry time{color:#256379}[data-theme=light] .now-signal{color:#447352}[data-theme=light] .now-visual-card .card-ripple{background:radial-gradient(circle,rgba(94,180,204,.3),rgba(94,129,172,.13) 38%,transparent 70%)}.github-stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 20px}.gh-stat{min-width:0;padding:12px 13px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card-subtle)}.gh-stat dt{overflow:hidden;color:var(--text-subtle);font-size:.71rem;text-overflow:ellipsis;white-space:nowrap}.gh-stat dd{margin:6px 0 0;overflow:hidden;color:var(--text-main);font-family:var(--font-mono);font-size:1.25rem;font-weight:700;letter-spacing:-.05em;text-overflow:ellipsis}.heatmap-outer{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-card-subtle) 74%,transparent)}.heatmap-scroll-content{min-width:690px;padding:13px 15px 8px}.heatmap-months-row{display:grid;grid-template-columns:repeat(var(--heatmap-weeks, 53),11px);gap:3px;height:18px}.heatmap-month-label{overflow:visible;color:var(--text-subtle);font-family:var(--font-mono);font-size:.62rem;white-space:nowrap}.heatmap-grid{display:grid;grid-template-columns:repeat(var(--heatmap-weeks, 53),11px);gap:3px;min-height:83px}.heatmap-col{display:grid;grid-template-rows:repeat(7,11px);gap:3px}.heatmap-dot{width:11px;height:11px;border-radius:3px;background:var(--gh-0);transition:transform var(--transition-fast),filter var(--transition-fast)}.heatmap-dot[data-level="1"]{background:var(--gh-1)}.heatmap-dot[data-level="2"]{background:var(--gh-2)}.heatmap-dot[data-level="3"]{background:var(--gh-3)}.heatmap-dot[data-level="4"]{background:var(--gh-4)}.heatmap-dot:hover{filter:brightness(1.14);transform:scale(1.22)}.heatmap-info-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid var(--border-subtle);color:var(--text-subtle);font-size:.68rem}.heatmap-legend-dots{display:inline-flex;align-items:center;gap:4px;color:var(--text-subtle);font-size:.62rem;white-space:nowrap}.heatmap-legend-dots i{width:10px;height:10px;border-radius:3px;background:var(--gh-0)}.heatmap-legend-dots i[data-level="1"]{background:var(--gh-1)}.heatmap-legend-dots i[data-level="2"]{background:var(--gh-2)}.heatmap-legend-dots i[data-level="3"]{background:var(--gh-3)}.heatmap-legend-dots i[data-level="4"]{background:var(--gh-4)}.waka-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:15px}.waka-metric{padding:13px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card-subtle)}.waka-metric span{display:block;color:var(--text-subtle);font-size:.7rem}.waka-metric strong{display:block;margin-top:7px;color:var(--text-main);font-family:var(--font-mono);font-size:1.08rem;letter-spacing:-.04em}.waka-stacked-bar{display:flex;height:9px;margin:14px 0;overflow:hidden;border-radius:var(--radius-full);background:var(--border-card)}.waka-seg{min-width:1px;height:100%}.waka-breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.waka-item-card{padding:10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card-subtle)}.waka-item-header,.waka-item-sub{display:flex;align-items:center;justify-content:space-between;gap:6px}.waka-item-header{color:var(--text-main);font-size:.78rem;font-weight:600}.waka-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.waka-item-badge{flex:0 0 auto;color:var(--primary-text);font-family:var(--font-mono);font-size:.68rem}.waka-item-sub{margin-top:5px;color:var(--text-subtle);font-family:var(--font-mono);font-size:.66rem}.waka-empty{padding:4px 0;color:var(--text-muted);font-size:.84rem;line-height:1.7}.waka-empty code{padding:2px 5px;border-radius:4px;background:var(--bg-card-subtle);color:var(--primary);font-family:var(--font-mono);font-size:.76rem}.tech-tabs{display:flex;gap:5px;margin-bottom:12px;overflow-x:auto;scrollbar-width:none}.tech-tabs::-webkit-scrollbar{display:none}.tech-tab{flex:0 0 auto;border:1px solid transparent;border-radius:var(--radius-sm);padding:6px 9px;background:transparent;color:var(--text-subtle);font-size:.74rem;cursor:pointer}.tech-tab:hover{color:var(--text-main)}.tech-tab.is-active{border-color:var(--border-card);background:var(--primary-subtle);color:var(--primary)}.tech-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:8px}.tech-pill{display:flex;align-items:center;gap:8px;min-width:0;padding:9px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card-subtle)}.tech-pill-icon{display:grid;flex:0 0 auto;width:20px;height:20px;place-items:center;color:var(--primary)}.tech-pill-icon svg{width:100%;height:100%}.tech-pill-name{overflow:hidden;color:var(--text-main);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.copy-email-box{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;padding:9px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card-subtle);color:var(--text-muted);font-family:var(--font-mono);font-size:.7rem;cursor:pointer}.copy-email-box span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-email-box span:last-child{flex:0 0 auto;color:var(--primary)}.social-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.social-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;padding:8px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card-subtle);color:var(--text-muted);font-size:.72rem;font-weight:600;text-decoration:none}.social-link:hover{border-color:var(--primary);color:var(--primary)}.social-link svg{width:15px;height:15px}.blog-list{display:grid;gap:7px;margin-top:12px}.blog-item{display:block;padding:9px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card-subtle);text-decoration:none}.blog-item:hover{border-color:var(--primary)}.blog-item-title{display:block;overflow:hidden;color:var(--text-main);font-size:.76rem;font-weight:600;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.blog-item-date{display:block;margin-top:4px;color:var(--text-subtle);font-family:var(--font-mono);font-size:.64rem}.projects-container{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.project-row{display:flex;flex-direction:column;justify-content:space-between;gap:12px;min-width:0;min-height:148px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card-subtle);transition:border var(--transition-fast),transform var(--transition-fast)}.project-row:hover{border-color:var(--primary);transform:translateY(-2px)}.project-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:7px;color:var(--text-main);font-family:var(--font-mono);font-size:.84rem;font-weight:700}.project-heading>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-language{flex:0 0 auto;padding:2px 5px;border-radius:4px;background:var(--primary-subtle);color:var(--primary-text);font-family:var(--font-sans);font-size:.62rem}.project-summary{display:-webkit-box;overflow:hidden;margin-top:6px;color:var(--text-muted);font-size:.75rem;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:3}.project-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text-subtle);font-family:var(--font-mono);font-size:.67rem}.project-code{color:var(--primary);text-decoration:none;font-weight:700}.project-code:hover{text-decoration:underline}.friends-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.friend-card{display:flex;align-items:center;gap:10px;min-width:0;padding:10px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card-subtle);text-decoration:none}.friend-card:hover{border-color:var(--primary)}.friend-avatar-wrap{flex:0 0 auto;width:38px;height:38px;overflow:hidden;border-radius:50%;background:var(--primary-subtle)}.friend-avatar{width:100%;height:100%;object-fit:cover}.friend-avatar-fallback{display:grid;width:100%;height:100%;place-items:center;color:var(--primary);font-family:var(--font-mono);font-size:.83rem;font-weight:700}.friend-info{min-width:0}.friend-title{overflow:hidden;color:var(--text-main);font-size:.77rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.friend-intro{overflow:hidden;margin-top:2px;color:var(--text-subtle);font-size:.66rem;text-overflow:ellipsis;white-space:nowrap}.loading-copy{margin:0;color:var(--text-subtle);font-size:.78rem}.clean-toast,.clean-tooltip{position:fixed;z-index:20;pointer-events:none;opacity:0;transition:opacity var(--transition-fast),transform var(--transition-fast)}.clean-toast{bottom:20px;left:50%;padding:8px 12px;border-radius:var(--radius-full);background:var(--text-main);color:var(--bg-page);font-size:.76rem;transform:translate(-50%,10px)}.clean-tooltip{max-width:220px;padding:6px 8px;border:1px solid var(--border-card);border-radius:var(--radius-sm);background:var(--bg-card);box-shadow:var(--shadow-card);color:var(--text-main);font-family:var(--font-mono);font-size:.67rem}.clean-toast.show,.clean-tooltip.show{opacity:1}.clean-toast.show{transform:translate(-50%)}@media (max-width: 700px){.github-stats-bar{grid-template-columns:repeat(2,1fr)}.heatmap-outer{overflow-x:auto}.heatmap-info-row{min-width:690px}.projects-container,.friends-grid{grid-template-columns:repeat(2,1fr)}.waka-overview{grid-template-columns:1fr}}@media (max-width: 560px){.profile-name{font-size:1.35rem}.profile-role{font-size:.8rem}.profile-bio{font-size:.78rem}.profile-tags{gap:5px}.pill-tag{font-size:.61rem}.card-header{margin-bottom:14px}.projects-container,.friends-grid{grid-template-columns:1fr}.project-row{min-height:126px}.tech-icon-grid{grid-template-columns:repeat(2,1fr)}.heatmap-scroll-content{padding:11px 12px 6px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.heatmap-outer{overflow:hidden}.heatmap-scroll-content{width:100%;min-width:0}.heatmap-months-row{grid-template-columns:repeat(var(--heatmap-weeks, 53),var(--heatmap-cell-size, 11px));gap:var(--heatmap-gap, 3px)}.heatmap-grid{grid-template-columns:repeat(var(--heatmap-weeks, 53),var(--heatmap-cell-size, 11px));gap:var(--heatmap-gap, 3px);min-height:0}.heatmap-col{grid-template-rows:repeat(7,var(--heatmap-cell-size, 11px));gap:var(--heatmap-gap, 3px)}.heatmap-dot{width:var(--heatmap-cell-size, 11px);height:var(--heatmap-cell-size, 11px);max-width:16px;max-height:16px}.waka-overview{grid-template-columns:repeat(4,minmax(0,1fr))}.waka-details{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.waka-detail{display:inline-flex;align-items:baseline;gap:7px;padding:7px 9px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card-subtle)}.waka-detail span{color:var(--text-subtle);font-size:.68rem}.waka-detail strong{color:var(--text-main);font-family:var(--font-mono);font-size:.72rem}.waka-tabs{display:flex;gap:5px;margin:2px 0 0;overflow-x:auto;scrollbar-width:none}.waka-tabs::-webkit-scrollbar{display:none}.waka-tab{flex:0 0 auto;border:1px solid transparent;border-radius:var(--radius-sm);padding:6px 10px;background:transparent;color:var(--text-subtle);font-size:.74rem;cursor:pointer}.waka-tab:hover{color:var(--text-main)}.waka-tab.is-active{border-color:var(--border-card);background:var(--primary-subtle);color:var(--primary)}@media (max-width: 700px){.heatmap-outer{overflow:hidden}.heatmap-info-row{min-width:0;align-items:flex-start;flex-direction:column}.waka-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 420px){.heatmap-month-label{font-size:.54rem}.heatmap-info-row{padding:9px 11px}.waka-metric{padding:10px}}.bento-card.interactive-card:not(.now-visual-card):after{position:absolute;z-index:0;top:-1px;right:-1px;bottom:-1px;left:-1px;content:"";border-radius:inherit;opacity:0;pointer-events:none;background:radial-gradient(300px circle at var(--pointer-x, 50%) var(--pointer-y, 50%),color-mix(in srgb,var(--primary) 20%,transparent),transparent 62%);transition:opacity .26s ease}.bento-card.interactive-card.has-pointer:not(.now-visual-card):after{opacity:1}.card-ripple{position:absolute!important;z-index:0!important;top:var(--ripple-y);left:var(--ripple-x);width:var(--ripple-size);height:var(--ripple-size);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 34%,rgba(255,255,255,.46)) 0,color-mix(in srgb,var(--primary) 15%,transparent) 38%,transparent 70%);transform:translate(-50%,-50%) scale(.05);pointer-events:none;animation:card-ripple .78s cubic-bezier(.18,.78,.25,1) forwards}.now-visual-card .card-ripple{background:radial-gradient(circle,rgba(191,238,250,.34),rgba(136,192,208,.16) 38%,transparent 70%)}@keyframes ambient-drift{0%{transform:translate3d(-8px,8px,0) scale(.84);opacity:.1}48%{opacity:.38}to{transform:translate3d(12px,-18px,0) scale(1.16);opacity:.14}}@keyframes card-ripple{0%{opacity:.72;transform:translate(-50%,-50%) scale(.05)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}
