:root{color-scheme:light;--bg: #f6fbff;--bg-soft: #e4f5ff;--panel: rgba(255, 255, 255, .82);--panel-strong: #ffffff;--text: #1d2a3d;--muted: #667b92;--line: rgba(48, 132, 194, .19);--primary: #43b8ff;--primary-strong: #157ed0;--secondary: #7bdcff;--accent: #ffe66f;--mint: #91e7ff;--code-bg: #101d31;--shadow: 0 22px 60px rgba(29, 112, 180, .16);--radius: 8px;--font-body: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif;--font-display: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif;font-family:var(--font-body)}:root.dark{color-scheme:dark;--bg: #0d1627;--bg-soft: #122945;--panel: rgba(18, 31, 52, .84);--panel-strong: #172b48;--text: #f4fbff;--muted: #b5c8da;--line: rgba(149, 220, 255, .18);--primary: #59c7ff;--primary-strong: #9be3ff;--secondary: #83e4ff;--accent: #ffe985;--mint: #a4efff;--code-bg: #08111f;--shadow: 0 24px 68px rgba(0, 0, 0, .36)}*{box-sizing:border-box}html{min-height:100%;background:linear-gradient(118deg,color-mix(in srgb,var(--secondary) 18%,transparent),transparent 30rem),linear-gradient(252deg,color-mix(in srgb,var(--primary) 16%,transparent),transparent 34rem),linear-gradient(180deg,color-mix(in srgb,var(--accent) 12%,transparent),transparent 20rem),var(--bg);color:var(--text);letter-spacing:0}body{min-height:100%;margin:0;overflow-x:hidden;background:linear-gradient(180deg,rgba(255,255,255,.55),transparent 22rem),linear-gradient(135deg,transparent 0 58%,color-mix(in srgb,var(--bg-soft) 68%,transparent) 58% 62%,transparent 62%),var(--bg)}:root.dark body{background:linear-gradient(180deg,rgba(255,255,255,.045),transparent 22rem),linear-gradient(135deg,transparent 0 58%,color-mix(in srgb,var(--bg-soft) 58%,transparent) 58% 62%,transparent 62%),var(--bg)}body:before{position:fixed;inset:0;z-index:-1;pointer-events:none;content:"";background-image:linear-gradient(color-mix(in srgb,var(--secondary) 15%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--primary) 13%,transparent) 1px,transparent 1px),repeating-linear-gradient(135deg,transparent 0 16px,color-mix(in srgb,var(--accent) 10%,transparent) 16px 17px);background-size:42px 42px,42px 42px,24px 24px;mask-image:linear-gradient(to bottom,black,transparent 78%)}body:after{position:fixed;inset:auto 0 0;z-index:-1;height:min(32vh,280px);pointer-events:none;content:"";background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--bg) 86%,transparent)),repeating-linear-gradient(90deg,transparent 0 40px,color-mix(in srgb,var(--secondary) 9%,transparent) 40px 41px);opacity:.82}::selection{background:color-mix(in srgb,var(--primary) 24%,transparent)}.page-atmosphere{position:fixed;inset:70px 0 auto;z-index:0;height:350px;overflow:hidden;pointer-events:none}.anime-grid,.sakura-orbit,.sticker-dot,.sparkle-mark{position:absolute;display:block}.anime-grid{inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--secondary) 15%,transparent) 1px,transparent 1px),linear-gradient(color-mix(in srgb,var(--primary) 12%,transparent) 1px,transparent 1px);background-size:72px 72px;opacity:.42;transform:skewY(-4deg);transform-origin:left top}.sakura-orbit{width:min(780px,92vw);height:160px;border:1px solid color-mix(in srgb,var(--primary) 28%,transparent);border-right-color:transparent;border-left-color:transparent;border-radius:50%;opacity:.42;transform:rotate(-5deg)}.orbit-one{top:42px;left:8vw}.orbit-two{top:112px;right:-8vw;width:min(620px,78vw);border-color:color-mix(in srgb,var(--secondary) 24%,transparent);border-right-color:transparent;border-left-color:transparent;opacity:.34;transform:rotate(7deg)}.sticker-dot{width:62px;height:62px;border:1px solid color-mix(in srgb,var(--primary) 35%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--panel-strong) 74%,transparent),transparent),color-mix(in srgb,var(--bg-soft) 62%,transparent);clip-path:polygon(50% 0,61% 30%,94% 30%,68% 50%,82% 82%,50% 63%,18% 82%,32% 50%,6% 30%,39% 30%);opacity:.56}.dot-one{top:52px;left:max(20px,calc((100vw - 1120px)/2 - 64px));transform:rotate(-10deg)}.dot-two{right:max(20px,calc((100vw - 1120px)/2 - 46px));bottom:46px;border-color:color-mix(in srgb,var(--secondary) 35%,transparent);transform:rotate(12deg)}.sparkle-mark{display:grid;place-items:center;width:54px;height:54px;border:1px solid color-mix(in srgb,var(--primary) 34%,transparent);border-radius:8px;color:color-mix(in srgb,var(--primary-strong) 45%,transparent);font-family:var(--font-display);font-size:1.28rem;line-height:1;opacity:.62;transform:rotate(9deg)}.mark-one{top:38px;left:max(74px,calc((100vw - 1120px)/2 - 4px))}.mark-two{right:max(72px,calc((100vw - 1120px)/2 + 8px));top:206px;color:color-mix(in srgb,var(--secondary) 48%,transparent);transform:rotate(-8deg)}.atmosphere-line{--line-x: -50%;--line-rotate: -2deg;position:absolute;left:50%;display:block;width:min(880px,86vw);height:96px;border:solid color-mix(in srgb,var(--secondary) 24%,transparent);border-width:2px 0 0;border-radius:50%;opacity:.35;transform:translate(var(--line-x)) rotate(var(--line-rotate))}.line-one{top:76px}.line-two{--line-x: -45%;--line-rotate: 4deg;top:142px;width:min(660px,72vw);border-color:color-mix(in srgb,var(--primary) 24%,transparent);opacity:.26}a{color:inherit;text-decoration:none}img{max-width:100%}button{font:inherit}.site-shell{width:min(1120px,calc(100% - 32px));margin:0 auto}.site-header{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 11%,transparent),transparent 32%,color-mix(in srgb,var(--secondary) 10%,transparent)),color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(16px);box-shadow:0 12px 34px #412d5c14}.site-header:before{position:absolute;inset:0 0 auto;height:4px;content:"";background:linear-gradient(90deg,var(--primary),var(--accent),var(--secondary),var(--mint))}.nav-bar{display:flex;min-height:68px;align-items:center;justify-content:space-between;gap:18px}.brand{display:inline-flex;align-items:center;gap:10px;min-width:0;font-family:var(--font-display);font-weight:800}.brand-mark{position:relative;display:grid;width:38px;height:38px;place-items:center;border:2px solid color-mix(in srgb,var(--panel-strong) 82%,transparent);border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;box-shadow:0 12px 24px #1f93e13d;transition:transform .18s ease,box-shadow .18s ease}.brand-mark:before{position:absolute;inset:5px;border:1px solid rgba(255,255,255,.72);border-radius:8px;content:""}.brand:hover .brand-mark{box-shadow:0 16px 30px #49b8e93d;transform:rotate(-5deg) scale(1.04)}.brand-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.04rem;text-shadow:0 1px 0 color-mix(in srgb,var(--panel-strong) 72%,transparent)}.nav-links{display:flex;align-items:center;gap:6px}.nav-links a,.icon-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:999px;color:var(--muted);transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.nav-links a{padding:0 14px;font-size:.94rem}.nav-links a:hover,.nav-links a[aria-current=page],.icon-button:hover{border-color:color-mix(in srgb,var(--primary) 24%,var(--line));background:var(--panel);color:var(--text);transform:translateY(-1px)}.nav-links a[aria-current=page]{color:var(--primary-strong);box-shadow:inset 0 -2px 0 var(--primary)}.nav-links a:focus-visible,.icon-button:focus-visible,.button:focus-visible,.card:focus-visible,.card-title-link:focus-visible,.repo-link:focus-visible,.tag:focus-visible{outline:3px solid color-mix(in srgb,var(--secondary) 54%,transparent);outline-offset:3px}.icon-button{width:44px;cursor:pointer}.page-main{position:relative;z-index:1;padding:54px 0 82px}.hero{position:relative;display:grid;min-height:min(720px,calc(100vh - 140px));align-items:center;grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr);gap:48px;padding:46px 0 64px}.hero:before,.hero:after{position:absolute;left:0;width:min(560px,58vw);height:1px;content:"";background:linear-gradient(90deg,transparent,var(--primary),var(--secondary),transparent);opacity:.48}.hero:before{top:16px}.hero:after{bottom:24px}.hero-copy{position:relative}.hero-copy:before{position:absolute;top:-30px;left:-24px;width:78px;height:78px;border:1px solid color-mix(in srgb,var(--primary) 30%,transparent);border-radius:14px;content:"";opacity:.58;transform:rotate(10deg)}.hero-copy:after{position:absolute;right:min(5vw,48px);bottom:-44px;color:color-mix(in srgb,var(--primary) 18%,transparent);content:"ねこ";font-family:var(--font-display);font-size:5.8rem;line-height:1;pointer-events:none;transform:rotate(-8deg)}.eyebrow{display:inline-flex;width:fit-content;align-items:center;gap:8px;margin:0 0 18px;color:var(--primary-strong);font-size:.92rem;font-weight:800;letter-spacing:.04em}.eyebrow:before{width:24px;height:2px;border-radius:999px;content:"";background:linear-gradient(90deg,var(--primary),var(--secondary))}h1,h2,h3{font-family:var(--font-display);margin:0;line-height:1.14;text-wrap:balance}h1{max-width:780px;font-size:4.35rem;text-shadow:0 2px 0 color-mix(in srgb,var(--panel-strong) 88%,transparent),0 14px 28px color-mix(in srgb,var(--primary) 13%,transparent)}h2{font-size:2.2rem}h3{font-size:1.08rem}.lead{max-width:700px;margin:22px 0 0;color:var(--muted);font-size:1.06rem;line-height:1.9}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero-ledger{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px;color:var(--muted)}.hero-ledger span{display:inline-flex;min-height:38px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:0 13px;background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 9%,transparent),color-mix(in srgb,var(--secondary) 8%,transparent)),color-mix(in srgb,var(--panel) 82%,transparent);box-shadow:0 8px 22px #1d70b412}.hero-ledger strong{margin-right:5px;color:var(--primary-strong);font-variant-numeric:tabular-nums}.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:0 17px;background:linear-gradient(180deg,rgba(255,255,255,.34),transparent),var(--panel);color:var(--text);font-weight:800;box-shadow:0 10px 24px #1d70b41a;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.button.primary{border-color:color-mix(in srgb,var(--primary-strong) 44%,var(--secondary));background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;box-shadow:0 12px 26px #1f93e140}.button:hover{border-color:color-mix(in srgb,var(--primary) 52%,var(--line));transform:translateY(-2px)}.button:active{transform:translateY(0) scale(.98)}.hero-visual{position:relative;min-height:430px;perspective:900px}.profile-panel{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:linear-gradient(150deg,color-mix(in srgb,var(--primary) 12%,transparent),transparent 34%),linear-gradient(330deg,color-mix(in srgb,var(--secondary) 15%,transparent),transparent 42%),repeating-linear-gradient(90deg,transparent 0 18px,color-mix(in srgb,var(--secondary) 5%,transparent) 18px 19px),var(--panel);box-shadow:var(--shadow);transform-origin:center}.profile-panel:after{position:absolute;right:18px;bottom:18px;width:88px;height:52px;border:1px solid color-mix(in srgb,var(--primary) 36%,transparent);border-radius:999px;content:"";opacity:.42;transform:rotate(-8deg)}.profile-panel:before{position:absolute;inset:0;pointer-events:none;content:"";background-image:linear-gradient(135deg,rgba(255,255,255,.24) 25%,transparent 25%),linear-gradient(225deg,rgba(255,255,255,.14) 25%,transparent 25%);background-position:0 0,18px 18px;background-size:36px 36px;opacity:.44}.seal-stamp{position:absolute;top:22px;right:22px;z-index:2;display:grid;width:72px;height:52px;place-items:center;border:2px solid rgba(255,255,255,.72);border-radius:12px;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 54%,var(--accent)));color:#fff;font-family:var(--font-body);font-size:.92rem;font-weight:900;letter-spacing:.06em;line-height:1.1;box-shadow:0 14px 28px #1f93e140;transform:rotate(8deg)}.profile-cover{height:174px;background:linear-gradient(0deg,rgba(26,54,84,.28),transparent 60%),linear-gradient(135deg,#43b8ff66,#7bdcff8f 58%,#ffe66f47),url(https://github.com/shitianyaa.png) center / cover;filter:saturate(1.18) contrast(1.02)}.profile-body{position:relative;padding:0 26px 26px}.avatar{width:108px;height:108px;margin-top:-54px;border:5px solid var(--panel-strong);border-radius:16px;background:var(--panel-strong);box-shadow:var(--shadow)}.profile-meta{display:grid;gap:10px;margin-top:18px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.stat{border:1px solid var(--line);border-radius:8px;padding:14px;background:color-mix(in srgb,var(--panel-strong) 76%,transparent);transition:transform .16s ease,border-color .16s ease,background .16s ease}.stat:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));background:color-mix(in srgb,var(--panel-strong) 92%,transparent);transform:translateY(-2px)}.stat strong{display:block;color:var(--text);font-size:1.24rem}.stat span{color:var(--muted);font-size:.84rem}.section{position:relative;padding:36px 0}.section:before{position:absolute;top:8px;left:0;width:42px;height:3px;border-radius:999px;content:"";background:linear-gradient(90deg,var(--primary),var(--secondary));opacity:.86}.section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:22px}.section-head p{max-width:600px;margin:8px 0 0;color:var(--muted);line-height:1.8}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{position:relative;overflow:hidden;display:flex;min-height:100%;flex-direction:column;border:1px solid var(--line);border-radius:8px;padding:20px;background:linear-gradient(180deg,rgba(255,255,255,.32),transparent 72px),var(--panel);box-shadow:0 14px 34px #1d70b41c;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.card:before{position:absolute;inset:0 0 auto;height:4px;content:"";background:linear-gradient(90deg,var(--primary),var(--accent),var(--secondary),var(--mint));opacity:.78;transform:scaleX(1);transform-origin:left;transition:opacity .18s ease}.card:after{position:absolute;right:14px;bottom:14px;width:48px;height:48px;border:1px solid color-mix(in srgb,var(--primary) 27%,transparent);border-radius:12px;content:"☆";color:color-mix(in srgb,var(--primary) 36%,transparent);display:grid;place-items:center;font-size:1.12rem;opacity:.46;transform:rotate(-8deg);transition:opacity .18s ease,transform .18s ease}.card:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line));box-shadow:0 18px 40px #1d70b429;transform:translateY(-3px)}.card:hover:before{opacity:1}.card:hover:after{opacity:.76;transform:rotate(-3deg) scale(1.04)}.card p{color:var(--muted);line-height:1.72}.card-title-link{color:var(--text);text-decoration:none}.card-title-link:hover{color:var(--primary-strong)}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:16px}.repo-link{position:relative;z-index:1;display:grid;gap:4px;margin-top:14px;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:8px;padding:10px 12px;background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 12%,transparent),color-mix(in srgb,var(--secondary) 10%,transparent)),color-mix(in srgb,var(--panel-strong) 76%,transparent);box-shadow:0 10px 22px #1d70b414;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.repo-link span{color:var(--primary-strong);font-size:.78rem;font-weight:800}.repo-link strong{overflow-wrap:anywhere;color:var(--text);font-size:.85rem;font-weight:700;line-height:1.45}.repo-link:hover{border-color:color-mix(in srgb,var(--primary) 56%,var(--line));box-shadow:0 14px 28px #1d70b41f;transform:translateY(-1px)}.repo-link-wide{margin-top:18px;max-width:720px}.tag{display:inline-flex;min-height:28px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:0 11px;background:color-mix(in srgb,var(--bg-soft) 78%,transparent);color:var(--muted);font-size:.8rem;transition:border-color .16s ease,color .16s ease,transform .16s ease}.tag:hover{border-color:color-mix(in srgb,var(--secondary) 54%,var(--line));color:var(--text);transform:translateY(-1px)}.meta{color:var(--muted);font-size:.9rem}.article{width:min(880px,100%);margin:0 auto}.article-header{margin-bottom:30px}.article-header h1{font-size:3.75rem}.prose{color:var(--text);font-size:1.02rem;line-height:1.9}.prose h2,.prose h3{margin-top:2.2em;margin-bottom:.7em}.prose p,.prose ul,.prose ol,.prose pre,.prose table{margin:1.1em 0}.prose a{color:var(--primary-strong);text-decoration:underline;text-underline-offset:.2em}.prose code{border-radius:6px;padding:.16em .34em;background:color-mix(in srgb,var(--secondary) 14%,transparent);font-size:.92em}.prose pre{overflow-x:auto;border:1px solid color-mix(in srgb,var(--secondary) 18%,transparent);border-radius:8px;padding:16px;background:var(--code-bg);color:#f3fbff}.prose pre code{padding:0;background:transparent}.prose blockquote{margin:1.4em 0;border-left:4px solid var(--primary);padding-left:1em;color:var(--muted);background:color-mix(in srgb,var(--bg-soft) 42%,transparent)}.prose table{display:block;overflow-x:auto;border-collapse:collapse}.prose th,.prose td{border:1px solid var(--line);padding:8px 10px}.empty{border:1px dashed var(--line);border-radius:8px;padding:28px;color:var(--muted);background:var(--panel)}.site-footer{position:relative;z-index:1;border-top:1px solid var(--line);padding:26px 0;color:var(--muted)}@media(prefers-reduced-motion:no-preference){.atmosphere-line{animation:drift-line 9s ease-in-out infinite alternate}.line-two{animation-duration:11s}.sakura-orbit,.sticker-dot,.sparkle-mark{animation:float-sticker 8s ease-in-out infinite alternate}.orbit-two,.dot-two,.mark-two{animation-duration:10s}.hero:before,.hero:after{animation:rule-draw .76s ease-out both;transform-origin:left}.hero:after{animation-delay:.12s}.eyebrow,.hero-copy h1,.hero-copy .lead,.hero-actions,.hero-ledger,.article-header,.prose{animation:pop-in .52s ease-out both}.hero-copy h1{animation-delay:70ms}.hero-copy .lead{animation-delay:.14s}.hero-actions{animation-delay:.21s}.hero-ledger{animation-delay:.27s}.profile-panel{animation:card-arrive .72s cubic-bezier(.2,.75,.25,1) .13s both}.seal-stamp{animation:sticker-pop .52s cubic-bezier(.2,.9,.2,1.08) .52s both}.stat,.card{animation:pop-in .46s ease-out both}.stat:nth-child(2),.grid .card:nth-child(2){animation-delay:70ms}.stat:nth-child(3),.grid .card:nth-child(3){animation-delay:.14s}.grid .card:nth-child(4){animation-delay:.21s}.grid .card:nth-child(5){animation-delay:.28s}.grid .card:nth-child(6){animation-delay:.35s}@keyframes pop-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes card-arrive{0%{opacity:0;transform:rotateX(8deg) translateY(22px) scale(.98)}to{opacity:1;transform:rotateX(0) translateY(0) scale(1)}}@keyframes sticker-pop{0%{opacity:0;transform:rotate(8deg) scale(1.28)}62%{opacity:1;transform:rotate(8deg) scale(.92)}to{opacity:1;transform:rotate(8deg) scale(1)}}@keyframes rule-draw{0%{opacity:0;transform:scaleX(0)}to{opacity:.48;transform:scaleX(1)}}@keyframes drift-line{0%{transform:translate(var(--line-x)) rotate(var(--line-rotate)) translateY(0)}to{transform:translate(var(--line-x)) rotate(var(--line-rotate)) translateY(9px)}}@keyframes float-sticker{0%{translate:0 0}to{translate:0 10px}}}@media(max-width:820px){.site-shell{width:min(100% - 22px,1120px)}.nav-bar{align-items:flex-start;flex-direction:column;padding:14px 0}.nav-links{width:100%;overflow-x:auto;padding-bottom:2px}.hero{min-height:auto;grid-template-columns:1fr;gap:26px;padding:22px 0 46px}.hero:before,.hero:after{width:100%}.hero-copy:before{left:-12px;width:58px;height:58px}.hero-copy:after{display:none}h1{font-size:3rem}h2{font-size:1.75rem}.article-header h1{font-size:2.55rem}.hero-visual{min-height:auto}.seal-stamp{width:64px;height:46px;font-size:.82rem}.hero-ledger span{flex:1 1 150px}.grid,.grid.two{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.stat-grid{grid-template-columns:1fr}}@media(max-width:480px){.page-main{padding-top:34px}.page-atmosphere{height:290px}.nav-links a{padding:0 11px}h1{font-size:2.42rem}.lead{font-size:1rem}.article-header h1{font-size:2.12rem}.hero-ledger{display:grid;grid-template-columns:1fr}.profile-body{padding:0 18px 20px}}
