/* generated by blog-src/generate.js — do not edit by hand */
.blogpage{background:var(--bg)}
.blog-hero{padding:64px 0 26px;text-align:center;position:relative}
.blog-hero .wrap{max-width:820px}
.blog-hero h1{font-size:clamp(30px,5vw,50px);font-weight:900;letter-spacing:-.03em;margin:14px 0 14px;line-height:1.05}
.blog-hero p{font-size:16.5px;color:var(--muted);max-width:660px;margin:0 auto;line-height:1.65}
.cat-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 120% at 50% -10%,color-mix(in srgb,var(--pc) 16%,transparent),transparent 70%);pointer-events:none}
.cat-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:26px}
.cat-chip{--pc:#8a94a6;display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:100px;font-size:13.5px;font-weight:700;color:var(--muted-2);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);text-decoration:none;transition:transform .2s,box-shadow .25s,color .2s,border-color .2s}
.cat-chip:hover{transform:translateY(-2px);color:var(--txt);border-color:color-mix(in srgb,var(--pc) 45%,var(--line))}
.cat-chip.active{color:#fff;background:linear-gradient(135deg,color-mix(in srgb,var(--pc) 80%,#fff),var(--pc));border-color:transparent;box-shadow:0 12px 24px -10px color-mix(in srgb,var(--pc) 60%,transparent)}
.blog-body{padding-top:20px}
.feat-wrap{margin-bottom:30px}
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.pcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .3s}
.pcard:hover{transform:translateY(-6px);box-shadow:0 40px 70px -34px rgba(15,23,42,.3);border-color:rgba(15,23,42,.12)}
.pc-img{position:relative;aspect-ratio:1200/630;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--pc) 18%,#fff),#fff)}
.pc-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.pcard:hover .pc-img img{transform:scale(1.05)}
.pc-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:11px;flex:1}
.pc-cat{--pc:#8a94a6;align-self:flex-start;display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:800;letter-spacing:.02em;color:var(--pc);background:color-mix(in srgb,var(--pc) 10%,#fff);border:1px solid color-mix(in srgb,var(--pc) 24%,transparent);border-radius:100px;padding:4px 11px}
.pcard h3{font-size:18.5px;font-weight:800;letter-spacing:-.01em;line-height:1.28;color:var(--txt)}
.pcard p{font-size:14px;color:var(--muted);line-height:1.55;flex:1}
.pc-meta{display:flex;gap:12px;font-size:12.5px;color:var(--muted-2);margin-top:2px}
.pc-meta span::before{content:"•";margin-right:12px;color:var(--line)}
.pcard-feat{grid-column:1/-1;flex-direction:row}
.pcard-feat .pc-img{width:52%;aspect-ratio:auto}
.pcard-feat .pc-body{width:48%;justify-content:center;padding:34px 38px}
.pcard-feat h3{font-size:clamp(22px,2.4vw,30px);line-height:1.18}
.pcard-feat p{font-size:15.5px}
.empty{text-align:center;color:var(--muted);padding:40px 0}.empty a{color:var(--gold);font-weight:700}
@media(max-width:960px){.post-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.pcard-feat{flex-direction:column}.pcard-feat .pc-img,.pcard-feat .pc-body{width:100%}.pcard-feat .pc-img{aspect-ratio:1200/630}}
@media(max-width:620px){.post-grid{grid-template-columns:1fr}.blog-hero{padding:44px 0 20px}}

/* ---- article ---- */
.art{padding:26px 0 10px}
.art-inner{max-width:1080px;margin:0 auto;padding:0 22px}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--muted-2);margin-bottom:20px}
.crumbs a{color:var(--muted-2);text-decoration:none}.crumbs a:hover{color:var(--gold)}.crumbs span{opacity:.5}
.art-head{max-width:800px;margin:0 auto 22px;text-align:center}
.art-cat{--pc:#8a94a6;display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:800;color:#fff;background:linear-gradient(135deg,color-mix(in srgb,var(--pc) 80%,#fff),var(--pc));border-radius:100px;padding:6px 14px;text-decoration:none;box-shadow:0 12px 24px -10px color-mix(in srgb,var(--pc) 60%,transparent)}
.art-head h1{font-size:clamp(28px,4.2vw,44px);font-weight:900;letter-spacing:-.03em;line-height:1.1;margin:16px 0 14px;color:var(--txt)}
.art-lede{font-size:17px;color:var(--muted);line-height:1.6;max-width:680px;margin:0 auto}
.art-meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:20px;font-size:13.5px;color:var(--muted-2)}
.art-meta b{color:var(--txt);font-weight:700}.art-meta .dot{opacity:.5}
.am-av{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--gold-bright),var(--gold-2));color:#3a2a05;font-weight:800;font-size:13px;display:grid;place-items:center}
.art-cover{max-width:1000px;margin:0 auto 6px;border-radius:22px;overflow:hidden;border:1px solid var(--line);box-shadow:0 40px 80px -40px color-mix(in srgb,var(--pc) 45%,rgba(15,23,42,.4));aspect-ratio:1200/630}
.art-cover img{width:100%;height:100%;object-fit:cover;display:block}
.art-grid{display:grid;grid-template-columns:230px 1fr;gap:44px;max-width:1000px;margin:34px auto 0;align-items:start}
.art-side{position:sticky;top:88px;display:flex;flex-direction:column;gap:20px}
.art-toc{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 18px;box-shadow:var(--shadow-sm)}
.toc-h{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);margin-bottom:12px}
.art-toc ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.art-toc a{font-size:13.5px;color:var(--muted);text-decoration:none;line-height:1.4;display:block;border-left:2px solid var(--line);padding-left:12px;transition:color .2s,border-color .2s}
.art-toc a:hover,.art-toc a.on{color:var(--gold);border-color:var(--gold)}
.side-cta{background:linear-gradient(165deg,#0f1729,#111a30);border-radius:16px;padding:20px 18px;color:#fff;box-shadow:0 30px 50px -28px rgba(15,23,42,.7)}
.side-cta .sc-h{font-size:15px;font-weight:800;margin-bottom:5px}
.side-cta p{font-size:12.5px;color:#aab4dd;margin-bottom:14px;line-height:1.5}
.art-body{font-size:16.5px;line-height:1.75;color:#25303f;max-width:720px}
.art-key{background:linear-gradient(180deg,#fffdf6,#fff);border:1px solid rgba(224,169,59,.35);border-left:4px solid var(--gold-2);border-radius:0 16px 16px 0;padding:20px 24px;margin:0 0 30px;box-shadow:var(--shadow-sm)}
.art-key .ak-h{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.art-key ul{list-style:none;display:flex;flex-direction:column;gap:10px;margin:0;padding:0}
.art-key li{position:relative;padding-left:26px;font-size:15px;line-height:1.55;color:#2a2415}
.art-key li::before{content:"✓";position:absolute;left:0;top:0;color:var(--gold);font-weight:800}
.art-body h2{font-size:26px;font-weight:800;letter-spacing:-.02em;color:var(--txt);margin:38px 0 14px;line-height:1.2;scroll-margin-top:84px}
.art-body h3{font-size:20px;font-weight:800;color:var(--txt);margin:28px 0 10px;scroll-margin-top:84px}
.art-body p{margin:0 0 18px}
.art-body a{color:var(--gold);text-decoration:underline;text-underline-offset:3px;font-weight:600}
.art-body ul,.art-body ol{margin:0 0 20px;padding-left:22px;display:flex;flex-direction:column;gap:9px}
.art-body li{line-height:1.65}
.art-body strong{color:var(--txt);font-weight:700}
.art-body blockquote{margin:22px 0;padding:16px 22px;border-left:4px solid var(--gold-2);background:#fffdf5;border-radius:0 12px 12px 0;color:#3a3320;font-size:16px}
.art-body img{max-width:100%;border-radius:14px;margin:10px 0 22px;border:1px solid var(--line)}
.art-body code{background:rgba(15,23,42,.06);border-radius:6px;padding:2px 7px;font-size:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.art-body pre{background:#0f1729;color:#e6ecff;border-radius:14px;padding:18px 20px;overflow:auto;margin:0 0 22px}
.art-body pre code{background:none;padding:0;color:inherit}
.art-body table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:14.5px;box-shadow:var(--shadow-sm);border-radius:12px;overflow:hidden}
.art-body th,.art-body td{padding:11px 14px;border:1px solid var(--line);text-align:left}
.art-body th{background:#f2f4fa;font-weight:800;color:var(--txt)}
.art-body h2:first-child{margin-top:0}
.art-faq{margin-top:40px}
.art-faq h2{font-size:26px;font-weight:800;letter-spacing:-.02em;margin-bottom:16px}
.faq-item{border:1px solid var(--line);border-radius:14px;background:#fff;margin-bottom:12px;box-shadow:var(--shadow-sm);overflow:hidden}
.faq-item summary{cursor:pointer;padding:16px 20px;font-weight:700;font-size:15.5px;color:var(--txt);list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-size:20px;color:var(--gold);font-weight:700;flex:none}
.faq-item[open] summary::after{content:"−"}
.faq-a{padding:0 20px 18px;color:var(--muted);font-size:14.5px;line-height:1.65}
.art-cta{margin-top:40px;background:linear-gradient(165deg,#0f1729,#111a30);border-radius:20px;padding:32px 34px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;box-shadow:0 40px 70px -34px rgba(15,23,42,.7)}
.art-cta h3{font-size:22px;font-weight:800;color:#fff;margin-bottom:8px;letter-spacing:-.01em}
.art-cta p{font-size:14.5px;color:#aab4dd;line-height:1.55;max-width:560px}
.related{max-width:1000px;margin:56px auto 0;padding:0 22px}
.related h2{font-size:24px;font-weight:800;letter-spacing:-.02em;margin-bottom:20px}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rel-card{--pc:#8a94a6;display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;text-decoration:none;color:inherit;box-shadow:var(--shadow-sm);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.rel-card:hover{transform:translateY(-5px);box-shadow:0 34px 60px -34px rgba(15,23,42,.32)}
.rc-cat{align-self:flex-start;font-size:11px;font-weight:800;color:var(--pc);background:color-mix(in srgb,var(--pc) 10%,#fff);border:1px solid color-mix(in srgb,var(--pc) 24%,transparent);border-radius:100px;padding:4px 10px}
.rel-card h3{font-size:16.5px;font-weight:800;line-height:1.3;color:var(--txt);flex:1}
.rc-go{font-size:13.5px;font-weight:800;color:var(--gold)}
@media(max-width:900px){.art-grid{grid-template-columns:1fr;gap:24px}.art-side{position:static;flex-direction:column-reverse}.art-toc{order:2}.art-toc ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}}
@media(max-width:760px){.rel-grid{grid-template-columns:1fr}.art-cta{flex-direction:column;align-items:flex-start;padding:26px 24px}}
