:root{color:#1f2544;background:#f6f8ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at top right,#e4e6ff 0,transparent 31rem),#f6f8ff}a{color:inherit;text-decoration:none}.site-shell{min-height:100vh;display:flex;flex-direction:column}.site-header{width:min(1160px,calc(100% - 40px));height:78px;margin:auto;display:flex;align-items:center;gap:42px}.brand{display:inline-flex;align-items:center;gap:9px;font-size:1.3rem;font-weight:800;letter-spacing:-.06em}.brand__logo{width:42px;height:42px;-o-object-fit:contain;object-fit:contain;flex:none}.brand>span>span{color:#6c63ff}.site-header nav{display:flex;gap:22px;font-size:.93rem;color:#68708c}.site-header nav .router-link-active{color:#302c62;font-weight:700}.header-search{margin-left:auto;display:flex;overflow:hidden;border:1px solid #e5e7f2;border-radius:999px;background:#fff}.header-search input{width:160px;border:0;outline:0;padding:9px 13px;background:transparent}.header-search button{border:0;background:transparent;padding:0 12px;color:#6c63ff;font-size:1.25rem;cursor:pointer}.site-main{margin:34px auto 64px;flex:1}.site-footer,.site-main{width:min(1160px,calc(100% - 40px))}.site-footer{margin:0 auto;padding:24px 0 34px;display:flex;justify-content:space-between;color:#8a91aa;font-size:.8rem;border-top:1px solid #e9ebf5}.site-footer__meta{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}.site-footer a{transition:color .2s}.site-footer a:hover{color:#6158d6}.hero{display:grid;grid-template-columns:1.5fr .9fr;gap:24px;margin-bottom:38px}.hero__aside,.hero__main{border-radius:24px;background:#fff;box-shadow:0 14px 40px #41468012}.hero__main{padding:46px;background:linear-gradient(135deg,#332d7a,#635bdb 55%,#938df5);color:#fff}.hero__main p{max-width:35rem;opacity:.82;line-height:1.7}.eyebrow{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;opacity:.7}.hero h1{margin:12px 0;font-size:clamp(2rem,4vw,3.6rem);line-height:1.08;letter-spacing:-.06em}.hero__aside{padding:28px}.hero__aside h2,.recommendation-list h2{margin:0 0 16px;font-size:1rem}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:30px}.article-list{display:grid;gap:16px}.article-card{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:210px;overflow:hidden;border:1px solid #e9ebf5;border-radius:20px;background:#fff;transition:transform .2s,box-shadow .2s}.article-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px #4146801a}.article-cover{display:block;min-height:210px;overflow:hidden;background:#eceef8}.article-cover__image{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;transition:transform .35s ease}.article-card:hover .article-cover__image{transform:scale(1.035)}.article-cover--placeholder{background:linear-gradient(145deg,#d5d2ff,#f8cbdf 55%,#fbdca4)}.article-card__content{display:flex;min-width:0;min-height:210px;flex-direction:column;padding:22px 26px}.tag-row{display:flex;gap:7px;flex-wrap:wrap}.tag-pill{display:inline-flex;align-items:center;color:var(--tag-color);background:color-mix(in srgb,var(--tag-color) 12%,#fff);border-radius:999px;padding:4px 9px;font-size:.72rem;font-weight:700}.article-card__title{margin:10px 0 8px;-webkit-line-clamp:2;font-size:1.2rem;font-weight:750;letter-spacing:-.03em;line-height:1.35}.article-card__summary,.article-card__title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical}.article-card__summary{margin:0;color:#747c94;font-size:.9rem;line-height:1.65;-webkit-line-clamp:3}.article-meta{display:flex;gap:12px;margin-top:auto;padding-top:14px;color:#9ca3b5;font-size:.75rem}.recommendation-list{padding:24px;border:1px solid #e9ebf5;border-radius:20px;background:#fff}.recommendation-list a{display:flex;flex-direction:column;gap:5px;padding:12px 0;border-top:1px solid #eff0f6;font-size:.88rem;font-weight:650}.recommendation-list small{color:#9ca3b5;font-weight:400}.pagination{display:flex;justify-content:center;align-items:center;gap:18px;padding:24px;color:#747c94;font-size:.88rem}.pagination a{color:#6158d6;font-weight:700}.empty-state{padding:55px 20px;text-align:center;border-radius:20px;background:#fff;color:#8a91aa}.page-heading{margin:10px 0 30px}.page-heading h1{margin:8px 0;font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.06em}.page-heading p{color:#7b829a}.tag-cloud{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}.article-page{max-width:820px;margin:auto}.article-page__header{margin:36px 0}.article-page__header h1{margin:12px 0;font-size:clamp(2.2rem,6vw,4.5rem);line-height:1.05;letter-spacing:-.065em}.article-page__summary{color:#707892;font-size:1.1rem;line-height:1.7}.markdown{padding:42px;border-radius:24px;background:#fff;line-height:1.85;box-shadow:0 12px 35px #4146800f}.markdown h1,.markdown h2,.markdown h3{margin:1.4em 0 .6em;letter-spacing:-.03em}.markdown li,.markdown p{color:#4e5871}.markdown :not(pre)>code{padding:.15em .4em;border:1px solid #e7e8f5;border-radius:6px;background:#f4f4fc;color:#544cbd;font-size:.9em}.code-block{margin:1.6em 0;overflow:hidden;border:1px solid #252a4e;border-radius:16px;background:#11152b;box-shadow:0 16px 30px #171c4129}.code-block__header{display:flex;align-items:center;gap:12px;min-height:42px;padding:0 15px;border-bottom:1px solid hsla(0,0%,100%,.08);background:linear-gradient(90deg,#1e2548,#171b35)}.code-block__traffic{display:inline-flex;gap:6px}.code-block__traffic i{width:9px;height:9px;border-radius:50%;background:#ff7065}.code-block__traffic i:nth-child(2){background:#fc5}.code-block__traffic i:nth-child(3){background:#46d39a}.code-block__language{margin-left:auto;color:#aeb7ec;font-size:.7rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.code-block__language,.markdown .code-block pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.markdown .code-block pre{overflow:auto;margin:0;padding:21px 22px 23px;background:transparent;color:#e8ecff;font-size:.86rem;line-height:1.75;-moz-tab-size:2;-o-tab-size:2;tab-size:2}.markdown .code-block pre code{padding:0;background:transparent;color:inherit;font:inherit}.markdown blockquote{margin:1.5em 0;padding:4px 20px;border-left:3px solid #6c63ff;color:#737b93}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tool-card{padding:24px;border:1px solid #e9ebf5;border-radius:20px;background:#fff;transition:transform .2s}.tool-card:hover{transform:translateY(-3px)}.tool-card h2{margin:0 0 10px;font-size:1.05rem}.tool-card p{margin:0;color:#7c839a;line-height:1.6;font-size:.88rem}.breadcrumbs{display:flex;align-items:center;gap:9px;margin:4px 0 24px;overflow:hidden;color:#858da5;font-size:.8rem;white-space:nowrap}.breadcrumbs a{color:#6259cf}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs>span:last-child{overflow:hidden;text-overflow:ellipsis}.breadcrumbs__separator{color:#c1c6d7}.article-byline{display:flex;gap:8px 16px;align-items:center;flex-wrap:wrap;margin-top:20px;color:#8b93aa;font-size:.8rem}.article-byline a{color:#6259cf;font-weight:700}.article-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}.article-navigation a{display:flex;min-height:110px;flex-direction:column;justify-content:center;gap:8px;padding:20px 22px;border:1px solid #e6e8f2;border-radius:18px;background:#fff;transition:transform .2s,box-shadow .2s}.article-navigation a:hover{transform:translateY(-2px);box-shadow:0 12px 28px #41468014}.article-navigation small{color:#8d94aa}.article-navigation strong{line-height:1.45}.article-navigation__newer{text-align:right}.author-card{display:grid;grid-template-columns:68px minmax(0,1fr);gap:20px;align-items:start;margin-top:28px;padding:25px;border:1px solid #e5e8f3;border-radius:20px;background:linear-gradient(135deg,#fff,#f5f4ff)}.author-card img{width:68px;height:68px;-o-object-fit:contain;object-fit:contain}.author-card__eyebrow{color:#8b92a8;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.author-card h2{margin:3px 0 8px;font-size:1.08rem}.author-card p{margin:0;color:#68718a;font-size:.88rem;line-height:1.7}.author-card__links{display:flex;gap:16px;margin-top:11px;color:#6158d6;font-size:.8rem;font-weight:700}.related-section{margin-top:28px}.about-page{max-width:920px;margin:auto}.about-hero{display:grid;grid-template-columns:112px minmax(0,1fr);gap:30px;align-items:center;padding:40px;border-radius:24px;background:linear-gradient(135deg,#332d7a,#635bdb 58%,#938df5);color:#fff;box-shadow:0 16px 40px #41468021}.about-hero img{width:112px;height:112px;border-radius:28px;background:#ffffffeb;-o-object-fit:contain;object-fit:contain}.about-hero h1{margin:7px 0 12px;font-size:clamp(2rem,5vw,3.6rem);line-height:1.08;letter-spacing:-.055em}.about-hero p{max-width:38rem;margin:0;opacity:.84;line-height:1.75}.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}.about-grid section{padding:28px;border:1px solid #e7e9f3;border-radius:20px;background:#fff}.about-grid h2{margin:0 0 13px;font-size:1.1rem}.about-grid li,.about-grid p{color:#667088;font-size:.9rem;line-height:1.75}.about-grid ul{margin:0;padding-left:20px}.text-link{color:#6158d6;font-weight:750}.tag-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tag-index a{display:flex;min-height:110px;flex-direction:column;justify-content:space-between;padding:22px;border:1px solid color-mix(in srgb,var(--tag-color) 22%,#e5e7f0);border-radius:18px;background:color-mix(in srgb,var(--tag-color) 7%,#fff);transition:transform .2s,box-shadow .2s}.tag-index a:hover{transform:translateY(-3px);box-shadow:0 12px 28px #41468014}.tag-index span{color:var(--tag-color);font-size:1rem;font-weight:800}.tag-index small{color:#8a91a8}.markdown table{width:100%;margin:1.7em 0;overflow:hidden;border:1px solid #e4e7f1;border-radius:13px;border-collapse:separate;border-spacing:0;color:#414b67;font-size:.93rem;line-height:1.6}.markdown thead{background:linear-gradient(135deg,#f5f4ff,#eef3ff)}.markdown td,.markdown th{padding:12px 15px;text-align:left;vertical-align:top;border-right:1px solid #e9ebf4;border-bottom:1px solid #e9ebf4}.markdown th{color:#312b70;font-weight:750}.markdown td{color:#59627b}.markdown tr:nth-child(2n) td{background:#fafbff}.markdown td:last-child,.markdown th:last-child{border-right:0}.markdown tbody tr:last-child td{border-bottom:0}.markdown .hljs-comment,.markdown .hljs-quote{color:#7e8bac;font-style:italic}.markdown .hljs-keyword,.markdown .hljs-selector-tag,.markdown .hljs-subst{color:#ff8f70}.markdown .hljs-doctag,.markdown .hljs-string{color:#9fda7a}.markdown .hljs-section,.markdown .hljs-selector-id,.markdown .hljs-title{color:#8bb9ff}.markdown .hljs-attr,.markdown .hljs-attribute,.markdown .hljs-template-variable,.markdown .hljs-variable{color:#f6c76e}.markdown .hljs-bullet,.markdown .hljs-literal,.markdown .hljs-number,.markdown .hljs-symbol{color:#d9a4ff}.markdown .hljs-built_in,.markdown .hljs-class .hljs-title,.markdown .hljs-type{color:#5dd5c7}.markdown .hljs-meta,.markdown .hljs-meta .hljs-keyword{color:#aab5e9}.markdown .hljs-addition{color:#a9e991;background:#45976529}.markdown .hljs-deletion{color:#ff9d9a;background:#b2414a2b}@media(max-width:820px){.site-header{gap:18px}.site-header nav{display:none}.header-search input{width:125px}.content-grid,.hero{grid-template-columns:1fr}.hero__main{padding:32px}.content-grid aside{display:none}.tag-index,.tool-grid{grid-template-columns:1fr 1fr}.site-footer{gap:8px;flex-direction:column}.site-footer__meta{justify-content:flex-start}.article-page__header{margin-top:12px}.markdown table{display:block;overflow-x:auto;white-space:nowrap}.about-grid{grid-template-columns:1fr}}@media(max-width:560px){.site-footer,.site-header,.site-main{width:min(100% - 28px,1160px)}.article-card{grid-template-columns:1fr}.article-cover{min-height:0;height:172px}.article-card__content{min-height:0;padding:20px}.article-card__summary{-webkit-line-clamp:3}.article-navigation,.tag-index,.tool-grid{grid-template-columns:1fr}.markdown{padding:24px}.header-search input{width:95px}.article-navigation__newer{text-align:left}.author-card{grid-template-columns:52px minmax(0,1fr);padding:20px}.author-card img{width:52px;height:52px}.about-hero{grid-template-columns:1fr;padding:28px}.about-hero img{width:82px;height:82px;border-radius:20px}}
