.theme-toggle[data-v-a264b8eb]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;color:var(--text-secondary);transition:all var(--transition-fast)}.theme-toggle[data-v-a264b8eb]:hover{color:var(--text-primary);background:var(--bg-tertiary)}.search-input[data-v-b8973af6]{display:flex;align-items:center;gap:var(--sp-xs);padding:6px 12px;border-radius:8px;background:var(--bg-tertiary);border:1px solid transparent;transition:all var(--transition-fast)}.search-input[data-v-b8973af6]:focus-within{border-color:var(--border-hover);background:var(--bg-card)}.search-icon[data-v-b8973af6]{color:var(--text-tertiary);flex-shrink:0}.search-field[data-v-b8973af6]{border:none;background:transparent;outline:none;font-size:var(--fs-small);color:var(--text-primary);width:140px}.search-field[data-v-b8973af6]::placeholder{color:var(--text-tertiary)}.site-logo[data-v-0d35e435]{display:inline-flex;align-items:center;gap:8px;text-decoration:none;user-select:none}.site-logo__mark[data-v-0d35e435]{flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(59,130,246,.15))}.site-logo__text[data-v-0d35e435]{display:inline-flex;flex-direction:column;line-height:1.05}.site-logo__cn[data-v-0d35e435]{font-family:var(--font-heading, "PingFang SC", "Microsoft YaHei", sans-serif);font-size:1.2rem;font-weight:800;letter-spacing:.04em;color:var(--category-topics, #1f2937)}.site-logo__en[data-v-0d35e435]{font-size:.7rem;font-weight:500;letter-spacing:.15em;color:var(--text-secondary, #6b7280);text-transform:uppercase}.site-logo--compact .site-logo__cn[data-v-0d35e435]{font-size:1rem}.app-nav[data-v-d0874add]{position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);height:var(--nav-height);background:var(--bg-nav);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color var(--transition-normal)}.app-nav.scrolled[data-v-d0874add]{border-bottom-color:var(--border-color)}.nav-inner[data-v-d0874add]{display:flex;align-items:center;height:100%;gap:var(--sp-lg)}.nav-logo[data-v-d0874add]{display:flex;align-items:center;gap:6px;text-decoration:none;flex-shrink:0}.logo-sub[data-v-d0874add]{font-size:var(--fs-small);color:var(--text-secondary);font-weight:400}.nav-links[data-v-d0874add]{display:flex;align-items:center;gap:var(--sp-xxs);flex:1;justify-content:center}.nav-link[data-v-d0874add]{display:flex;align-items:center;gap:4px;padding:6px 14px;border-radius:8px;font-size:var(--fs-small);font-weight:500;color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast),opacity var(--transition-fast);white-space:nowrap}.nav-link[data-v-d0874add]:hover{color:var(--text-primary);background:var(--bg-tertiary)}.nav-link.active[data-v-d0874add]{color:var(--nav-accent, var(--category-topics));background:color-mix(in srgb,var(--nav-accent, #ff3e6c) 12%,transparent)}.nav-emoji[data-v-d0874add]{font-size:.85em;margin-right:.15em}.nav-link-about[data-v-d0874add]{--nav-accent: var(--text-primary)}.nav-actions[data-v-d0874add]{display:flex;align-items:center;gap:var(--sp-xs)}.mobile-menu-btn[data-v-d0874add]{display:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;color:var(--text-secondary);transition:color var(--transition-fast),opacity var(--transition-fast)}.mobile-menu-btn[data-v-d0874add]:hover{color:var(--text-primary);background:var(--bg-tertiary)}@media(max-width:1024px){.nav-links[data-v-d0874add]{gap:0}.nav-link[data-v-d0874add]{padding:6px 10px;font-size:.8rem}.nav-search[data-v-d0874add]{display:none}}@media(max-width:768px){.nav-links[data-v-d0874add]{position:fixed;top:var(--nav-height);left:0;right:0;bottom:0;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:var(--sp-md);background:linear-gradient(180deg,var(--bg-card) 0%,var(--bg-primary) 64%),var(--bg-primary);border-top:1px solid var(--border-color);box-shadow:0 12px 28px #0000001f;gap:var(--sp-xs);transform:translate(100%);transition:transform .3s var(--ease-out);z-index:var(--z-nav-menu)}.nav-links.open[data-v-d0874add]{transform:translate(0)}.nav-link[data-v-d0874add]{padding:14px 16px;font-size:var(--fs-body);border-radius:10px;color:var(--text-primary);background:linear-gradient(135deg,color-mix(in srgb,var(--nav-accent, var(--category-topics)) 14%,var(--bg-card)),var(--bg-card) 76%),var(--bg-card);border:1px solid color-mix(in srgb,var(--nav-accent, var(--category-topics)) 30%,var(--border-color))}.nav-link[data-v-d0874add]:hover,.nav-link.active[data-v-d0874add]{color:var(--text-primary);background:linear-gradient(135deg,color-mix(in srgb,var(--nav-accent, var(--category-topics)) 22%,var(--bg-card)),var(--bg-card) 72%),var(--bg-card);border-color:color-mix(in srgb,var(--nav-accent, var(--category-topics)) 52%,var(--border-color))}.nav-link-about[data-v-d0874add]{display:none}.mobile-menu-btn[data-v-d0874add]{display:flex}}[data-theme=dark] .nav-links[data-v-d0874add]{background:linear-gradient(180deg,var(--bg-card) 0%,var(--bg-secondary) 70%),var(--bg-secondary);box-shadow:0 18px 36px #00000073}.app-footer[data-v-77746563]{margin-top:var(--sp-3xl);border-top:1px solid var(--border-color);background:var(--bg-secondary)}.footer-inner[data-v-77746563]{display:flex;justify-content:space-between;gap:var(--sp-2xl);padding-top:var(--sp-2xl);padding-bottom:var(--sp-xl)}.footer-brand[data-v-77746563]{flex-shrink:0}.footer-logo[data-v-77746563]{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;color:var(--category-topics);letter-spacing:-.03em}.footer-tagline[data-v-77746563]{font-size:var(--fs-small);color:var(--text-tertiary);margin-top:var(--sp-xxs)}.footer-links[data-v-77746563]{display:flex;gap:var(--sp-2xl)}.footer-col[data-v-77746563]{display:flex;flex-direction:column;gap:var(--sp-xs)}.footer-col h4[data-v-77746563]{font-size:var(--fs-small);font-weight:600;margin-bottom:var(--sp-xxs);font-family:var(--font-body);letter-spacing:0}.footer-col a[data-v-77746563]{font-size:var(--fs-small);color:var(--text-secondary);text-decoration:none}.footer-col a[data-v-77746563]:hover{color:var(--text-primary)}.footer-bottom[data-v-77746563]{padding:var(--sp-lg) 0;border-top:1px solid var(--border-color);text-align:center}.footer-bottom p[data-v-77746563]{font-size:var(--fs-caption);color:var(--text-tertiary)}.footer-legal[data-v-77746563]{padding:var(--sp-md) 0 var(--sp-lg);border-top:1px solid var(--border-color);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--sp-xs)}.footer-copyright[data-v-77746563]{font-size:var(--fs-caption);color:var(--text-tertiary);margin:0}.footer-copyright[data-v-77746563] a{color:var(--text-tertiary);text-decoration:none}.footer-copyright[data-v-77746563] a:hover{color:var(--text-secondary);text-decoration:underline}.footer-records[data-v-77746563]{display:flex;align-items:center;justify-content:center;gap:var(--sp-sm);font-size:var(--fs-caption);color:var(--text-tertiary);flex-wrap:wrap}.footer-record-item[data-v-77746563]{line-height:1}.footer-record-item[data-v-77746563] a{color:var(--text-tertiary);text-decoration:none;font-size:var(--fs-caption)}.footer-record-item[data-v-77746563] a:hover{color:var(--text-secondary);text-decoration:underline}.footer-record-icon[data-v-77746563]{display:inline-flex;align-items:center;vertical-align:middle}.footer-record-icon img[data-v-77746563]{display:block}@media(max-width:768px){.footer-inner[data-v-77746563]{flex-direction:column;gap:var(--sp-lg)}.footer-links[data-v-77746563]{flex-wrap:wrap;gap:var(--sp-lg)}}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary);transition:background .3s ease,color .3s ease}.skip-to-content{position:absolute;top:-100%;left:16px;z-index:var(--z-skip-link);padding:10px 20px;border-radius:8px;background:var(--category-topics);color:#fff;font-size:var(--fs-small);font-weight:600;text-decoration:none;transition:top .2s ease}.skip-to-content:focus{top:10px}.app-main{flex:1;padding-top:var(--nav-height)}@font-face{font-family:Inter;src:url(/fonts/inter-latin.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;src:url(/fonts/inter-latin-ext.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;src:url(/fonts/space-grotesk-latin.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk-latin-ext.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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}:root,[data-theme=light]{--pink: #ff3e6c;--cyan: #00c8e0;--purple: #b44dff;--lime: #a8d608;--orange: #ff6b35;--category-hardware: var(--orange);--category-ai: var(--purple);--category-gaming: var(--cyan);--category-resources: var(--lime);--category-topics: var(--pink);--bg-primary: #ffffff;--bg-secondary: #f5f5f7;--bg-tertiary: #e8e8ed;--bg-card: #ffffff;--bg-card-hover: #fafafa;--bg-nav: rgba(255, 255, 255, .85);--bg-overlay: rgba(0, 0, 0, .4);--text-primary: #1d1d1f;--text-secondary: #6e6e73;--text-tertiary: #aeaeb2;--text-inverse: #ffffff;--text-link: var(--cyan);--border-color: rgba(0, 0, 0, .08);--border-hover: rgba(0, 0, 0, .12);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .12);--success: #34c759;--warning: #ff9500;--error: #ff3b30;--info: #007aff;--font-heading: "Space Grotesk", system-ui, -apple-system, sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "SF Mono", "Consolas", "JetBrains Mono", monospace;--fs-h1: 3rem;--fs-h2: 2rem;--fs-h3: 1.5rem;--fs-h4: 1.25rem;--fs-body: 1rem;--fs-small: .875rem;--fs-caption: .75rem;--lh-tight: 1.15;--lh-normal: 1.6;--lh-relaxed: 1.8;--sp-xxs: 4px;--sp-xs: 8px;--sp-sm: 12px;--sp-md: 16px;--sp-lg: 24px;--sp-xl: 36px;--sp-2xl: 48px;--sp-3xl: 64px;--container-max: 1280px;--nav-height: 64px;--card-radius-sm: 8px;--card-radius-md: 10px;--card-radius-lg: 12px;--z-reading-progress: 100;--z-nav-menu: 900;--z-nav: 1000;--z-skip-link: 1100;--z-modal: 1200;--z-toast: 1300;--z-tooltip: 1400;--accent-primary: var(--category-topics);--accent-secondary: var(--cyan);--accent-positive: var(--lime);--accent-warning: var(--warning);--focus-ring: 0 0 0 3px rgba(0, 200, 224, .28);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease}[data-theme=dark]{color-scheme:dark;--bg-primary: #0a0a0f;--bg-secondary: #12121a;--bg-tertiary: #1c1c28;--bg-card: #161622;--bg-card-hover: #1e1e30;--bg-nav: rgba(10, 10, 15, .88);--bg-overlay: rgba(0, 0, 0, .65);--text-primary: #f0f0f5;--text-secondary: #9898a8;--text-tertiary: #5c5c6e;--text-inverse: #0a0a0f;--text-link: var(--cyan);--border-color: rgba(255, 255, 255, .07);--border-hover: rgba(255, 255, 255, .12);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .5);--success: #30d158;--warning: #ff9f0a;--error: #ff453a;--info: #0a84ff}@media(max-width:768px){:root{--fs-h1: 2rem;--fs-h2: 1.5rem;--fs-h3: 1.25rem;--fs-h4: 1.125rem;--sp-md: 12px;--sp-lg: 18px;--sp-xl: 24px;--sp-2xl: 32px;--sp-3xl: 40px;--nav-height: 56px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%;overflow-x:hidden}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-normal);color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}a{color:var(--text-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--text-primary)}:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:3px;box-shadow:var(--focus-ring)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.03em;line-height:var(--lh-tight)}h1{font-size:var(--fs-h1);font-weight:800}h2{font-size:var(--fs-h2);font-weight:700}h3{font-size:var(--fs-h3);font-weight:700}h4{font-size:var(--fs-h4);font-weight:600}p{line-height:var(--lh-relaxed)}ul,ol{list-style:none}button{cursor:pointer;border:none;background:none}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--sp-lg)}@media(max-width:768px){.container{padding:0 var(--sp-md)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}html{scrollbar-color:var(--bg-tertiary) var(--bg-secondary);scrollbar-width:thin}[data-theme=dark] ::-webkit-scrollbar{width:8px}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--bg-secondary)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}.article-body{font-size:1.0625rem;line-height:var(--lh-relaxed);color:var(--text-primary)}.article-body h2{font-size:1.5rem;margin:2em 0 .75em;padding-bottom:.5em;border-bottom:1px solid var(--border-color)}.article-body h3{font-size:1.25rem;margin:1.75em 0 .5em}.article-body p{margin:1em 0}.article-body a{text-decoration:underline;text-underline-offset:2px}.article-body .article-references{margin-top:var(--sp-xl);padding-top:var(--sp-md);font-size:.82rem;line-height:1.7;color:var(--text-tertiary)}.article-body .article-references h2{margin:0 0 var(--sp-xs);padding-bottom:0;border-bottom:0;font-size:.78rem;font-weight:600;line-height:var(--lh-tight);color:var(--text-tertiary)}.article-body .article-references ol{margin:0;padding-left:1.25rem}.article-body .article-references li+li{margin-top:.35rem}.article-body .article-references a,.article-body .article-references a:hover,.article-body .article-references a:focus{color:inherit;text-decoration:none;text-underline-offset:0}.article-body img{border-radius:var(--card-radius-md);margin:1.5em 0}.article-body blockquote{margin:1.5em 0;padding:var(--sp-md) var(--sp-lg);border-left:3px solid var(--category-topics);background:var(--bg-secondary);border-radius:0 var(--card-radius-sm) var(--card-radius-sm) 0;font-style:italic;color:var(--text-secondary)}.article-body ul,.article-body ol{margin:1em 0;padding-left:1.5em}.article-body ul{list-style:disc}.article-body ol{list-style:decimal}.article-body li{margin:.35em 0}.article-body pre{margin:1.5em 0;padding:var(--sp-lg);background:var(--bg-tertiary);border-radius:var(--card-radius-sm);overflow-x:auto;font-family:var(--font-mono);font-size:.9em;line-height:1.5}.article-body code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-tertiary);padding:.15em .4em;border-radius:4px}.article-body table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:1.5em 0}.article-body th,.article-body td{padding:.6em .9em;border:1px solid var(--border-color);text-align:left}.article-body th{background:var(--bg-tertiary);font-weight:600}@media(min-width:769px){.article-body table{display:table;overflow-x:visible}}.article-body pre code{background:none;padding:0}.link-card{position:relative;display:flex;align-items:center;gap:var(--sp-sm);padding:var(--sp-md);margin:1.25em 0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--card-radius-md);transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.link-card:hover{border-color:var(--border-hover);background:var(--bg-card-hover);box-shadow:var(--shadow-sm)}.link-card:focus-within{border-color:var(--accent-secondary);box-shadow:var(--focus-ring)}.link-card-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;border-radius:6px;background:var(--bg-tertiary)}.link-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.link-card-title{font-size:var(--fs-body);font-weight:500;line-height:1.4;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.link-card-domain{font-size:var(--fs-caption);line-height:1.3;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-card-link{position:absolute;inset:0;z-index:1;text-decoration:none;color:inherit;cursor:pointer}.link-card-link,.link-card-link:hover{text-decoration:none;color:inherit}.link-card-link:focus{outline:none}.section{padding:var(--sp-2xl) 0}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-lg);padding-bottom:var(--sp-md);border-bottom:1px solid var(--border-color)}.section-header h2{font-size:var(--fs-h3);color:var(--text-primary)}.section-header a{font-size:var(--fs-small);font-weight:500}.fade-enter-active,.fade-leave-active{transition:opacity .25s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active,.slide-up-leave-active{transition:transform .3s var(--ease-out),opacity .3s var(--ease-out)}.slide-up-enter-from{opacity:0;transform:translateY(20px)}.slide-up-leave-to{opacity:0;transform:translateY(-10px)}.card-hover{transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.card-hover:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}@media(prefers-reduced-motion:no-preference){@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.stagger>*{opacity:0}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--card-radius-sm)}.animate-fade-up{animation:fadeUp .5s var(--ease-out) both;animation-fill-mode:both}@media(prefers-reduced-motion:reduce){.animate-fade-up{animation:none;opacity:1;transform:none}}.animate-scale-in{animation:scaleIn .3s var(--ease-out) both}@media(prefers-reduced-motion:reduce){.animate-scale-in{animation:none;opacity:1;transform:none}}.stagger>*{animation:fadeUp .5s var(--ease-out) forwards}@media(prefers-reduced-motion:reduce){.stagger>*{animation:none;opacity:1}}.stagger>*:nth-child(1){animation-delay:.05s}.stagger>*:nth-child(2){animation-delay:.1s}.stagger>*:nth-child(3){animation-delay:.15s}.stagger>*:nth-child(4){animation-delay:.2s}.stagger>*:nth-child(5){animation-delay:.25s}.stagger>*:nth-child(6){animation-delay:.3s}.stagger>*:nth-child(n+7){animation-delay:.35s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.fade-enter-active,.fade-leave-active,.slide-up-enter-active,.slide-up-leave-active,.card-hover{transition:none!important}.card-hover:hover{transform:none!important}.skeleton{animation:none!important}.stagger>*{animation:none!important;opacity:1!important;transform:none!important}.animate-fade-up,.animate-scale-in{animation:none!important;opacity:1!important;transform:none!important}}
