/* =====================================================================
   ablatif.com ব্লগ — "Journal" থিম (মিনিমালিস্ট, পরিশীলিত)
   ব্লগের মূল পাতা ও প্রতিটি পোস্ট এই একটি ফাইল ব্যবহার করে। এডিটরেও একই চেহারা।
   রং বদলাতে নিচের :root অংশের মানগুলো বদলান।
   ===================================================================== */
:root{
  --paper:#fbfaf7; --surface:#ffffff; --ink:#15171c; --ink-2:#3a3d44; --muted:#6c6f76; --rule:#e7e3db; --rule-2:#d9d4c9;
  --accent:#0f5e47; --accent-soft:#eef5f1; --link:#0f5e47;
  --serif:"Newsreader","Noto Serif Bengali",Georgia,"Times New Roman",serif;
  --sans:"Inter","Noto Sans Bengali",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --measure:700px; --wide:1080px;
}
:root[data-theme="dark"]{
  --paper:#111214; --surface:#17191c; --ink:#ecebe7; --ink-2:#c9c7c1; --muted:#9a9a96; --rule:#2a2c30; --rule-2:#3a3d42;
  --accent:#7cc4a6; --accent-soft:#1b2a24; --link:#8fd3b6;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:var(--link);text-decoration:none}
img{max-width:100%;height:auto}
::selection{background:#d8eadf}

/* ---------- উপরের অংশ ---------- */
.j-top{border-bottom:1px solid var(--rule);background:var(--paper)}
.j-top .in{max-width:var(--wide);margin:auto;padding:18px 24px;display:flex;align-items:center;gap:24px}
.j-brand{color:var(--ink);display:flex;flex-direction:column;line-height:1.15}
.j-brand b{font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:-.3px}
.j-brand span{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.j-nav{margin-left:auto;display:flex;gap:22px;align-items:center;font-size:14.5px}
.j-nav a{color:var(--ink-2)}
.j-nav a:hover{color:var(--ink)}
.j-theme{background:none;border:1px solid var(--rule-2);color:var(--ink-2);border-radius:999px;width:32px;height:32px;cursor:pointer;font-size:17px;line-height:1}
.j-progress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--accent);z-index:20;transition:width .1s linear}

.eyebrow{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:600}
.sc{font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* ---------- ব্লগের মূল পাতা ---------- */
.j-hero{max-width:var(--wide);margin:auto;padding:64px 24px 36px;display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:end;border-bottom:1px solid var(--rule)}
.j-hero h1{font-family:var(--serif);font-weight:500;font-size:52px;line-height:1.08;letter-spacing:-1px;margin:12px 0 14px}
.j-hero p{color:var(--ink-2);font-size:18px;margin:0;max-width:560px}
.j-search{display:flex;border-bottom:1px solid var(--ink);padding-bottom:6px}
.j-search input{flex:1;border:0;background:transparent;font:inherit;font-size:16px;color:var(--ink);outline:none;padding:6px 0}
.j-search button{border:0;background:none;color:var(--ink);font:inherit;font-size:14px;cursor:pointer;letter-spacing:.06em;text-transform:uppercase}
.j-hint{display:block;margin-top:8px;font-size:12.5px;color:var(--muted)}
.j-cats{max-width:var(--wide);margin:auto;padding:16px 24px;display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--rule)}
.j-cats button{border:1px solid transparent;background:none;color:var(--muted);font:inherit;font-size:14px;padding:4px 12px;border-radius:999px;cursor:pointer}
.j-cats button:hover{color:var(--ink)}
.j-cats button.on{border-color:var(--ink);color:var(--ink)}

.j-main{max-width:var(--wide);margin:auto;padding:0 24px}
/* বিশেষ পোস্ট */
.featured{display:grid;grid-template-columns:1.25fr 1fr;gap:40px;align-items:center;padding:44px 0;border-bottom:1px solid var(--rule)}
.featured-img{aspect-ratio:16/10;overflow:hidden;background:var(--rule);border-radius:3px}
.featured-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.featured:hover .featured-img img{transform:scale(1.02)}
.featured .badge{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:600}
.featured h2{font-family:var(--serif);font-weight:500;font-size:36px;line-height:1.15;letter-spacing:-.5px;margin:12px 0 12px}
.featured h2 a{color:var(--ink)}
.featured-desc{color:var(--ink-2);font-size:17px;margin:0 0 14px}
.featured .meta{font-size:13px;color:var(--muted);margin:0 0 18px}
.featured .btn{display:inline-block;color:var(--ink);font-size:14px;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:2px}

/* পোস্টের তালিকা — সম্পাদকীয় সারি */
.section-head{display:flex;justify-content:space-between;align-items:baseline;padding:36px 0 6px}
.section-head h2{font-family:var(--serif);font-weight:500;font-size:26px;margin:0}
.section-head small{color:var(--muted);font-size:13.5px}
.post-grid{display:block}
.post-card{display:grid;grid-template-columns:110px 1fr 168px;gap:28px;align-items:start;padding:26px 0;border-bottom:1px solid var(--rule)}
.post-card .pc-date{font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:6px;font-variant-numeric:tabular-nums}
.post-card .post-body h3{font-family:var(--serif);font-weight:500;font-size:24px;line-height:1.25;letter-spacing:-.2px;margin:0 0 8px}
.post-card[lang="bn"] .post-body h3{line-height:1.45}
.post-card .post-body h3 a{color:var(--ink)}
.post-card:hover .post-body h3 a{color:var(--accent)}
.post-card .post-body p{margin:0 0 10px;color:var(--ink-2);font-size:15.5px;line-height:1.65}
.post-card .meta-bottom{font-size:12.5px;color:var(--muted);letter-spacing:.03em}
.post-card .thumb{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:3px;background:var(--rule);order:3}
.post-card .thumb img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92)}
.post-card .post-body{order:2}
.post-card .pc-date{order:1}
.pager{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:26px 0 8px;font-size:14px;color:var(--muted)}
.pager button{background:none;border:1px solid var(--rule-2);color:var(--ink);font:inherit;font-size:13.5px;padding:7px 16px;border-radius:999px;cursor:pointer}
.pager button:disabled{opacity:.35;cursor:default}
.pager select{background:var(--surface);color:var(--ink);border:1px solid var(--rule-2);border-radius:8px;padding:5px 8px;font:inherit;font-size:13.5px}
.j-empty{display:none;padding:40px 0;text-align:center;color:var(--muted)}

/* লেখক (মূল পাতা ও পোস্ট) */
.author{display:flex;gap:18px;align-items:flex-start;margin:44px 0 0;padding:26px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.author .av{flex:none;width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:22px}
.author .av img{width:100%;height:100%;object-fit:cover}
.author b{font-family:var(--serif);font-size:19px;font-weight:600;display:block}
.author .role{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:2px 0 6px;display:block}
.author p{margin:0;color:var(--ink-2);font-size:15.5px;line-height:1.65}

/* ---------- পোস্ট ---------- */
.j-article{max-width:var(--wide);margin:auto;padding:0 24px}
.a-head{max-width:var(--measure);margin:auto;padding:56px 0 28px;text-align:center}
.a-head .crumb{font-size:12.5px;color:var(--muted);margin-bottom:18px;letter-spacing:.04em}
.a-head .crumb a{color:var(--muted)}
.post-title{font-family:var(--serif);font-weight:500;font-size:48px;line-height:1.1;letter-spacing:-1px;margin:14px 0 16px}
html[lang="bn"] .post-title{line-height:1.35;letter-spacing:0;font-size:42px}
.dek{font-family:var(--serif);font-style:italic;font-size:21px;line-height:1.5;color:var(--ink-2);margin:0 auto 22px;max-width:620px}
html[lang="bn"] .dek{font-style:normal}
.byline{display:flex;justify-content:center;align-items:center;gap:10px;font-size:13.5px;color:var(--muted);flex-wrap:wrap}
.byline .av{width:30px;height:30px;border-radius:50%;overflow:hidden;background:var(--accent)}
.byline .av img{width:100%;height:100%;object-fit:cover;display:block}
.byline b{color:var(--ink);font-weight:600}
.byline i{font-style:normal;opacity:.5}
.cover{max-width:960px;margin:8px auto 8px;border-radius:3px;overflow:hidden;background:var(--rule)}
.cover img{display:block;width:100%}
.cover-cap{max-width:960px;margin:0 auto;font-size:13px;color:var(--muted);text-align:right}
.a-body{max-width:var(--measure);margin:auto;padding:30px 0 10px}

.toc{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:14px 0;margin:6px 0 30px;font-size:15px}
.toc summary{cursor:pointer;list-style:none;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}
.toc summary::-webkit-details-marker{display:none}
.toc summary:after{content:" +";}
.toc[open] summary:after{content:" –"}
.toc ol{margin:10px 0 2px;padding-left:20px;color:var(--muted)}
.toc li{margin:5px 0}
.toc a{color:var(--ink-2)}
.toc a:hover{color:var(--accent)}

/* লেখার অংশ (এডিটরেও একই) */
.prose{font-family:var(--serif);font-size:20px;line-height:1.72;color:var(--ink)}
html[lang="bn"] .prose,.prose:lang(bn){font-family:"Noto Sans Bengali",var(--sans);font-size:18.5px;line-height:1.95}
.prose > p:first-of-type::first-letter{font-size:3.4em;float:left;line-height:.9;margin:.06em .1em 0 0;font-weight:500;color:var(--accent)}
html[lang="bn"] .prose > p:first-of-type::first-letter{font-size:inherit;float:none;margin:0;color:inherit}
.prose p{margin:0 0 1.15em}
.prose h2{font-family:var(--serif);font-weight:600;font-size:30px;line-height:1.25;letter-spacing:-.3px;margin:1.9em 0 .55em;scroll-margin-top:24px}
.prose h3{font-family:var(--sans);font-weight:600;font-size:19px;letter-spacing:-.1px;margin:1.6em 0 .5em}
.prose h4{font-family:var(--sans);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:1.6em 0 .4em}
html[lang="bn"] .prose h2{font-family:"Noto Serif Bengali",var(--serif);font-size:27px;line-height:1.45;letter-spacing:0}
.prose a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--link) 40%,transparent)}
.prose a:hover{text-decoration-color:var(--link)}
.prose strong{font-weight:600}
.prose ul,.prose ol{margin:0 0 1.15em;padding-left:1.3em}
.prose li{margin:.35em 0}
.prose li::marker{color:var(--muted)}
.prose blockquote{margin:1.6em 0;padding:0 0 0 22px;border-left:2px solid var(--accent);font-style:italic;font-size:1.12em;color:var(--ink-2)}
.prose figure{margin:1.8em 0}
.prose figcaption{font-family:var(--sans);font-size:13.5px;color:var(--muted);text-align:center;margin-top:8px}
.prose img{border-radius:3px}
.prose hr{border:0;text-align:center;margin:2.4em 0}
.prose hr:after{content:"· · ·";color:var(--muted);letter-spacing:.6em;font-size:18px}
.prose table{border-collapse:collapse;width:100%;margin:1.5em 0;font-family:var(--sans);font-size:15px;line-height:1.55;display:block;overflow-x:auto}
.prose th,.prose td{border-bottom:1px solid var(--rule);padding:10px 12px;text-align:left;vertical-align:top}
.prose th{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;border-bottom:1px solid var(--ink)}
.prose code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.82em;background:var(--accent-soft);padding:2px 6px;border-radius:4px}
.prose .note,.prose .warning,.prose .tip{font-family:var(--sans);font-size:16px;line-height:1.65;padding:16px 20px;margin:1.6em 0;border-radius:3px;border-left:2px solid}
.prose .note{background:#f2f4f8;border-color:#4b5f8c}
.prose .warning{background:#fbf4ea;border-color:#b7791f}
.prose .tip{background:var(--accent-soft);border-color:var(--accent)}
:root[data-theme="dark"] .prose .note{background:#1a1f2a} :root[data-theme="dark"] .prose .warning{background:#2a2216}
.prose .note p:last-child,.prose .warning p:last-child,.prose .tip p:last-child{margin-bottom:0}

.tags{display:flex;gap:8px;flex-wrap:wrap;margin:34px 0 0}
.tags span{font-size:12.5px;color:var(--muted);border:1px solid var(--rule-2);border-radius:999px;padding:3px 11px}
.share{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:26px 0 0;font-size:13.5px;color:var(--muted)}
.share a,.share button{color:var(--ink-2);background:none;border:0;font:inherit;cursor:pointer;padding:0;border-bottom:1px solid var(--rule-2)}
.share a:hover,.share button:hover{color:var(--accent);border-color:var(--accent)}
.ad-slot{margin:2em 0}

.related{max-width:var(--wide);margin:56px auto 0;padding:34px 0 0;border-top:1px solid var(--ink)}
.related h2{font-family:var(--serif);font-weight:500;font-size:26px;margin:0 0 22px}
.related .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.related a.card{color:var(--ink);display:block}
.related a.card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:3px;background:var(--rule);margin-bottom:12px}
.related a.card span{display:block;font-family:var(--serif);font-size:19px;line-height:1.3}
.related a.card small{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.related a.card:hover span{color:var(--accent)}

/* ---------- নিচের অংশ ---------- */
.j-foot{margin-top:72px;border-top:1px solid var(--rule)}
.j-foot .in{max-width:var(--wide);margin:auto;padding:28px 24px 40px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13.5px;color:var(--muted)}
.j-foot a{color:var(--ink-2)}
.j-foot nav{display:flex;gap:16px;flex-wrap:wrap}
.preview-bar{position:sticky;top:0;z-index:30;background:#fff6e5;color:#7a5410;text-align:center;padding:8px;font-size:14px;border-bottom:1px solid #f3d9a4}

/* ---------- মোবাইল ---------- */
@media (max-width:860px){
  .j-hero{grid-template-columns:1fr;gap:26px;padding:40px 20px 28px}
  .j-hero h1{font-size:38px}
  .featured{grid-template-columns:1fr;gap:20px;padding:30px 0}
  .featured h2{font-size:28px}
  .post-card{grid-template-columns:1fr 96px;gap:16px;padding:22px 0}
  .post-card .pc-date{grid-column:1/-1;order:0;padding:0}
  .post-card .post-body h3{font-size:20px}
  .post-card .post-body p{display:none}
  .related .grid{grid-template-columns:1fr;gap:22px}
}
@media (max-width:640px){
  .j-top .in{padding:14px 18px;gap:12px;flex-wrap:wrap}
  .j-nav{gap:14px;font-size:14px}
  .j-brand b{font-size:21px}
  .j-main,.j-article{padding:0 18px}
  .a-head{padding:36px 0 20px}
  .post-title{font-size:33px}
  html[lang="bn"] .post-title{font-size:29px}
  .dek{font-size:18.5px}
  .prose{font-size:18.5px}
  html[lang="bn"] .prose{font-size:17.5px}
  .prose h2{font-size:25px}
}
@media print{.j-top,.j-foot,.related,.ad-slot,.share,.toc,.j-progress,.preview-bar{display:none}body{background:#fff}.prose{font-size:12pt}}

/* =====================================================================
   সাইটের অন্য পাতা (মূল পাতা, About, Contact, নীতিমালা) — একই থিম (v=3, ২০২৬-১০-২৬)
   ===================================================================== */
.prose .highlight{font-family:var(--sans);font-size:16px;line-height:1.65;padding:16px 20px;margin:1.6em 0;border-radius:3px;border-left:2px solid var(--accent);background:var(--accent-soft)}
.prose .warn{font-family:var(--sans);font-size:16px;line-height:1.65;padding:16px 20px;margin:1.6em 0;border-radius:3px;border-left:2px solid #b7791f;background:#fbf4ea}
:root[data-theme="dark"] .prose .warn{background:#2a2216}
.page-head{max-width:var(--measure);margin:auto;padding:64px 0 10px}
.page-head h1{font-family:var(--serif);font-weight:500;font-size:46px;line-height:1.1;letter-spacing:-.8px;margin:12px 0 14px}
.page-head .dek{text-align:left;margin:0;max-width:none}
.page-body{max-width:var(--measure);margin:auto;padding:26px 0 10px}
.page-body .prose{font-size:19px}
.page-body .prose h2{font-size:25px}
.updated{font-size:13px;color:var(--muted);margin-top:16px}

/* মূল পাতা */
.h-hero{max-width:var(--wide);margin:auto;padding:80px 24px 64px;display:grid;grid-template-columns:1.55fr 1fr;gap:64px;align-items:center}
.h-hero h1{font-family:var(--serif);font-weight:500;font-size:60px;line-height:1.04;letter-spacing:-1.4px;margin:14px 0 20px}
.h-hero h1 em{font-style:italic;color:var(--accent)}
.h-hero p{font-size:18.5px;color:var(--ink-2);margin:0 0 26px;max-width:600px}
.h-links{display:flex;gap:26px;flex-wrap:wrap}
.h-links a{color:var(--ink);font-size:14px;letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:3px}
.h-links a.alt{color:var(--muted);border-color:var(--rule-2)}
.h-links a:hover{color:var(--accent);border-color:var(--accent)}
.h-person{border-left:1px solid var(--rule);padding-left:36px}
.h-person img{width:96px;height:96px;border-radius:50%;object-fit:cover;display:block;margin-bottom:18px;filter:grayscale(.15)}
.h-person b{font-family:var(--serif);font-size:24px;font-weight:600;display:block}
.h-person .role{display:block;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:4px 0 12px}
.h-person p{margin:0;color:var(--ink-2);font-size:15.5px;line-height:1.65}
.h-section{max-width:var(--wide);margin:auto;padding:0 24px}
.h-section > header{display:flex;justify-content:space-between;align-items:baseline;gap:16px;border-top:1px solid var(--ink);padding:18px 0 0;margin:56px 0 10px}
.h-section > header h2{font-family:var(--serif);font-weight:500;font-size:28px;margin:0}
.h-section > header a,.h-section > header small{font-size:13px;color:var(--muted);letter-spacing:.04em}
.h-three{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:18px 0 0}
.h-three .num{font-family:var(--serif);font-size:15px;color:var(--accent);display:block;margin-bottom:10px}
.h-three h3{font-family:var(--serif);font-weight:500;font-size:22px;margin:0 0 8px}
.h-three p{margin:0;color:var(--ink-2);font-size:15.5px;line-height:1.65}
.h-rows a{display:grid;grid-template-columns:150px 1fr 24px;gap:26px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--rule);color:var(--ink)}
.h-rows a .k{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.h-rows a b{font-family:var(--serif);font-weight:500;font-size:23px;line-height:1.3;display:block;margin-bottom:4px}
.h-rows a span.d{color:var(--ink-2);font-size:15.5px}
.h-rows a i{font-style:normal;color:var(--muted);transition:transform .2s}
.h-rows a:hover b{color:var(--accent)} .h-rows a:hover i{transform:translateX(4px);color:var(--accent)}
.h-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:18px 0 0}
.h-cards a{color:var(--ink);display:block}
.h-cards img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:3px;background:var(--rule);margin-bottom:14px}
.h-cards small{display:block;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.h-cards b{font-family:var(--serif);font-weight:500;font-size:21px;line-height:1.3;display:block}
.h-cards a:hover b{color:var(--accent)}
.h-note{max-width:var(--wide);margin:64px auto 0;padding:0 24px}
.h-note div{border:1px solid var(--rule);padding:22px 26px;font-size:15px;color:var(--ink-2);border-radius:3px}
.h-note b{display:block;font-family:var(--serif);font-size:18px;color:var(--ink);margin-bottom:4px;font-weight:600}
.j-foot.rich .in{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
.j-foot.rich h4{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-weight:600}
.j-foot.rich nav{flex-direction:column;gap:7px}
.j-foot.rich .brandline b{font-family:var(--serif);font-size:20px;color:var(--ink);display:block;margin-bottom:6px;font-weight:600}
.j-foot.rich .copy{grid-column:1/-1;border-top:1px solid var(--rule);padding-top:16px;font-size:12.5px}
@media (max-width:860px){
  .h-hero{grid-template-columns:1fr;gap:36px;padding:48px 20px 40px}
  .h-hero h1{font-size:40px}
  .h-person{border-left:0;border-top:1px solid var(--rule);padding:26px 0 0}
  .h-three,.h-cards{grid-template-columns:1fr;gap:28px}
  .h-rows a{grid-template-columns:1fr 20px;gap:6px 16px}
  .h-rows a .k{grid-column:1/-1}
  .page-head{padding:40px 0 6px}
  .page-head h1{font-size:34px}
  .j-foot.rich .in{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){.h-section,.h-note{padding:0 18px}.page-head,.page-body{padding-left:0;padding-right:0}}
.page-body .prose > p:first-of-type::first-letter{font-size:inherit;float:none;margin:0;color:inherit;line-height:inherit}
