:root{--brand:#165dff;--brand-dark:#0e42d2;--brand-soft:#ebf0fa;--text-1:#1d2129;--text-2:#4e5969;--text-3:#86909c;--border:#e5e6eb;--divider:#f2f3f5;--bg:#fff;--bg-page:#f7f8fa;--radius:12px;--shadow:0 4px 16px rgba(0,0,0,.06);--shadow-hover:0 12px 32px rgba(0,0,0,.1)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-page);color:var(--text-1);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans,Microsoft YaHei,Segoe UI,Roboto,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.site-header{backdrop-filter:saturate(180%) blur(12px);background:hsla(0,0%,100%,.92);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.site-header__inner{align-items:center;display:flex;height:64px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 24px}.brand{align-items:center;display:flex;gap:10px}.brand__logo{align-items:center;background:linear-gradient(135deg,var(--brand),#5b8def);border-radius:10px;color:#fff;display:flex;font-size:18px;font-weight:800;height:34px;justify-content:center;width:34px}.brand__name{font-size:18px;font-weight:800;letter-spacing:-.3px}.nav{align-items:center;display:flex;gap:8px}.nav__link{border-radius:8px;color:var(--text-2);font-size:14px;padding:8px 14px;transition:all .2s}.nav__link:hover{background:var(--divider);color:var(--brand)}.nav__link.is-active{background:var(--brand-soft);color:var(--brand);font-weight:600}.nav__btn{align-items:center;border-radius:18px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;height:36px;padding:0 18px;transition:all .2s}.nav__btn--ghost{border:1px solid var(--brand);color:var(--brand)}.nav__btn--ghost:hover{background:rgba(22,93,255,.06)}.nav__btn--solid{background:var(--brand);color:#fff}.nav__btn--solid:hover{background:var(--brand-dark)}.container{margin:0 auto;max-width:1200px;padding:0 24px}.container--narrow{max-width:820px}.hero{background:var(--bg);padding:72px 0 56px;text-align:center}.hero__tag{background:rgba(22,93,255,.1);border-radius:999px;color:var(--brand);display:inline-block;font-size:14px;margin-bottom:24px;padding:6px 16px}.hero__title{font-size:44px;font-weight:800;line-height:1.25;margin-bottom:16px}.hero__title em{color:var(--brand);font-style:normal}.hero__subtitle{color:var(--text-2);font-size:17px;margin:0 auto 32px;max-width:680px}.hero__actions{display:flex;gap:12px;justify-content:center}.section{background:var(--bg);padding:64px 0}.section--gray{background:var(--bg-page)}.section__head{margin-bottom:40px;text-align:center}.section__title{font-size:32px;font-weight:800;margin-bottom:10px}.section__subtitle{color:var(--text-3);font-size:16px}.tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:32px}.tab{background:#fff;border:1px solid var(--border);border-radius:999px;color:var(--text-2);cursor:pointer;font-size:14px;padding:8px 20px;transition:all .2s;user-select:none}.tab:hover{border-color:var(--brand);color:var(--brand)}.tab.is-active{background:var(--brand);border-color:var(--brand);color:#fff}.search{align-items:center;background:#fff;border:1px solid var(--border);border-radius:999px;display:flex;gap:8px;margin:0 auto 32px;max-width:420px;padding:10px 20px;transition:border-color .2s}.search:focus-within{border-color:var(--brand)}.search input{background:transparent;border:none;color:var(--text-1);flex:1;font-size:15px;outline:none}.search input::placeholder{color:var(--text-3)}.grid{display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}@media (max-width:1024px){.grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid{grid-template-columns:1fr}}.card{background:#fff;border:1px solid var(--border);border-radius:16px;display:flex;flex-direction:column;overflow:hidden;transition:all .3s ease}.card:hover{box-shadow:var(--shadow-hover);transform:translateY(-6px)}.card:hover .card__title{color:var(--brand)}.card:hover .cover__glyph{transform:scale(1.08)}.cover{align-items:center;display:flex;height:160px;justify-content:center;overflow:hidden;position:relative}.cover__glyph{font-size:52px;opacity:.55;transition:transform .3s ease}.cover--blue{background:linear-gradient(135deg,#e8f0ff,#d3e2ff)}.cover--purple{background:linear-gradient(135deg,#f2edf9,#e4dbf5)}.cover--green{background:linear-gradient(135deg,#edf5ed,#d9ecda)}.cover--orange{background:linear-gradient(135deg,#f9f0eb,#f2ded1)}.cover--teal{background:linear-gradient(135deg,#eaf6f4,#d3ebe7)}.cover--gray{background:linear-gradient(135deg,#f1f3f7,#e3e7ee)}.card__body{display:flex;flex:1;flex-direction:column;padding:20px}.tag{align-self:flex-start;background:var(--brand-soft);border-radius:6px;color:var(--brand);display:inline-block;font-size:12px;font-weight:600;margin-bottom:10px;padding:3px 10px}.tag--purple{background:#f2edf9;color:#8b6dc9}.tag--green{background:#edf5ed;color:#34a853}.tag--orange{background:#f9f0eb;color:#c97b4a}.tag--teal{background:#eaf6f4;color:#1a7a5e}.card__title{font-size:17px;font-weight:700;line-height:1.45;margin-bottom:8px;transition:color .2s}.card__desc{color:var(--text-3);display:-webkit-box;flex:1;font-size:14px;-webkit-line-clamp:2;line-height:1.6;margin-bottom:14px;-webkit-box-orient:vertical;overflow:hidden}.card__foot{align-items:center;border-top:1px solid var(--divider);color:var(--text-3);display:flex;font-size:13px;justify-content:space-between;padding-top:12px}.card__more{color:var(--brand);font-weight:600}.pagination{display:flex;gap:8px;justify-content:center;margin-top:44px}.page{align-items:center;background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--text-2);cursor:pointer;display:inline-flex;font-size:14px;height:36px;justify-content:center;min-width:36px;padding:0 12px;transition:all .2s}.page:hover{border-color:var(--brand);color:var(--brand)}.page.is-active{background:var(--brand);border-color:var(--brand);color:#fff}.page.is-disabled{cursor:not-allowed;opacity:.45}.page.is-disabled:hover{border-color:var(--border);color:var(--text-2)}.article{background:#fff;min-height:60vh;padding:40px 0 64px}.crumb{color:var(--text-3);font-size:14px;margin-bottom:24px}.crumb a{color:var(--brand)}.crumb span{margin:0 6px}.article__tag{border-radius:6px;display:inline-block;font-size:13px;font-weight:600;margin-bottom:16px;padding:4px 12px}.article__title{font-size:34px;font-weight:800;letter-spacing:-.5px;line-height:1.35;margin-bottom:18px}.article__meta{border-bottom:1px solid var(--border);color:var(--text-3);display:flex;flex-wrap:wrap;font-size:14px;gap:18px;margin-bottom:32px;padding-bottom:24px}.prose{color:#2b2f38;font-size:16.5px;line-height:1.85}.prose > * + *{margin-top:18px}.prose h2{border-left:4px solid var(--brand);color:var(--text-1);font-size:24px;font-weight:800;line-height:1.4;margin-top:44px;padding-left:14px}.prose h3{color:var(--text-1);font-size:19px;font-weight:700;margin-top:32px}.prose p{margin-top:16px}.prose strong{color:var(--text-1);font-weight:700}.prose a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}.prose ol,.prose ul{margin-top:16px;padding-left:24px}.prose li{margin-top:8px}.prose li::marker{color:var(--brand)}.prose blockquote{background:var(--brand-soft);border-left:4px solid var(--brand);border-radius:0 10px 10px 0;color:#2b3a5c;font-size:15.5px;margin-top:24px;padding:16px 22px}.prose blockquote p{margin:0}.prose table{border-collapse:collapse;border-radius:10px;box-shadow:0 0 0 1px var(--border);font-size:14.5px;margin-top:24px;overflow:hidden;width:100%}.prose thead th{background:#f5f6fa;border-bottom:1px solid var(--border);color:var(--text-1);font-weight:700;padding:12px;text-align:center}.prose tbody td{border-bottom:1px solid var(--divider);color:var(--text-2);padding:12px;text-align:center}.prose tbody tr:last-child td{border-bottom:none}.prose tbody tr:hover{background:#fafbfc}.formula{background:#f7f8fa;border:1px dashed #d6dae2;border-radius:10px;color:#2b2f38;font-family:Cambria Math,Latin Modern Math,Times New Roman,serif;font-size:19px;margin-top:24px;overflow-x:auto;padding:20px;text-align:center}.formula--inline{background:#f2f4f8;border-radius:4px;display:inline-block;font-size:.95em;margin:0 4px;padding:1px 6px}.tip{background:#fffbe6;border:1px solid #ffe58f;border-radius:10px;color:#614700;font-size:15px;margin-top:24px;padding:18px 22px}.tip__label{font-weight:700;margin-right:6px}.pager{border-top:1px solid var(--border);display:flex;gap:16px;margin-top:56px;padding-top:32px}.pager__item{border:1px solid var(--border);border-radius:12px;flex:1;padding:18px 22px;transition:all .2s}.pager__item:hover{background:#fafcff;border-color:var(--brand)}.pager__item--next{text-align:right}.pager__label{color:var(--text-3);font-size:12px;margin-bottom:6px}.pager__title{color:var(--text-1);font-size:15px;font-weight:600}.pager__item:hover .pager__title{color:var(--brand)}.pager__item--empty{border-style:dashed;opacity:.45;pointer-events:none}.pager__item--empty .pager__title{color:var(--text-3);font-weight:400}.read-progress{background:linear-gradient(90deg,var(--brand),#5b8def);height:3px;left:0;position:fixed;top:0;width:0;z-index:200}.article-layout{align-items:start;display:grid;gap:44px;grid-template-columns:minmax(0,1fr) 320px}.article-main{min-width:0}.aside{display:flex;flex-direction:column;gap:18px;max-height:calc(100vh - 112px);overflow-y:auto;overscroll-behavior:contain;padding-right:4px;position:sticky;top:88px}.aside::-webkit-scrollbar{width:4px}.aside::-webkit-scrollbar-thumb{background:#d6dae2;border-radius:4px}.aside__card{background:#fff;border:1px solid var(--border);border-radius:12px;flex-shrink:0;padding:18px}.aside__head{color:var(--text-1);font-size:15px;font-weight:700;margin-bottom:12px}.toc__list{list-style:none;margin:0;padding:0}.toc__link{border-left:2px solid var(--divider);color:var(--text-2);display:block;font-size:14px;line-height:1.5;padding:7px 12px;transition:all .18s}.toc__link:hover{background:#f7f9fc;color:var(--brand)}.toc__link.is-active{background:var(--brand-soft);border-left-color:var(--brand);color:var(--brand);font-weight:600}.side-post{border-bottom:1px dashed var(--divider);display:flex;gap:12px;padding:12px 0}.side-post:first-of-type{padding-top:0}.side-post:last-child{border-bottom:none;padding-bottom:0}.side-post__glyph{align-items:center;border-radius:9px;display:flex;flex-shrink:0;font-size:21px;height:46px;justify-content:center;width:46px}.side-post__body{min-width:0}.side-post__title{color:var(--text-1);display:-webkit-box;font-size:14px;font-weight:600;-webkit-line-clamp:2;line-height:1.45;-webkit-box-orient:vertical;overflow:hidden;transition:color .18s}.side-post:hover .side-post__title{color:var(--brand)}.side-post__meta{color:var(--text-3);font-size:12px;margin-top:5px}.hot-item{display:flex;gap:10px;padding:8px 0}.hot-item__no{align-items:center;background:var(--divider);border-radius:5px;color:var(--text-3);display:flex;flex-shrink:0;font-size:11px;font-weight:700;height:18px;justify-content:center;margin-top:3px;width:18px}.hot-item:nth-child(-n+3) .hot-item__no{background:var(--brand);color:#fff}.hot-item__title{color:var(--text-2);display:-webkit-box;font-size:14px;-webkit-line-clamp:2;line-height:1.5;-webkit-box-orient:vertical;overflow:hidden;transition:color .18s}.hot-item:hover .hot-item__title{color:var(--brand)}.cta{background:linear-gradient(140deg,var(--brand) 0,#5b8def 100%);border-radius:12px;color:#fff;flex-shrink:0;padding:20px}.cta__title{font-size:15px;font-weight:700;margin-bottom:8px}.cta__desc{font-size:13px;line-height:1.6;margin-bottom:14px;opacity:.9}.cta__btn{background:#fff;border-radius:8px;color:var(--brand);display:block;font-size:14px;font-weight:700;padding:10px;text-align:center}.cta__btn:hover{opacity:.88}.prose h2{scroll-margin-top:90px}.recap{background:#f7f9fc;border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:12px;margin-top:48px;padding:24px 28px}.recap__head{font-size:17px;font-weight:800;margin-bottom:14px}.recap__list{margin:0;padding-left:22px}.recap__list li{color:var(--text-2);font-size:15px;line-height:1.7;margin-top:8px}.recap__list li strong{color:var(--text-1)}.related{margin-top:48px}.related__head{font-size:20px;font-weight:800;margin-bottom:20px}.related .cover{height:120px}.related .cover__glyph{font-size:40px}.to-top{align-items:center;background:#fff;border:1px solid var(--border);border-radius:50%;bottom:32px;box-shadow:var(--shadow);color:var(--text-2);cursor:pointer;display:flex;font-size:18px;height:44px;justify-content:center;opacity:0;padding:0;position:fixed;right:28px;transition:all .25s;visibility:hidden;width:44px;z-index:120}.to-top.is-show{opacity:1;visibility:visible}.to-top:hover{border-color:var(--brand);color:var(--brand)}@media (max-width:1024px){.article-layout{gap:0;grid-template-columns:1fr}.aside{display:none}.related .grid{grid-template-columns:1fr}}.site-footer{background:#1a1d23;color:#86909c;font-size:13px;padding:40px 24px;text-align:center}.site-footer a{color:#a9b0bd;margin:0 8px}.site-footer a:hover{color:#fff}.site-footer__line{margin-top:12px}.demo-hint{background:#1a1d23;color:#c9d1e0;font-size:13px;padding:10px 24px;text-align:center}.demo-hint b{color:#6ea8ff}.t-filter-label{color:var(--text-3);font-size:12px;font-weight:500;letter-spacing:1px;margin:18px 0 8px}.t-filter-label + .tabs{margin-bottom:4px}.t-card .t-card__cover{height:230px}.t-card__avatar{display:block;height:100%;object-fit:cover;width:100%}.t-card__glyph{color:#fff;font-size:64px;font-weight:600;opacity:.85}.t-card__top{align-items:center;display:flex;gap:8px;justify-content:space-between}.t-card__top .card__title{margin:0}.t-region{background:rgba(22,93,255,.08);border-radius:6px;color:var(--brand);flex-shrink:0;font-size:12px;padding:3px 10px}.t-title{color:var(--text-2);font-size:13px;margin:6px 0 10px}.t-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.t-hero{align-items:stretch;background:#fff;border:1px solid var(--border);border-radius:16px;display:flex;gap:32px;margin-bottom:32px;padding:32px}.t-hero__avatar{align-items:center;background:var(--brand-weak);border-radius:16px;display:flex;flex-shrink:0;height:220px;justify-content:center;overflow:hidden;width:220px}.t-hero__avatar img{display:block;height:100%;object-fit:cover;width:100%}.t-hero__avatar span{color:var(--brand);font-size:72px;font-weight:600}.t-hero__name-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.t-hero__name{color:var(--text-1);font-size:28px;font-weight:600;margin:0}.t-hero__title{color:var(--text-2);font-size:15px;margin:8px 0 12px}.t-hero__intro{color:var(--text-2);font-size:14px;line-height:1.8;margin:14px 0 0}.t-prose{margin-bottom:32px}.t-block{margin:0 0 32px}.t-block__head{font-size:18px;font-weight:600;margin:0 0 16px}.t-figures{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.t-figure{background:#fff;border:1px solid var(--border);border-radius:12px;display:block;overflow:hidden;transition:box-shadow .2s}.t-figure:hover{box-shadow:var(--shadow)}.t-figure img{display:block;width:100%}@media (max-width:768px){.t-hero{flex-direction:column;padding:24px}.t-hero__avatar{height:300px;width:100%}.t-figures{grid-template-columns:1fr}}