:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;--bg-color: #FFFDFB;--theme-color: #ffc0cf;--accent-color: #f687ae;--darker-accent-color: #E75480;--heading-color: #333;--text-color: #555;--subtext-color: #666;--light-gray: #AAA;--white-color: #FFF;--heading-weight: 700;--subtitle-weight: 600;--text-weight: 500;line-height:1.5;font-weight:500;color-scheme:light dark;color:#ffffffde;background-color:var(--bg-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}a{text-decoration:none;color:var(--accent-color);transition:color .3s ease}a:hover{color:var(--theme-color)}a.no-color-link{color:var(--text-color)}a.no-color-link:hover{color:var(--accent-color)}html{scroll-behavior:smooth}h1{font-size:48px;color:var(--heading-color)}.text{font-family:Quicksand,HarmonyOS Sans,sans-serif;color:var(--text-color)}.subtext{font-family:Quicksand,HarmonyOS Sans,sans-serif;color:var(--subtext-color);font-size:.9em!important}.interact{font-family:Quicksand,Lovely,sans-serif}#copyleft{display:inline-block;transform:scaleX(-1)}@font-face{font-family:Jetbrains Mono;src:url(/fonts/JetBrains/JetBrainsMono-Thin.ttf);font-weight:100}@font-face{font-family:Jetbrains Mono;src:url(fonts/JetBrains/JetBrainsMono-ExtraLight.ttf);font-weight:200}@font-face{font-family:Jetbrains Mono;src:url(/fonts/JetBrains/JetBrainsMono-Light.ttf);font-weight:300}@font-face{font-family:Jetbrains Mono;src:url(/fonts/JetBrains/JetBrainsMono-Regular.ttf);font-weight:400}@font-face{font-family:Jetbrains Mono;src:url(/fonts/JetBrains/JetBrainsMono-Medium.ttf);font-weight:500}@font-face{font-family:Jetbrains Mono;src:url(/fonts/JetBrains/JetBrainsMono-SemiBold.ttf);font-weight:600}@font-face{font-family:Jetbrains Mono;src:url(/fonts/JetBrains/JetBrainsMono-Bold.ttf);font-weight:700}@font-face{font-family:Jetbrains Mono;src:url(/fonts/JetBrains/JetBrainsMono-ExtraBold.ttf);font-weight:800}@font-face{font-family:Verdana;src:url(/fonts/Verdana-1.ttf)}@font-face{font-family:Poppins;src:url(/fonts/Poppins/Poppins-Thin.ttf);font-weight:100}@font-face{font-family:Poppins;src:url(/fonts/Poppins/Poppins-ExtraLight.ttf);font-weight:200}@font-face{font-family:Poppins;src:url(/fonts/Poppins/Poppins-Light.ttf);font-weight:300}@font-face{font-family:Poppins;src:url(/fonts/Poppins/Poppins-Regular.ttf);font-weight:400}@font-face{font-family:Poppins;src:url(/fonts/Poppins/Poppins-Medium.ttf);font-weight:500}@font-face{font-family:Poppins;src:url(/fonts/Poppins/Poppins-SemiBold.ttf);font-weight:600}@font-face{font-family:Poppins;src:url(/fonts/Poppins/Poppins-Bold.ttf);font-weight:700}@font-face{font-family:Poppins;src:url(/fonts/Poppins/Poppins-ExtraBold.ttf);font-weight:800}@font-face{font-family:Poppins;src:url(/fonts/Poppins/Poppins-Black.ttf);font-weight:900}@font-face{font-family:Geo;src:url(/fonts/Geo/Geogtq-Th.otf);font-weight:100}@font-face{font-family:Geo;src:url(/fonts/Geo/Geogtq-Ul.otf);font-weight:200}@font-face{font-family:Geo;src:url(/fonts/Geo/Geogtq-Lg.otf);font-weight:300}@font-face{font-family:Geo;src:url(/fonts/Geo/Geogtq-Rg.otf);font-weight:400}@font-face{font-family:Geo;src:url(/fonts/Geo/Geogtq-Md.otf);font-weight:500}@font-face{font-family:Geo;src:url(/fonts/Geo/Geogtq-Sb.otf);font-weight:600}@font-face{font-family:Geo;src:url(/fonts/Geo/Geogtq-Bd.otf);font-weight:700}@font-face{font-family:SF;src:url(/fonts/SF/SanFranciscoDisplay-Thin-9.otf);font-weight:100}@font-face{font-family:SF;src:url(/fonts/SF/SanFranciscoDisplay-Ultralight-10.otf);font-weight:200}@font-face{font-family:SF;src:url(/fonts/SF/SanFranciscoDisplay-Light-6.otf);font-weight:300}@font-face{font-family:SF;src:url(/fonts/SF/SanFranciscoDisplay-Regular-2.otf);font-weight:400}@font-face{font-family:SF;src:url(/fonts/SF/SanFranciscoDisplay-Medium-7.otf);font-weight:500}@font-face{font-family:SF;src:url(/fonts/SF/SanFranciscoDisplay-Semibold-8.otf);font-weight:600}@font-face{font-family:SF;src:url(/fonts/SF/SanFranciscoDisplay-Bold-4.otf);font-weight:700}@font-face{font-family:SF;src:url(/fonts/SF/SanFranciscoDisplay-Heavy-5.otf);font-weight:800}@font-face{font-family:SF;src:url(/fonts/SF/SanFranciscoDisplay-Black-3.otf);font-weight:900}@font-face{font-family:HarmonyOS Sans;src:url(/fonts/Harmony/HarmonyOS_SansSC_Thin.ttf);font-weight:100}@font-face{font-family:HarmonyOS Sans;src:url(/fonts/Harmony/HarmonyOS_SansSC_Light.ttf);font-weight:300}@font-face{font-family:HarmonyOS Sans;src:url(/fonts/Harmony/HarmonyOS_SansSC_Regular.woff2) format(woff2),url(/fonts/Harmony/HarmonyOS_SansSC_Regular.ttf) format(truetype);font-weight:400;font-display:swap}@font-face{font-family:HarmonyOS Sans;src:url(/fonts/Harmony/HarmonyOS_SansSC_Medium.woff2) format(woff2),url(/fonts/Harmony/HarmonyOS_SansSC_Medium.ttf) format(truetype);font-weight:500;font-display:swap}@font-face{font-family:HarmonyOS Sans;src:url(/fonts/Harmony/HarmonyOS_SansSC_Bold.woff2)format(woff2),url(/fonts/Harmony/HarmonyOS_SansSC_Bold.ttf)format(truetype);font-weight:700}@font-face{font-family:Quicksand;src:url(/fonts/Quicksand/Quicksand-Light.ttf);font-weight:300}@font-face{font-family:Quicksand;src:url(/fonts/Quicksand/Quicksand-Regular.ttf);font-weight:400}@font-face{font-family:Quicksand;src:url(/fonts/Quicksand/Quicksand-Medium.ttf);font-weight:500}@font-face{font-family:Quicksand;src:url(/fonts/Quicksand/Quicksand-SemiBold.ttf);font-weight:600}@font-face{font-family:Quicksand;src:url(/fonts/Quicksand/Quicksand-Bold.ttf);font-weight:700}@font-face{font-family:Lovely;src:url(/fonts/Lovely.woff2)format(woff2),url(/fonts/Lovely.ttf)format(truetype)}#app{max-width:1280px;padding:4rem;margin:0 auto}@media screen and (max-width: 768px){#app{padding:3rem}}@media screen and (max-width: 542px){#app{padding:2rem}}.main-content{padding-top:80px;text-align:left;margin:0 auto}.main-title{font-weight:var(--heading-weight);font-size:128px;line-height:1;color:var(--heading-color);margin-bottom:16px;transform:translate(-8px)}@media screen and (max-width: 768px){.main-title{font-size:16vw;transform:translate(-1vw)}}.pretitle,.subtitle{font-size:24px;color:var(--text-color);font-weight:var(--subtitle-weight);white-space:nowrap}.pretitle{margin-top:32px}.subtitle{margin-bottom:32px}@media screen and (max-width: 542px){.pretitle,.subtitle{font-size:4.5vw}}.button-bar{display:flex;gap:16px;margin-top:32px}@media screen and (max-width: 400px){.button-bar{flex-direction:column}}.primary-btn,.secondary-btn{padding:12px 24px;border-radius:8px;font-size:18px;font-weight:500;cursor:pointer;transition:all .2s ease}.primary-btn{background-color:var(--accent-color);color:#fff;border:none}.primary-btn:hover{background-color:var(--theme-color)}.secondary-btn{background-color:transparent;color:var(--text-color);border:1px solid var(--light-gray)}.secondary-btn:hover{background-color:#0000000d;border-color:var(--text-color)}.section-title{font-size:44px;color:var(--heading-color);margin:120px 0 40px}@media screen and (max-width: 542px){.section-title{font-size:2rem}}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.project-card{background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:32px;border:1px solid rgba(0,0,0,.05);box-shadow:0 4px 6px #0000001a;cursor:pointer}.project-card h3{font-size:24px;color:var(--heading-color);margin-bottom:18px;transition:color .2s ease}.project-card:hover h3{color:var(--accent-color)}.project-card p{color:var(--text-color);line-height:1.6}.skills-grid{display:grid;gap:24px}.skill-card{background:#ffffff80;padding:24px;border-radius:12px;border:1px solid rgba(0,0,0,.05)}.skill-card h3{margin-bottom:10px;color:var(--heading-color);font-size:24px;transition:color .2s ease}.skill-card:hover h3{color:var(--accent-color)}.skill-desc{color:var(--text-color);font-size:16px;line-height:1.6}.skill-bar{height:8px;background:#0000001a;border-radius:4px;overflow:hidden}.skill-progress{height:100%;background:var(--accent-color);border-radius:4px}.contact-list{display:flex;flex-direction:column;gap:16px;margin-bottom:120px;margin-left:16px}.contact-item{font-size:20px;display:flex}.contact-item span{color:var(--text-color);font-weight:var(--subtitle-weight)}.contact-item a{color:var(--accent-color);font-weight:var(--heading-weight);text-decoration:none;transition:color .2s ease}.contact-item a:hover{color:var(--theme-color)}._navbar_9nkrg_1{position:fixed;top:20px;left:50%;transform:translate(-50%);width:calc(100% - 40px);max-width:1340px;height:60px;background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:16px;display:flex;justify-content:space-between;align-items:center;padding:0 2rem;transition:all .3s ease;z-index:1000;box-shadow:0 4px 5px #0000001a;border:1px solid rgba(0,0,0,.05)}._visible_9nkrg_23{transform:translate(-50%);opacity:1}._hidden_9nkrg_28{transform:translate(-50%,-120%);opacity:0}._links_9nkrg_33{display:flex;gap:2rem}._links_9nkrg_33 a{text-decoration:none;color:#333;font-weight:500;transition:color .2s ease}._links_9nkrg_33 a:hover{color:#000}._active_9nkrg_49{color:var(--accent-color)!important;font-weight:600!important}._navbar_9nkrg_1>span{color:var(--heading-color);font-size:20px;font-weight:var(--subtitle-weight);transform:translateY(-1px)}.list-container{display:flex;gap:40px;max-width:1280px;margin:100px auto 0}.list-content{flex:1}.list-main{text-align:left;max-width:1180px;margin:0 auto}.filter-sidebar{width:200px;position:sticky;top:100px;align-self:flex-start;max-height:70vh;overflow:hidden}.filter-container{background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;box-shadow:0 4px 6px #0000001a;border:1px solid rgba(255,255,255,.3);display:flex;flex-direction:column;gap:16px}.category-buttons{display:flex;flex-direction:column;gap:8px;overflow-y:auto;max-height:calc(70vh - 100px);scrollbar-width:none;-ms-overflow-style:none}.category-buttons::-webkit-scrollbar{display:none}.category-buttons{width:100%}.category-btn{padding:8px 16px;border-radius:8px;border:1px solid rgba(0,0,0,.1);background:transparent;text-align:left;cursor:pointer;transition:all .2s ease;font-size:14px;color:var(--text-color);font-weight:var(--text-weight)}.category-btn:hover{background:#0000000d}.category-btn.active{background:var(--accent-color);color:#fff;border-color:var(--theme-color);font-weight:var(--subtitle-weight);box-shadow:1px 1px 2px var(--theme-color)}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:12px;margin-top:40px}.item-card{grid-column:span 2;background:#ffffffb3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:12px 16px 16px;border:1px solid rgba(255,255,255,.3);display:flex;flex-direction:column;gap:8px;overflow:hidden;border-radius:8px}.item-card[data-category=计算机基础]{border-color:#64b5f6}.item-card[data-category=计算机科学]{border-color:#aa0}.item-card[data-category=算法与数据结构]{border-color:#81c784}.item-card[data-category=软件设计]{border-color:#ffb74d}.item-card[data-category=前端开发]{border-color:#59d0a9}.item-card[data-category=开发工具]{border-color:#f06292}.item-card[data-category=后端开发]{border-color:#4dd0e1}.item-card[data-category=监控工具]{border-color:#7986cb}.item-card[data-category=全栈开发]{border-color:#ff7dd8}.item-card[data-category=编程语言]{border-color:#4db6ac}.item-card[data-category=数据库]{border-color:#90a4ae}.item-card[data-category=DevOps]{border-color:#ff8a65}.item-card[data-category=网络编程]{border-color:#5c6bc0}.item-card[data-category=生产力与组织]{border-color:#b39ddb}.item-card[data-category=通讯与协作]{border-color:#80deea}.item-card[data-category=财务管理]{border-color:#a5d6a7}.item-card[data-category=健康与生活]{border-color:#e57373}.item-card[data-category=学习与知识]{border-color:#90caf9}.item-card[data-category=系统与安全]{border-color:#9fa8da}.item-card[data-category=云存储]{border-color:#81d4fa}.item-card[data-category=网络工具]{border-color:#b0bec5}.item-card[data-category=系统工具]{border-color:#bcaaa4}.item-card[data-category=自动化]{border-color:#cbe1a5}.item-card[data-category=嵌入式开发]{border-color:#666}.item-card[data-category=构建工具]{border-color:#a1887f}.item-card[data-category=搜索引擎]{border-color:#8aee5f}.item-card[data-category=数据分析]{border-color:#4fc3f7}.item-card[data-category=API]{border-color:#a9c68f}.item-card[data-category=设计与制作]{border-color:#ff7043}.item-card[data-category=资源库]{border-color:#7e57c2}.item-card[data-category=机器学习]{border-color:#26a69a}.item-card[data-category=跨平台开发]{border-color:#ec407a}.item-card[data-category=编辑工具]{border-color:#66bb6a}.item-card[data-category="AI 助手"]{border-color:#29b6f6}.item-card[data-category=数学]{border-color:#ffa726}.item-card[data-category=数据处理]{border-color:#78909c}.item-card[data-category=游戏开发]{border-color:#ef5350}.item-card[data-category=特定平台开发]{border-color:#8d6e63}.item-card[data-category=娱乐工具]{border-color:#ab47bc}.item-card[data-category=内容平台]{border-color:#c1c165}.item-card h3{font-size:16px;margin:0;color:var(--heading-color)}.item-desc{font-size:12px;line-height:1.4;color:var(--text-color);margin:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical}.item-card[data-size=wide]{grid-column:span 3}.item-card[data-size=wider]{grid-column:span 4}@media (max-width: 768px){.list-container{flex-direction:column}.filter-sidebar{width:100%;position:static;order:-1;margin-bottom:30px}.list-content{order:0}.category-buttons{flex-direction:row;flex-wrap:wrap}.category-btn{flex:0 0 auto;text-align:center}.filter-container{flex-direction:column-reverse}}.search-input{width:100%;padding:10px 16px;margin-bottom:16px;border-radius:8px;border:1px solid rgba(0,0,0,.1);background:#ffffff80;font-size:14px;color:var(--text-color);box-sizing:border-box;transition:border-color .2s ease,background-color .2s ease;line-height:normal;font-family:HarmonyOS Sans}.search-input::placeholder{color:var(--text-color-secondary);opacity:.8}.search-input:focus{outline:none;border-color:var(--accent-color);background-color:#ffffffb3}.category-filters{width:100%}._footer_p9hu8_1{margin-top:80px;padding:20px 0;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1)}._footerContent_p9hu8_9{margin:0 auto;display:flex;justify-content:space-between;align-items:center}._footerLeft_p9hu8_16 p{margin:0;font-size:14px;opacity:.8}._footerRight_p9hu8_22{display:flex;gap:20px}._footerLink_p9hu8_27{color:var(--text-color);text-decoration:none;font-size:14px;opacity:.8;transition:all .3s}._footerLink_p9hu8_27:hover{opacity:1;color:var(--accent-color)}@media (max-width: 768px){._footerContent_p9hu8_9{flex-direction:column;gap:10px;text-align:center}}.about-container{max-width:1280px;margin:100px auto 0}.about-main{margin:0 auto}.about-subtitle{font-size:1.5rem;color:var(--text-color);font-weight:var(--subtitle-weight);white-space:nowrap}.about-section{margin-bottom:60px}.section-content{margin-top:20px}.section-content p{margin:12px 0;font-size:17px;line-height:1.6}
