html.dark .post-content,html.light .post-content{font-family:Inter,sans-serif;line-height:1.8;text-align:justify;font-size:16px}html.dark .post-content a,html.light .post-content a{text-decoration:none;transition:color .3s ease-in-out}html.light .post-content{color:rgb(var(--color-ink-333))}html.light .post-content h1{font-size:28px;font-weight:700;color:rgb(var(--color-ink-222));margin-bottom:16px}html.light .post-content h2{font-size:24px;font-weight:700;color:rgb(var(--color-ink-333));margin-top:24px;margin-bottom:12px}html.light .post-content h3{font-size:20px;font-weight:700;color:rgb(var(--color-ink-444));margin-top:20px;margin-bottom:10px}html.light .post-content p{margin-bottom:16px}html.light .post-content a{color:rgb(var(--color-brand-blue));font-weight:500}html.light .post-content a:hover{color:rgb(var(--color-brand-blue-hover));text-decoration:underline}html.dark .post-content ol,html.dark .post-content ul,html.light .post-content ol,html.light .post-content ul{margin:16px 0;padding-left:20px}html.dark .post-content ul,html.light .post-content ul{list-style-type:disc}html.dark .post-content ol,html.light .post-content ol{list-style-type:decimal}html.dark .post-content li,html.light .post-content li{margin-bottom:8px}html.light .post-content blockquote{font-style:italic;color:rgb(var(--color-neutral-600));border-left:4px solid rgb(var(--color-brand-blue));padding-left:16px;margin:20px 0}html.dark .post-content img,html.light .post-content img{max-width:100%;height:auto;border-radius:8px;display:block;margin:16px auto}html.light .post-content pre{background:rgb(var(--color-zinc-100));padding:12px;border-radius:6px;overflow-x:auto}html.light .post-content code{font-family:'Courier New',monospace;font-size:14px;background:rgb(var(--color-zinc-100));padding:2px 4px;border-radius:4px}html.light .post-content table{width:100%;border-collapse:collapse;margin-top:16px}html.light .post-content table td,html.light .post-content table th{border:1px solid rgb(var(--color-ink-ddd));padding:10px;text-align:left}html.light .post-content table th{background:rgb(var(--color-brand-blue));color:rgb(var(--color-white));font-weight:700}html.light .post-content table tr:nth-child(2n){background:rgb(var(--color-stone-50))}html.dark .post-content{color:rgb(var(--color-ink-ddd))}html.dark .post-content h1{font-size:28px;font-weight:700;color:rgb(var(--color-white));margin-bottom:16px}html.dark .post-content h2{font-size:24px;font-weight:700;color:rgb(var(--color-ink-ddd));margin-top:24px;margin-bottom:12px}html.dark .post-content h3{font-size:20px;font-weight:700;color:rgb(var(--color-ink-bbb));margin-top:20px;margin-bottom:10px}html.dark .post-content p{margin-bottom:16px;color:rgb(var(--color-ink-ccc))}html.dark .post-content a{color:rgb(var(--color-brand-blue-dark));font-weight:500}html.dark .post-content a:hover{color:rgb(var(--color-brand-blue-dark-hover));text-decoration:underline}html.dark .post-content blockquote{font-style:italic;color:rgb(var(--color-ink-bbb));border-left:4px solid rgb(var(--color-brand-blue-dark));padding-left:16px;margin:20px 0}html.dark .post-content pre{background:rgb(var(--color-ink-1e1e1e));padding:12px;border-radius:6px;overflow-x:auto;color:rgb(var(--color-ink-ddd))}html.dark .post-content code{font-family:'Courier New',monospace;font-size:14px;background:rgb(var(--color-zinc-800));padding:2px 4px;border-radius:4px;color:rgb(var(--color-ink-ddd))}html.dark .post-content table{width:100%;border-collapse:collapse;margin-top:16px;background:rgb(var(--color-ink-222))}html.dark .post-content table td,html.dark .post-content table th{border:1px solid rgb(var(--color-ink-444));padding:10px;text-align:left;color:rgb(var(--color-ink-ddd))}html.dark .post-content table th{background:rgb(var(--color-brand-blue-dark));color:rgb(var(--color-white));font-weight:700}html.dark .post-content table tr:nth-child(2n){background:rgb(var(--color-ink-333))}html.light .post-content li[data-list=bullet]{list-style-type:disc;margin-left:20px;font-family:Poppins,sans-serif;font-size:16px;color:rgb(var(--color-ink-333))}html.dark .post-content li[data-list=bullet]{list-style-type:circle;margin-left:20px;font-family:Poppins,sans-serif;font-size:16px;color:rgb(var(--color-ink-f0f0f0))}/* ── Tiptap text-align ────────────────────────────────────── */
.post-content [style*="text-align:left"],.post-content [style*="text-align: left"]{text-align:left}
.post-content [style*="text-align:center"],.post-content [style*="text-align: center"]{text-align:center}
.post-content [style*="text-align:right"],.post-content [style*="text-align: right"]{text-align:right}
.post-content [style*="text-align:justify"],.post-content [style*="text-align: justify"]{text-align:justify}
/* ── Tiptap columns layout ────────────────────────────────── */
.post-content [data-columns]{display:grid;gap:1.25rem;margin:1.25rem 0}
.post-content [data-columns="2"]{grid-template-columns:repeat(2,1fr)}
.post-content [data-columns="3"]{grid-template-columns:repeat(3,1fr)}
.post-content [data-columns="4"]{grid-template-columns:repeat(4,1fr)}
@media(max-width:640px){.post-content [data-columns]{grid-template-columns:1fr}}
.post-content [data-col]{min-width:0}
/* ── Tiptap CTA buttons ───────────────────────────────────── */
.post-content .cta-btn{display:inline-block;padding:10px 24px;border-radius:6px;font-weight:600;text-decoration:none;cursor:pointer;transition:opacity .2s}
.post-content .cta-btn:hover{opacity:.85;text-decoration:none}
/* ── Tiptap h4-h6 ─────────────────────────────────────────── */
html.light .post-content h4{font-size:17px;font-weight:700;color:rgb(var(--color-ink-444));margin-top:16px;margin-bottom:8px}html.dark .post-content h4{font-size:17px;font-weight:700;color:rgb(var(--color-ink-aaa));margin-top:16px;margin-bottom:8px}
html.light .post-content h5{font-size:15px;font-weight:700;color:rgb(var(--color-neutral-600));margin-top:14px;margin-bottom:6px}html.dark .post-content h5{font-size:15px;font-weight:700;color:rgb(var(--color-ink-999));margin-top:14px;margin-bottom:6px}
html.light .post-content h6{font-size:13px;font-weight:700;color:rgb(var(--color-ink-666));margin-top:12px;margin-bottom:4px}html.dark .post-content h6{font-size:13px;font-weight:700;color:rgb(var(--color-ink-888));margin-top:12px;margin-bottom:4px}
/* ── Tiptap hr ────────────────────────────────────────────── */
html.light .post-content hr{border:none;border-top:2px solid rgb(var(--color-gray-200));margin:24px 0}html.dark .post-content hr{border:none;border-top:2px solid rgb(var(--color-gray-700));margin:24px 0}
/* ── Image modal ──────────────────────────────────────────── */
.image-modal{position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:rgb(var(--color-black) / .8);display:flex;justify-content:center;align-items:center;overflow:hidden}.image-modal img{max-width:90%;max-height:90%;border-radius:8px;box-shadow:0 4px 10px rgb(var(--color-white) / .2)}.close-modal{position:absolute;top:20px;right:30px;font-size:40px;color:rgb(var(--color-white));cursor:pointer}
/* ── Sidebar layout ───────────────────────────────────────── */
.sidebar-layout{display:grid;gap:2rem;grid-template-columns:1fr}
@media(min-width:1024px){.sidebar-layout{grid-template-columns:3fr 1fr}}
/* ── Sidebar sticky ───────────────────────────────────────── */
.sidebar-sticky{position:sticky;top:80px}
/* ── Sidebar widgets ──────────────────────────────────────── */
.sb-widget{background:rgb(var(--color-white));border-radius:6px;box-shadow:0 1px 4px rgb(var(--color-black) / .08);padding:20px;margin-bottom:0}
html.dark .sb-widget{background:rgb(var(--color-slate-900));box-shadow:0 1px 4px rgb(var(--color-black) / .4)}
.sb-widget-title{font-size:16px;font-weight:700;color:rgb(var(--color-slate-800));margin-bottom:16px}
html.dark .sb-widget-title{color:rgb(var(--color-slate-100))}
/* search input */
.sb-search-wrap{position:relative}
.sb-search-input{width:100%;border:1px solid rgb(var(--color-slate-200));border-radius:6px;background:transparent;padding:8px 40px 8px 14px;font-size:14px;color:rgb(var(--color-slate-700));outline:none;transition:border-color .2s;box-sizing:border-box}
.sb-search-input::placeholder{color:rgb(var(--color-slate-400))}
.sb-search-input:focus{border-color:rgb(var(--color-indigo-600))}
html.dark .sb-search-input{border-color:rgb(var(--color-slate-700));color:rgb(var(--color-slate-300))}
html.dark .sb-search-input::placeholder{color:rgb(var(--color-slate-500))}
html.dark .sb-search-input:focus{border-color:rgb(var(--color-indigo-500))}
.sb-search-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:rgb(var(--color-indigo-600));font-size:18px;line-height:1;padding:0}
/* recent posts list */
.sb-posts{list-style:none;margin:0;padding:0}
.sb-posts li+li{margin-top:16px}
.sb-post-link{display:flex;gap:12px;align-items:flex-start;text-decoration:none}
.sb-post-thumb{width:60px;height:60px;border-radius:6px;object-fit:cover;flex-shrink:0}
.sb-post-thumb-placeholder{width:60px;height:60px;border-radius:6px;flex-shrink:0;background:rgb(var(--color-indigo-600) / .1);display:flex;align-items:center;justify-content:center}
html.dark .sb-post-thumb-placeholder{background:rgb(var(--color-indigo-500) / .2)}
.sb-post-thumb-placeholder i{font-size:22px;color:rgb(var(--color-indigo-600) / .5)}
.sb-post-info{flex:1;min-width:0}
.sb-post-title{font-size:13px;font-weight:600;color:rgb(var(--color-slate-700));line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s}
html.dark .sb-post-title{color:rgb(var(--color-slate-200))}
.sb-post-link:hover .sb-post-title{color:rgb(var(--color-indigo-600))}
html.dark .sb-post-link:hover .sb-post-title{color:rgb(var(--color-indigo-400))}
.sb-post-date{font-size:12px;color:rgb(var(--color-slate-400));margin-top:4px;display:block}
/* about widget */
.sb-about-logo{height:36px;display:block;margin:0 auto 10px}
.sb-about-desc{font-size:13px;color:rgb(var(--color-slate-500));line-height:1.6;text-align:center}
html.dark .sb-about-desc{color:rgb(var(--color-slate-400))}
.sb-about-link{display:inline-block;margin-top:12px;font-size:13px;font-weight:600;color:rgb(var(--color-indigo-600));text-decoration:none;transition:color .2s}
.sb-about-link:hover{color:rgb(var(--color-indigo-800))}
html.dark .sb-about-link{color:rgb(var(--color-indigo-400))}
html.dark .sb-about-link:hover{color:rgb(var(--color-indigo-300))}
.sb-gap{display:flex;flex-direction:column;gap:20px}