.blog-index-page{padding:64px 0 96px}.blog-index-header{margin-bottom:48px}.blog-eyebrow{font-size:var(--text-sm);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary-600);margin:0 0 12px}.blog-index-title{font-family:var(--font-display);font-size:clamp(var(--text-2xl),4vw,var(--text-4xl));font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--mk-ink);margin:0}.article-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:32px}@media(min-width:640px){.article-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.article-grid{grid-template-columns:repeat(3,1fr)}}.article-card{display:flex;flex-direction:column;border:1px solid var(--mk-line);border-radius:12px;overflow:hidden;background:#fff;text-decoration:none;color:inherit;transition:box-shadow .2s var(--ease-out),transform .2s var(--ease-out)}.article-card:hover{box-shadow:0 8px 24px #0b1f1714;transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.article-card{transition:none}.article-card:hover{transform:none}}.article-card-cover{aspect-ratio:16 / 9;overflow:hidden;background:var(--mk-cream-2)}.article-card-cover img{width:100%;height:100%;object-fit:cover;display:block}.article-card-body{padding:20px 24px 24px;display:flex;flex-direction:column;flex:1}.article-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.article-card-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--fw-bold);line-height:var(--lh-snug);color:var(--mk-ink);margin:0 0 10px}.article-card-excerpt{font-size:var(--text-sm);line-height:var(--lh-loose);color:#3d5047;margin:0 0 16px;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.article-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:var(--text-xs);color:#6b7e74;margin-top:auto}.article-card-lang{display:inline-flex;align-items:center;padding:2px 8px;border-radius:9999px;border:1px solid var(--mk-line);font-weight:var(--fw-medium);color:var(--color-primary-700);background:var(--mk-cream-2)}.article-tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:9999px;background:var(--mk-cream-2);font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--color-primary-700);line-height:1}.article-tag--sm{font-size:.7rem;padding:2px 8px}.blog-empty{text-align:center;padding:80px 0;color:#6b7e74}.blog-empty h2{font-size:var(--text-xl);color:var(--mk-ink);margin-bottom:12px}.blog-index-cta{margin-top:64px;text-align:center}.blog-article{padding-bottom:96px}.blog-breadcrumb{display:flex;align-items:center;gap:8px;padding-top:24px;padding-bottom:32px;font-size:var(--text-sm);color:#6b7e74}.blog-breadcrumb a{color:#6b7e74;text-decoration:none}.blog-breadcrumb a:hover{text-decoration:underline}.blog-article-header{max-width:720px;padding-top:8px;padding-bottom:40px}.article-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.article-title{font-family:var(--font-display);font-size:clamp(var(--text-2xl),5vw,2.75rem);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--mk-ink);margin:0 0 16px}.article-excerpt{font-size:var(--text-lg);line-height:var(--lh-loose);color:#3d5047;margin:0 0 24px}.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:var(--text-sm);color:#6b7e74}.article-meta-author{font-weight:var(--fw-semibold);color:var(--mk-ink)}.article-meta-reading:before{content:"·";margin-right:16px}.article-lang-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:9999px;border:1px solid var(--mk-line);font-size:var(--text-xs);font-weight:var(--fw-medium);color:var(--color-primary-700);background:var(--mk-cream-2)}.article-cover{margin-bottom:40px}.article-cover-img{width:100%;max-height:480px;object-fit:cover;border-radius:12px;display:block}.prose{max-width:720px;font-size:var(--text-base);line-height:var(--lh-loose);color:var(--mk-ink)}.prose h2{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--fw-bold);line-height:var(--lh-snug);margin:2.5em 0 .75em;color:var(--mk-ink)}.prose h3{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--fw-bold);line-height:var(--lh-snug);margin:2em 0 .65em;color:var(--mk-ink)}.prose h4{font-size:var(--text-lg);font-weight:var(--fw-semibold);margin:1.75em 0 .5em;color:var(--mk-ink)}.prose p{margin:0 0 1.25em}.prose ul,.prose ol{margin:0 0 1.25em;padding-left:1.5em}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li{margin-bottom:.4em}.prose li:last-child{margin-bottom:0}.prose a{color:var(--color-primary-700);text-decoration:underline;text-underline-offset:3px}.prose a:hover{color:var(--color-primary-600)}.prose strong{font-weight:var(--fw-bold)}.prose em{font-style:italic}.prose s{text-decoration:line-through}.prose u{text-decoration:underline;text-underline-offset:2px}.prose code{font-family:var(--font-mono);font-size:.875em;background:var(--mk-cream-2);border:1px solid var(--mk-line);border-radius:4px;padding:1px 5px}.prose hr{border:none;border-top:2px solid var(--mk-line);margin:2.5em 0}.prose blockquote{border-left:4px solid var(--color-primary-400);margin:1.75em 0;padding:.5em 0 .5em 1.25em;color:#3d5047;font-style:italic}.prose blockquote p{margin-bottom:0}.prose .code-block{margin:1.75em 0}.prose pre{background:#1a2820;color:#c4f060;border-radius:8px;padding:20px 24px;overflow-x:auto;font-size:var(--text-sm);line-height:1.65}.prose pre code{background:none;border:none;padding:0;font-size:inherit;color:inherit}.prose .callout{display:flex;gap:12px;padding:16px 20px;border-radius:8px;background:var(--mk-cream-2);border:1px solid var(--mk-line);margin:1.75em 0;font-style:normal}.prose .callout-icon{font-size:1.25em;flex-shrink:0;line-height:1.4}.prose .callout-body{flex:1}.prose .callout p:last-child{margin-bottom:0}.prose .notion-image{margin:2em 0}.prose .notion-image img{width:100%;height:auto;border-radius:8px;display:block}.prose .notion-image figcaption{margin-top:8px;font-size:var(--text-sm);color:#6b7e74;text-align:center}.prose .table-wrapper{overflow-x:auto;margin:1.75em 0}.prose table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.prose th,.prose td{border:1px solid var(--mk-line);padding:10px 14px;text-align:left}.prose th{background:var(--mk-cream-2);font-weight:var(--fw-semibold)}.prose tr:nth-child(2n) td{background:var(--mk-cream)}.prose .notion-toggle{border:1px solid var(--mk-line);border-radius:8px;margin:1.25em 0;overflow:hidden}.prose .notion-toggle summary{padding:12px 16px;cursor:pointer;font-weight:var(--fw-medium);list-style:none;user-select:none}.prose .notion-toggle summary::-webkit-details-marker{display:none}.prose .notion-toggle[open] summary{border-bottom:1px solid var(--mk-line)}.prose .notion-toggle>:not(summary){padding:0 16px 12px}.prose .bookmark-card{display:block;border:1px solid var(--mk-line);border-radius:8px;padding:12px 16px;text-decoration:none;color:var(--color-primary-700);font-size:var(--text-sm);font-weight:var(--fw-medium);margin:1.25em 0;transition:background .16s}.prose .bookmark-card:hover{background:var(--mk-cream-2)}.prose .column-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin:1.75em 0}.notion-red{color:#e03e3e}.notion-blue{color:#0b6e99}.notion-green{color:#0f7b6c}.notion-yellow{color:#dfab01}.notion-orange{color:#d9730d}.notion-purple{color:#6940a5}.notion-pink{color:#ad1a72}.notion-gray{color:#787774}.notion-brown{color:#64473a}.notion-red-bg{background:#fbe4e4}.notion-blue-bg{background:#ddebf1}.notion-green-bg{background:#ddedea}.notion-yellow-bg{background:#fbf3db}.notion-orange-bg{background:#faebdd}.notion-purple-bg{background:#eae4f2}.notion-pink-bg{background:#f4dfeb}.notion-gray-bg{background:#ebeced}.notion-brown-bg{background:#e9e5e3}.article-byline{margin-top:32px;max-width:720px}.article-byline-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}a.article-byline-link:hover .article-byline-name{color:var(--color-primary-600)}.article-byline-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}.article-byline-name{font-weight:var(--fw-semibold);font-size:var(--text-base);color:var(--mk-ink);transition:color .15s var(--ease-out)}.article-byline-bio{margin-top:8px;font-size:var(--text-sm);color:#6b7e74;line-height:var(--lh-norm)}.article-related{margin-top:64px;padding-top:40px;border-top:1px solid var(--mk-line)}.article-related h2{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--fw-bold);margin-bottom:24px;color:var(--mk-ink)}.article-cta{margin-top:64px}.article-cta-inner{background:var(--mk-cream-2);border:1px solid var(--mk-line);border-radius:16px;padding:40px 48px;display:flex;flex-direction:column;align-items:flex-start;gap:20px;max-width:720px}@media(min-width:640px){.article-cta-inner{flex-direction:row;align-items:center;justify-content:space-between}}.article-cta-text{font-size:var(--text-base);line-height:var(--lh-norm);color:var(--mk-ink);margin:0}.community-cta{margin-top:24px}.community-cta-inner{background:var(--mk-ink);border-radius:16px;padding:32px 48px;display:flex;flex-direction:column;align-items:flex-start;gap:20px;max-width:720px}@media(min-width:640px){.community-cta-inner{flex-direction:row;align-items:center;justify-content:space-between}}.community-cta-text{font-size:var(--text-base);line-height:var(--lh-norm);color:var(--mk-accent, #c4f060);margin:0}.community-cta-link{display:inline-block;padding:.625rem 1.5rem;background:var(--mk-accent, #c4f060);color:var(--mk-ink, #0b1f17);border-radius:6px;text-decoration:none;font-size:var(--text-sm);font-weight:var(--fw-semibold, 600);min-height:44px;line-height:44px;white-space:nowrap}.community-cta-link:hover{opacity:.9}.article-back{margin-top:40px;max-width:720px}.article-back-link{font-size:var(--text-sm);color:var(--color-primary-700);text-decoration:none;font-weight:var(--fw-medium)}.article-back-link:hover{text-decoration:underline}
