/* PAYATE Blog — Inter + Tailwind-gray palette, two-column layout with sidebar.
   Scoped under #blog so it never clashes with the site header/footer. */
body{margin:0;background:#f8fafc;color:#374151;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
#blog{--accent:#2563eb;--accent-d:#1d4ed8;--ink:#111827;--body:#374151;--muted:#6b7280;--line:#e5e7eb;--card:#fff;--bg:#f8fafc;
  max-width:1200px;margin:0 auto;padding:18px 16px 56px}
#blog h1,#blog h2,#blog h3,#blog h4{font-family:inherit;color:var(--ink);letter-spacing:-.01em}
#blog a{color:inherit;text-decoration:none}

/* breadcrumb */
#blog .bl-crumb{font-size:13.5px;color:var(--muted);margin:2px 2px 16px}
#blog .bl-crumb a{color:var(--accent);font-weight:500}
#blog .bl-crumb span{margin:0 7px;color:#cbd5e1}

/* hidden SEO h1 on list */
#blog .bl-hero-head{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ===== two-column layout ===== */
#blog .bl-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:26px;align-items:start}
#blog .bl-main{min-width:0}
#blog .bl-sidebar{position:sticky;top:16px;display:flex;flex-direction:column;gap:18px}
@media(max-width:940px){#blog .bl-layout{grid-template-columns:1fr}#blog .bl-sidebar{position:static;flex-direction:row;flex-wrap:wrap}#blog .bl-sidebar .bl-wid{flex:1 1 260px}}

/* category chips */
#blog .bl-chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}
#blog .bl-chips a{font-size:13.5px;font-weight:600;padding:8px 15px;border-radius:999px;background:#fff;border:1px solid var(--line);color:#4b5563;transition:all .15s}
#blog .bl-chips a:hover{border-color:var(--accent);color:var(--accent)}
#blog .bl-chips a.is-on{background:var(--accent);border-color:var(--accent);color:#fff}

/* featured */
#blog .bl-featured{display:grid;grid-template-columns:1fr 1.05fr;gap:0;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 1px 2px rgba(16,24,40,.06);margin-bottom:24px;transition:box-shadow .2s,transform .2s}
#blog .bl-featured:hover{box-shadow:0 14px 34px rgba(16,24,40,.12);transform:translateY(-2px)}
#blog .bl-featured-cover{position:relative;min-height:300px}
#blog .bl-featured-body{padding:30px 32px;display:flex;flex-direction:column;justify-content:center}
#blog .bl-featured-body h2{font-size:27px;line-height:1.2;font-weight:800;margin:12px 0 12px}
#blog .bl-featured-body p{font-size:15.5px;line-height:1.7;color:var(--muted);margin:0 0 16px}
#blog .bl-badge{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;background:#fef3c7;color:#b45309;font-weight:700;font-size:12.5px;padding:5px 12px;border-radius:999px;margin-bottom:4px}

/* toolbar */
#blog .bl-toolbar{display:flex;align-items:center;justify-content:space-between;margin:2px 2px 16px}
#blog .bl-count{font-size:13.5px;font-weight:600;color:var(--muted)}
#blog .bl-view button{background:#fff;border:1px solid var(--line);color:var(--muted);width:36px;height:34px;border-radius:9px;cursor:pointer;font-size:15px;margin-left:6px}
#blog .bl-view button.is-on{background:var(--accent);border-color:var(--accent);color:#fff}

/* card grid */
#blog .bl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
/* the list grid is a fixed 2 columns so every page shows complete rows (no empty cell) */
#blog.bl-list .bl-grid:not(.is-listview){grid-template-columns:repeat(2,1fr)}
@media(max-width:620px){#blog.bl-list .bl-grid:not(.is-listview){grid-template-columns:1fr}}
#blog .bl-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(16,24,40,.05);transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column}
#blog .bl-card:hover{box-shadow:0 14px 30px rgba(16,24,40,.12);transform:translateY(-3px)}
#blog .bl-card-cover{position:relative;aspect-ratio:16/9;overflow:hidden;background:#eef2f7}
#blog .bl-card-body{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
#blog .bl-card-body h3{font-size:17.5px;line-height:1.3;font-weight:700;margin:9px 0 8px;color:var(--ink)}
#blog .bl-card-body p{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 13px;flex:1}

#blog .bl-cover-img{width:100%;height:100%;object-fit:cover;display:block}
#blog .bl-cover-gen{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;position:absolute;inset:0}
#blog .bl-cover-gen span{font-size:46px;font-weight:800;line-height:1;opacity:.95}
#blog .bl-cover-gen b{font-size:12px;letter-spacing:2px;opacity:.75;margin-top:8px}

#blog .bl-card-cat,#blog .bl-cat{display:inline-flex;align-self:flex-start;font-size:11.5px;font-weight:700;letter-spacing:.2px;text-transform:uppercase;color:var(--accent);background:#eff4ff;padding:5px 11px;border-radius:7px}
#blog .bl-meta{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--muted);flex-wrap:wrap}
#blog .bl-meta .bl-author{font-weight:600;color:#4b5563}

/* list view */
#blog .bl-grid.is-listview{grid-template-columns:1fr;gap:16px}
#blog .bl-grid.is-listview .bl-card{flex-direction:row}
#blog .bl-grid.is-listview .bl-card-cover{width:300px;aspect-ratio:auto;flex:none}
#blog .bl-grid.is-listview .bl-card-body{justify-content:center}
@media(max-width:640px){#blog .bl-grid.is-listview .bl-card{flex-direction:column}#blog .bl-grid.is-listview .bl-card-cover{width:100%;aspect-ratio:16/9}}

/* pagination — numbered, matches the template */
#blog .bl-pager{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin:30px 0 0}
#blog .bl-pager a,#blog .bl-pager span{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;border-radius:10px;font-size:14.5px;font-weight:600;border:1px solid var(--line);background:#fff;color:#374151;transition:all .15s}
#blog .bl-pager a:hover{border-color:var(--accent);color:var(--accent)}
#blog .bl-pager .is-cur{background:var(--accent);border-color:var(--accent);color:#fff}
#blog .bl-pager .is-off{opacity:.4}
#blog .bl-pager .bl-gap{border:0;background:none;min-width:20px;color:var(--muted)}
#blog .bl-empty{text-align:center;color:var(--muted);padding:40px 0}

/* ===== sidebar widgets ===== */
#blog .bl-wid{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 1px 2px rgba(16,24,40,.05)}
#blog .bl-wid h2,#blog .bl-wid h3{font-size:16px;font-weight:800;color:var(--ink);margin:0 0 14px}
#blog .bl-search{display:flex;gap:8px}
#blog .bl-search input{flex:1;min-width:0;border:1px solid var(--line);border-radius:10px;padding:11px 13px;font:inherit;font-size:14px;background:#f9fafb;color:var(--ink)}
#blog .bl-search input:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px rgba(37,99,235,.12)}
#blog .bl-search button{flex:none;width:44px;border:0;border-radius:10px;background:var(--accent);color:#fff;font-size:15px;cursor:pointer}
#blog .bl-search button:hover{background:var(--accent-d)}
#blog .bl-catlist{list-style:none;margin:0;padding:0}
#blog .bl-catlist li{border-top:1px solid #f1f5f9}
#blog .bl-catlist li:first-child{border-top:0}
#blog .bl-catlist a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 2px;font-size:14.5px;font-weight:500;color:#374151}
#blog .bl-catlist a:hover{color:var(--accent)}
#blog .bl-catlist .n{font-size:12px;font-weight:600;color:var(--muted);background:#f1f5f9;border-radius:999px;padding:2px 9px;min-width:22px;text-align:center}
#blog .bl-mr{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
#blog .bl-mr a{display:flex;gap:12px;align-items:center}
#blog .bl-mr .t{width:56px;height:56px;border-radius:10px;overflow:hidden;flex:none;position:relative;background:#eef2f7}
#blog .bl-mr .t img{width:100%;height:100%;object-fit:cover}
#blog .bl-mr .t .bl-cover-gen span{font-size:20px}#blog .bl-mr .t .bl-cover-gen b{display:none}
#blog .bl-mr b{display:block;font-size:13.5px;font-weight:600;line-height:1.35;color:var(--ink)}
#blog .bl-mr a:hover b{color:var(--accent)}
#blog .bl-mr small{display:block;font-size:12px;color:var(--muted);margin-top:3px}

/* ==================== single article ==================== */
#blog.bl-single{max-width:1160px}
#blog.bl-single .bl-layout{grid-template-columns:minmax(0,1fr) 300px}
#blog .bl-article{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px 36px 40px;box-shadow:0 1px 2px rgba(16,24,40,.05)}
@media(max-width:640px){#blog .bl-article{padding:22px 18px 30px}}
#blog .bl-head{margin:0 0 20px}
#blog .bl-head h1{font-size:36px;line-height:1.15;font-weight:800;margin:12px 0 14px}
@media(max-width:640px){#blog .bl-head h1{font-size:28px}}
#blog .bl-cover{border-radius:16px;overflow:hidden;aspect-ratio:16/9;position:relative;margin:0 0 24px}
#blog .bl-share{display:flex;gap:8px;margin-top:14px}
#blog .bl-share a,#blog .bl-share button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:#fff;color:#4b5563;font-weight:700;font-size:14px;cursor:pointer;text-decoration:none;transition:all .15s}
#blog .bl-share a:hover,#blog .bl-share button:hover{background:var(--accent);border-color:var(--accent);color:#fff}
#blog .bl-updated{color:#059669;font-weight:600}

/* TOC */
#blog .bl-toc{background:#f9fafb;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:12px;padding:16px 20px;margin:0 0 26px}
#blog .bl-toc b{font-size:12.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);display:block;margin-bottom:9px;font-weight:800}
#blog .bl-toc ul{list-style:none;margin:0;padding:0}
#blog .bl-toc li{margin:6px 0;font-size:14.5px}
#blog .bl-toc li.lvl-3{padding-left:16px;font-size:13.5px}
#blog .bl-toc a{color:var(--accent)}
#blog .bl-toc a:hover{text-decoration:underline}

/* article typography */
#blog .bl-content{font-size:18px;line-height:1.8;color:var(--body)}
#blog .bl-content h2{font-size:25px;line-height:1.3;font-weight:800;color:var(--ink);margin:38px 0 14px;scroll-margin-top:80px}
#blog .bl-content h3{font-size:20px;line-height:1.35;font-weight:700;color:var(--ink);margin:28px 0 10px;scroll-margin-top:80px}
#blog .bl-content p{margin:0 0 18px}
#blog .bl-content a{color:var(--accent);font-weight:500;text-decoration:underline;text-underline-offset:2px}
#blog .bl-content ul,#blog .bl-content ol{margin:0 0 18px;padding-left:26px}
#blog .bl-content li{margin:8px 0}
#blog .bl-content img{max-width:100%;height:auto;border-radius:12px;margin:20px 0;display:block}
#blog .bl-content blockquote{margin:22px 0;padding:14px 20px;border-left:4px solid var(--accent);background:#f9fafb;border-radius:0 10px 10px 0;color:#4b5563;font-style:italic}
#blog .bl-content pre{background:#0f172a;color:#e2e8f0;padding:16px 18px;border-radius:12px;overflow-x:auto;font-size:14px;line-height:1.6;margin:20px 0}
#blog .bl-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;background:#f1f5f9;padding:2px 6px;border-radius:5px;color:#334155}
#blog .bl-content pre code{background:none;padding:0;color:inherit}
#blog .bl-content table{width:100%;border-collapse:collapse;margin:22px 0;font-size:15px}
#blog .bl-content th,#blog .bl-content td{border:1px solid var(--line);padding:10px 12px;text-align:left}
#blog .bl-content th{background:#f8fafc;font-weight:700}

/* FAQ */
#blog .bl-faq{margin:36px 0 0}
#blog .bl-faq h2{font-size:25px;font-weight:800;margin:0 0 14px}
#blog .bl-faq details{border:1px solid var(--line);border-radius:12px;padding:2px 18px;margin-bottom:10px;background:#fff}
#blog .bl-faq summary{cursor:pointer;list-style:none;padding:15px 26px 15px 0;position:relative;font-weight:700;font-size:16px;color:var(--ink)}
#blog .bl-faq summary::-webkit-details-marker{display:none}
#blog .bl-faq summary::after{content:"+";position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:20px;color:var(--muted)}
#blog .bl-faq details[open] summary::after{content:"\2212"}
#blog .bl-faq details>div{padding:0 0 15px;font-size:15.5px;line-height:1.75;color:var(--body)}

/* try the tools */
#blog .bl-tools{margin:34px 0 0;background:#f9fafb;border:1px solid var(--line);border-radius:16px;padding:22px 24px}
#blog .bl-tools h2{font-size:21px;font-weight:800;margin:0 0 14px}
#blog .bl-tool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
#blog .bl-tool-grid a{display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:14px;color:var(--accent);background:#eff4ff;border:1px solid #dbeafe;border-radius:10px;padding:12px 15px;transition:background .15s}
#blog .bl-tool-grid a:hover{background:#dbeafe}

/* author box */
#blog .bl-authorbox{display:flex;gap:16px;align-items:center;background:#f9fafb;border:1px solid var(--line);border-radius:16px;padding:20px 22px;margin:30px 0 0}
#blog .bl-avatar{width:60px;height:60px;border-radius:50%;object-fit:cover;flex:none}
#blog .bl-avatar-gen{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),#1e40af);color:#fff;font-weight:800;font-size:24px}
#blog .bl-authorbox b{font-size:15px;font-weight:800;color:var(--ink)}
#blog .bl-authorbox p{margin:5px 0 0;font-size:13.5px;line-height:1.6;color:var(--muted)}

/* related */
#blog .bl-related{margin:40px 0 0}
#blog .bl-related h2{font-size:23px;font-weight:800;margin:0 0 16px}
#blog.bl-single .bl-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
#blog .pyt-rel{margin:28px 0 0;padding:22px 24px;background:#fff;border:1px solid var(--line);border-radius:16px}
#blog .pyt-rel h2{font-size:20px;font-weight:800;margin:0 0 14px}
#blog .pyt-rel .prg{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}
#blog .pyt-rel a{display:block;border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#f9fafb;transition:border-color .15s,background .15s}
#blog .pyt-rel a:hover{border-color:var(--accent);background:#eff4ff}
#blog .pyt-rel .prt{display:block;font-weight:700;font-size:14px;color:var(--ink);margin-bottom:2px}
#blog .pyt-rel .prd{display:block;font-size:12px;line-height:1.4;color:var(--muted)}

/* reading progress */
.bl-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,#2563eb,#06b6d4);z-index:9999;transition:width .1s}

@media(max-width:760px){
  #blog .bl-featured{grid-template-columns:1fr}
  #blog .bl-featured-cover{min-height:200px;aspect-ratio:16/9}
}
