body.site{margin:0;font-family:var(--font-serif),Georgia,serif;background:radial-gradient(circle at top,rgba(47,88,159,.14),transparent 38%),linear-gradient(180deg,#f6f7fb,#eef2f8);color:#172033;line-height:1.65}body.site *{box-sizing:border-box}body.site a{color:inherit;text-decoration:none}body.site img{display:block;max-width:100%;height:auto}body.site .chrome{width:100%}body.site .topbar{position:-webkit-sticky;position:sticky;top:0;z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:rgba(246,247,251,.88);border-bottom:1px solid rgba(23,32,51,.1)}body.site .topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}body.site .brand{min-width:0;font-weight:700;letter-spacing:.04em;line-height:1.2}body.site .brand h1,body.site .brand-link{margin:0;font-size:16px}body.site .brand-link{display:inline-flex;align-items:center;min-height:32px}body.site .menu{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(23,32,51,.18);background:#ffffff;color:#172033;border-radius:999px;padding:8px 12px;font:inherit;font-size:13px;line-height:1;box-shadow:0 8px 20px rgba(23,32,51,.06)}body.site .nav-shell{position:relative}body.site .nav-list{display:none;margin:0;padding:12px 16px 18px;list-style:none;border-top:1px solid rgba(23,32,51,.08);background:rgba(255,255,255,.94)}body.site.nav-open .nav-list{display:grid;grid-gap:8px;gap:8px}body.site .nav-list>li{position:relative}body.site .nav-list>li>a,body.site .nav-list>li>span{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:14px;background:#f1f4fa;border:1px solid rgba(23,32,51,.08)}body.site .nav-list>li.has-children>a:after,body.site .nav-list>li.has-children>span:after{content:"▾";font-size:12px;opacity:.72}body.site .nav-list ul{display:none;margin:8px 0 0;padding:8px;list-style:none;border:1px solid rgba(23,32,51,.1);background:#ffffff;box-shadow:0 16px 30px rgba(23,32,51,.12);border-radius:14px}body.site .nav-list li.tap>ul{display:grid;grid-gap:6px;gap:6px}body.site .nav-list ul a{display:block;padding:9px 10px;border-radius:10px;color:#25314b}body.site .page{padding:18px 16px 28px}body.site .card,body.site .copy,body.site .crumbs,body.site .friend-links,body.site .hero,body.site .list-card,body.site .pager,body.site .panel,body.site .post-card,body.site .toc{background:rgba(255,255,255,.82);border:1px solid rgba(23,32,51,.1);box-shadow:0 16px 32px rgba(23,32,51,.06);border-radius:20px}body.site .hero{overflow:hidden}body.site .hero-media{position:relative;aspect-ratio:16/10;background:#dfe7f3}body.site .hero-body{padding:16px}body.site h1{margin:0;font-size:16px;line-height:1.25}body.site h2{margin:0;font-size:15px;line-height:1.35}body.site .hero-copy{margin-top:10px;color:#44506a}body.site .home-grid{display:grid;grid-gap:14px;gap:14px;margin-top:14px}body.site .card,body.site .list-card,body.site .post-card{overflow:hidden}body.site .card-body,body.site .list-card-body,body.site .post-card-body{padding:14px}body.site .card-media,body.site .list-card-media{position:relative;aspect-ratio:4/3;background:#dfe7f3}body.site .card-title,body.site .list-title,body.site .post-title{font-size:15px}body.site .meta-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;color:#5d6881;font-size:12px}body.site .chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}body.site .chip{padding:8px 12px;border-radius:999px;background:#eaf0fb;border:1px solid rgba(47,88,159,.14);color:#27406f;font-size:13px}body.site .content-shell{display:grid;grid-gap:14px;gap:14px;margin-top:14px}body.site .crumbs{padding:10px 14px}body.site .crumbs ol,body.site .pager ol,body.site .toc ol{margin:0;padding:0;list-style:none}body.site .crumbs ol{display:flex;flex-wrap:wrap;gap:8px;color:#50607c;font-size:12px}body.site .crumbs li+li:before{content:">";margin-right:8px;color:#8a95aa}body.site .toc{padding:14px}body.site .toc ol{display:grid;grid-gap:8px;gap:8px;margin-top:10px}body.site .toc a{display:block;padding:10px 12px;border-radius:12px;background:#f4f7fc;border:1px solid rgba(23,32,51,.08)}body.site .copy{padding:16px;overflow-wrap:anywhere}body.site .copy h2{margin-top:1.4em;margin-bottom:.55em}body.site .copy blockquote,body.site .copy ol,body.site .copy p,body.site .copy ul{margin-top:.9em;margin-bottom:.9em}body.site .copy img{border-radius:16px}body.site .article-desc,body.site .cat-desc{margin-top:10px;color:#46536c;font-size:13px;font-weight:400}body.site .pager{margin-top:16px;padding:12px 14px}body.site .pager ol{display:flex;flex-wrap:wrap;gap:10px}body.site .pager a,body.site .pager span{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;border-radius:999px;background:#edf2fb;border:1px solid rgba(23,32,51,.08)}body.site #friend-links{margin-top:16px;padding:14px}body.site #friend-links ul{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}body.site #friend-links a{display:block;padding:10px 12px;border-radius:12px;background:#f3f6fb}body.site .error-shell,body.site .loading-shell,body.site .not-found-shell,body.site .page-open{padding:28px 16px}body.site .error-box,body.site .loading-box,body.site .not-found-box{max-width:720px;margin:0 auto;padding:24px 18px;border-radius:20px;background:rgba(255,255,255,.84);border:1px solid rgba(23,32,51,.1);box-shadow:0 16px 32px rgba(23,32,51,.06)}body.site .error-actions{margin-top:16px}body.site .error-actions button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:999px;padding:10px 14px;background:#1d4ed8;color:#fff;font:inherit}@media (min-width:769px){body.site .page,body.site .topbar-inner{max-width:1180px;margin:0 auto}body.site .topbar-inner{padding:18px 20px}body.site .menu{display:none}body.site .nav-list{display:flex;flex-wrap:wrap;gap:10px;padding:0 20px 16px;background:transparent;border:0}body.site .nav-list>li{padding-bottom:10px}body.site .nav-list>li>a,body.site .nav-list>li>span{background:#ffffff}body.site .nav-list ul{position:absolute;top:calc(100% + 8px);left:0;min-width:220px}body.site .nav-list>li:hover>ul{display:grid;grid-gap:6px;gap:6px}body.site .home-grid{grid-template-columns:1.2fr .8fr;align-items:start}body.site .hero{grid-column:1/-1;display:grid;grid-template-columns:1.15fr .85fr}body.site .content-shell{grid-template-columns:minmax(0,1fr) 300px;align-items:start}body.site .toc{position:-webkit-sticky;position:sticky;top:110px}body.site .error-shell,body.site .loading-shell,body.site .not-found-shell,body.site .page-open{padding:44px 20px}}