:root{color-scheme:light;--bg:#edf2f8;--surface:#fff;--glass:#ffffffd1;--text:#29364a;--muted:#627389;--accent:#4675b5;--accent-strong:#355f98;--soft:#eaf1fc;--border:#8fa6c733;--glass-border:#ffffffd9;--shadow:0 6px 30px #3a59880d;--glow:#98b8e533;--cover:#dbe8f9;font-synthesis:none;font-family:Segoe UI,Microsoft YaHei,sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg:#111820;--surface:#1c2530;--glass:#1d2734d4;--text:#e5ecf5;--muted:#a5b4c8;--accent:#96bdf2;--accent-strong:#b3d0f7;--soft:#293b52;--border:#a5bfe31f;--glass-border:#b1cbee24;--shadow:0 6px 30px #0000001a;--glow:#41639529;--cover:#263d59}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){color-scheme:dark;--bg:#111820;--surface:#1c2530;--glass:#1d2734d4;--text:#e5ecf5;--muted:#a5b4c8;--accent:#96bdf2;--accent-strong:#b3d0f7;--soft:#293b52;--border:#a5bfe31f;--glass-border:#b1cbee24;--shadow:0 6px 30px #0000001a;--glow:#41639529;--cover:#263d59}}*{box-sizing:border-box}html{scroll-padding-top:112px}body{color:var(--text);background:radial-gradient(ellipse at 15% 0%, var(--glow), transparent 48%), radial-gradient(ellipse at 95% 25%, var(--glow), transparent 45%), var(--bg);min-height:100vh;margin:0}a{color:inherit;text-decoration:none}a,button,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button,select{font:inherit}.ui-icon{vertical-align:middle;flex:none;width:18px;height:18px;display:inline-flex}.ui-icon svg{stroke-width:1.8px;width:100%;height:100%;display:block}a:has(>.ui-icon){align-items:center;gap:6px;display:inline-flex}.container{width:min(1240px,100% - 48px);margin-inline:auto}.glass{background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow)}@supports (backdrop-filter:blur(1px)){.glass{-webkit-backdrop-filter:blur(18px)}}.surface{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:24px}.site-header{z-index:10;border-radius:22px;justify-content:space-between;align-items:center;gap:24px;min-height:76px;margin-top:16px;padding:14px 26px;display:flex;position:sticky;top:16px}.site-header.glass{background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(32px)}.brand{letter-spacing:-.6px;align-items:center;gap:10px;font-size:21px;font-weight:750;display:flex}.brand-symbol{background:var(--soft);width:34px;height:34px;color:var(--accent);border-radius:11px;place-items:center;display:inline-grid}nav{gap:6px;display:flex}nav a{color:var(--muted);border-radius:12px;padding:10px 18px;font-size:14px;font-weight:600}nav a:hover,nav a[aria-current]{color:var(--accent);background:var(--soft)}.theme-control{border:1px solid var(--border);background:var(--soft);width:44px;height:44px;color:var(--accent);cursor:pointer;border-radius:13px;flex-shrink:0;place-items:center;display:grid}.theme-control:hover{color:var(--accent-strong)}:root[data-theme-transition] *,:root[data-theme-transition] :before,:root[data-theme-transition] :after{transition:none!important}:root[data-theme-transition]::view-transition-group(root){animation:none}:root[data-theme-transition]::view-transition-old(root),:root[data-theme-transition]::view-transition-new(root){mix-blend-mode:normal;animation:none}:root[data-theme-transition]::view-transition-old(root){z-index:1}:root[data-theme-transition]::view-transition-new(root){z-index:2;animation:.5s cubic-bezier(.4,0,.2,1) both theme-reveal}@keyframes theme-reveal{0%{clip-path:circle(0 at var(--theme-reveal-x) var(--theme-reveal-y))}to{clip-path:circle(var(--theme-reveal-radius) at var(--theme-reveal-x) var(--theme-reveal-y))}}.theme-control svg{width:21px;height:21px}.theme-moon,:root[data-theme=dark] .theme-sun{display:none}:root[data-theme=dark] .theme-moon{display:block}.site-shell{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:24px;margin-top:26px;display:grid}.page-content{min-width:0}.profile-sidebar{gap:18px;display:grid}.profile-panel,.sidebar-panel{border-radius:24px;overflow:hidden}.profile-panel{padding:12px}.profile-cover{background:linear-gradient(135deg, var(--cover), var(--soft));border-radius:17px;flex-direction:column;justify-content:center;align-items:center;height:184px;display:flex;position:relative;overflow:hidden}.profile-cover:before,.profile-cover:after{content:"";border:1px solid var(--accent);opacity:.16;border-radius:40px;width:190px;height:190px;position:absolute;transform:rotate(30deg)}.profile-cover:after{width:130px;height:130px;transform:rotate(-20deg)}.profile-monogram{color:var(--accent);font-family:Georgia,serif;font-size:76px;font-weight:700;line-height:1;position:relative}.profile-monogram>span{opacity:.6}.cover-caption{letter-spacing:2px;color:var(--accent-strong);margin-top:18px;font-size:10px;position:relative}.profile-info{text-align:center;padding:20px 8px 8px}.profile-info h2{letter-spacing:-.4px;margin:0;font-size:22px}.profile-rule{background:var(--accent);border-radius:3px;width:25px;height:3px;margin:12px auto;display:block}.profile-info p{color:var(--muted);margin:0 0 12px;font-size:13px;line-height:1.9}.profile-role{color:var(--muted);font-size:12px}.profile-links{justify-content:center;gap:8px;margin-top:20px;display:flex}.profile-links a{color:var(--accent);background:var(--soft);border-radius:10px;padding:9px 12px;font-size:12px;font-weight:600}.profile-links a:hover{color:var(--accent-strong)}.sidebar-panel{padding:23px 20px}.accent-heading{align-items:center;gap:10px;display:flex}.accent-heading:before{content:"";background:var(--accent);border-radius:3px;flex:0 0 4px;height:18px;display:block}.sidebar-panel h2{margin:0 0 18px;font-size:15px}.category-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.category-list a{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:7px 0;font-size:13px;display:flex}.category-list a:hover{color:var(--accent)}.category-count{min-width:25px;height:25px;color:var(--accent);background:var(--soft);border-radius:8px;place-items:center;font-size:12px;display:grid}.topics,.project-tags{flex-wrap:wrap;gap:8px;display:flex}.topics span,.topics a,.project-tags li{background:var(--soft);color:var(--accent-strong);border-radius:8px;padding:5px 10px;font-size:12px}.topics a:hover{color:var(--accent)}.eyebrow{color:var(--accent);letter-spacing:1.8px;margin:0 0 22px;font-size:11px;font-weight:650}h1{letter-spacing:-1.5px;margin:0 0 22px;font-size:clamp(32px,4.5vw,49px);font-weight:750;line-height:1.35}h1 span{color:var(--accent)}.hero{background:linear-gradient(115deg, var(--surface) 65%, var(--soft));padding:46px}.hero-description{color:var(--muted);margin:0;font-size:16px;line-height:1.9}.actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.button{border:1px solid var(--border);color:var(--accent);background:var(--soft);border-radius:12px;justify-content:center;align-items:center;gap:18px;padding:12px 19px;font-size:13px;font-weight:650;transition:background .15s,transform .15s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{color:#fff;background:#4675b5;border-color:#4675b5}.button.primary:hover{background:#355f98}.hero .topics{margin-top:24px}.featured,.explore{margin-top:30px}.section-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:17px;padding-inline:8px;display:flex}.section-heading h2{margin:0;font-size:19px}.section-heading>span,.section-heading>a{color:var(--muted);font-size:12px}.section-heading>a:hover{color:var(--accent)}.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:20px;padding:23px;transition:transform .15s}.card:hover{transform:translateY(-3px)}.card-number{color:var(--accent);justify-content:space-between;font-size:12px;display:flex}.card h3{margin:23px 0 10px;font-size:17px}.card p{color:var(--muted);margin:0;font-size:12px;line-height:1.9}.projects-intro{margin-bottom:30px;padding:35px 38px}.projects-intro h1{margin-bottom:14px;font-size:36px}.projects-intro>p:not(.eyebrow){color:var(--muted);margin:0;font-size:14px;line-height:1.9}.projects-intro .actions{margin-top:20px}.project-group{scroll-margin-top:112px}.project-group+.project-group{margin-top:30px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.project-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;flex-direction:column;padding:26px;transition:transform .15s,border-color .15s;display:flex}.project-card:hover{border-color:var(--accent);transform:translateY(-3px)}.project-card-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.project-category{color:var(--muted);font-size:11px}.project-mark{width:30px;height:30px;color:var(--accent);background:var(--soft);border-radius:9px;place-items:center;display:grid}.project-card h3{letter-spacing:-.3px;overflow-wrap:anywhere;margin:0 0 12px;font-size:20px;line-height:1.5}.project-card h3 a:hover{color:var(--accent)}.project-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.95}.project-tags{margin:auto 0 0;padding:22px 0;list-style:none}.project-tags li{padding:4px 8px;font-size:11px}.project-links{border-top:1px solid var(--border);color:var(--accent);flex-wrap:wrap;gap:20px;padding-top:16px;font-size:12px;font-weight:650;display:flex}.project-links a:hover{color:var(--accent-strong);text-underline-offset:4px;text-decoration:underline}.placeholder{min-height:570px;padding:38px}.placeholder>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.9}.placeholder>.button{margin-top:25px}.empty-state{text-align:center;background:var(--soft);color:var(--muted);border-radius:18px;margin-top:30px;padding:52px 20px}.empty-state>span{background:var(--surface);width:44px;height:44px;color:var(--accent);border-radius:14px;place-items:center;font-size:28px;display:inline-grid}.empty-state h2{color:var(--text);margin:18px 0 8px;font-size:18px}.empty-state p{font-size:13px}.site-footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:20px;padding:30px 8px;font-size:12px;display:flex}.site-footer a:hover{color:var(--accent)}.skip-link{z-index:20;background:var(--surface);border-radius:8px;padding:12px;position:absolute;top:-100px;left:20px}.skip-link:focus{top:10px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1050px){.site-shell{grid-template-columns:220px minmax(0,1fr);gap:20px}.hero{padding:34px}.project-card{padding:22px}.cards{grid-template-columns:1fr}.card h3{margin-top:12px}}@media (width<=800px){.container{width:calc(100% - 32px)}.site-header{flex-wrap:wrap;gap:12px;padding:13px 18px;top:10px}.brand{font-size:19px}nav{order:3;justify-content:space-between;width:100%}nav a{text-align:center;flex:1;padding:9px}.theme-control{margin-left:auto}.site-shell{grid-template-columns:1fr;margin-top:20px}.profile-sidebar{display:none}.project-group{scroll-margin-top:145px}html{scroll-padding-top:145px}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=540px){.container{width:calc(100% - 24px)}.site-header{border-radius:18px;margin-top:10px;padding:12px 14px}.hero,.projects-intro,.placeholder{border-radius:22px;padding:28px 24px}.hero-description{font-size:14px}h1{letter-spacing:-.8px;font-size:34px}.projects-intro h1{font-size:30px}.eyebrow{letter-spacing:1px;font-size:10px}.project-grid,.cards{grid-template-columns:1fr}.project-card{padding:24px}.card{padding:22px}.section-heading h2{font-size:17px}.placeholder{min-height:530px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}}
