/* ============================================================
   KriptoFX FAZA 7 — Single Post Stylesheet
   Loaded conditionally on is_single() via wp_enqueue_style.
   Self-contained: variables + reset + Astra hide + navbar
   + article typography + sidebar + author + related + footer.
   ============================================================ */
:root {
  --kfx-bg:#0B0F19; --kfx-card:#121826; --kfx-card-2:#0F1521; --kfx-card-hi:#161E2F;
  --kfx-border:#1E293B; --kfx-border-hi:#2D3A52;
  --kfx-primary:#2962FF; --kfx-accent:#00C896;
  --kfx-text:#E5E7EB; --kfx-text-2:#B4BCC9; --kfx-muted:#9CA3AF;
  --kfx-danger:#EF4444; --kfx-warning:#F59E0B;
  --kfx-font-h:'Poppins',system-ui,sans-serif; --kfx-font-b:'Inter',system-ui,sans-serif;
  --kfx-radius:12px; --kfx-radius-sm:8px;
  --kfx-shell:1200px; --kfx-content-w:720px; --kfx-sidebar-w:320px;
  --kfx-tx:200ms cubic-bezier(.4,0,.2,1);
}

/* ============================================================
   ASTRA NEUTRALIZE (single posts)
   Same aggressive pattern as homepage hotfix v2.
   ============================================================ */
body.single-post-kfx,
body.single-post-kfx html { margin:0!important; padding:0!important; overflow-x:hidden; background:var(--kfx-bg)!important; color:var(--kfx-text); font-family:var(--kfx-font-b); font-size:16px; line-height:1.5; -webkit-font-smoothing:antialiased; }
body.single-post-kfx #masthead,
body.single-post-kfx .site-header,
body.single-post-kfx #colophon,
body.single-post-kfx .site-footer,
body.single-post-kfx .ast-related-posts-wrapper,
body.single-post-kfx .ast-author-details,
body.single-post-kfx .ast-comment-formwrap,
body.single-post-kfx .entry-header,
body.single-post-kfx .entry-footer,
body.single-post-kfx .ast-pagination,
body.single-post-kfx .ast-edit-post-link,
body.single-post-kfx .post-edit-link { display:none!important; }
body.single-post-kfx #page,
body.single-post-kfx .hfeed.site,
body.single-post-kfx .site,
body.single-post-kfx #content,
body.single-post-kfx .site-content,
body.single-post-kfx #primary,
body.single-post-kfx #main,
body.single-post-kfx .ast-container,
body.single-post-kfx .ast-container-fluid,
body.single-post-kfx .entry-content,
body.single-post-kfx .ast-content-wrap,
body.single-post-kfx article.post,
body.single-post-kfx article.page,
body.single-post-kfx .ast-row,
body.single-post-kfx .ast-no-sidebar,
body.single-post-kfx .ast-page-builder-template,
body.single-post-kfx .ast-page-builder-template > .entry-content {
  display:block!important; width:100%!important; max-width:100%!important;
  margin:0!important; padding:0!important;
  background:transparent!important; border:0!important; box-shadow:none!important;
  position:static!important; float:none!important; flex:none!important;
  text-align:left!important; direction:ltr!important;
}
body.single-post-kfx .kfx-single {
  display:block!important; width:100vw!important; max-width:100vw!important;
  margin-left:calc(-1 * (100vw - 100%) / 2)!important;
  margin-right:calc(-1 * (100vw - 100%) / 2)!important;
  padding:0!important; text-align:left!important; direction:ltr!important;
}
body.single-post-kfx.admin-bar .kfx-navbar { top: 32px !important; }
@media screen and (max-width:782px) { body.single-post-kfx.admin-bar .kfx-navbar { top: 46px !important; } }

/* ============================================================
   BASE
   ============================================================ */
.kfx-single * , .kfx-single *::before, .kfx-single *::after { box-sizing:border-box; }
.kfx-single img, .kfx-single svg { display:block; max-width:100%; }
.kfx-single a { color:inherit; text-decoration:none; }
.kfx-single button { font:inherit; cursor:pointer; border:0; background:none; color:inherit; }
.kfx-single input { font:inherit; color:inherit; }
.kfx-single h1, .kfx-single h2, .kfx-single h3, .kfx-single h4 { font-family:var(--kfx-font-h); margin:0; }
.kfx-shell { max-width:var(--kfx-shell); margin:0 auto; padding:0 24px; }

/* ============================================================
   READING PROGRESS BAR
   ============================================================ */
.kfx-progress { position:fixed; top:0; left:0; right:0; height:3px; background:rgba(255,255,255,.04); z-index:200; pointer-events:none; }
body.single-post-kfx.admin-bar .kfx-progress { top:32px; }
@media screen and (max-width:782px) { body.single-post-kfx.admin-bar .kfx-progress { top:46px; } }
.kfx-progress-fill { height:100%; background:linear-gradient(90deg,var(--kfx-primary),var(--kfx-accent)); transform-origin:left center; transform:scaleX(0); transition:transform 50ms linear; box-shadow:0 0 12px rgba(0,200,150,.6); }

/* ============================================================
   NAVBAR
   ============================================================ */
.kfx-navbar { position:sticky; top:3px; z-index:100; height:64px; background:rgba(11,15,25,.82); backdrop-filter:saturate(160%) blur(14px); -webkit-backdrop-filter:saturate(160%) blur(14px); border-bottom:1px solid var(--kfx-border); }
.kfx-navbar .kfx-shell { height:100%; display:flex; align-items:center; gap:32px; }
.kfx-logo { display:flex; align-items:center; gap:8px; font-family:var(--kfx-font-h); font-weight:800; font-size:18px; letter-spacing:-.01em; color:var(--kfx-text); }
.kfx-logo-mark { width:28px; height:28px; border-radius:8px; background:linear-gradient(135deg,var(--kfx-primary),var(--kfx-accent)); display:grid; place-items:center; color:#fff; font-weight:800; font-size:14px; }
.kfx-nav-links { display:flex; gap:4px; flex:1; }
.kfx-nav-links a { padding:8px 14px; border-radius:var(--kfx-radius-sm); color:var(--kfx-text-2); font-weight:500; font-size:14px; transition:var(--kfx-tx); }
.kfx-nav-links a:hover, .kfx-nav-links a.is-active { color:var(--kfx-text); background:var(--kfx-card); }
.kfx-search { display:flex; align-items:center; gap:8px; padding:8px 14px; background:var(--kfx-card); border:1px solid var(--kfx-border); border-radius:var(--kfx-radius-sm); color:var(--kfx-muted); font-size:13px; min-width:220px; }
.kfx-search kbd { margin-left:auto; padding:2px 6px; background:var(--kfx-bg); border:1px solid var(--kfx-border); border-radius:4px; font-family:var(--kfx-font-b); font-size:11px; color:var(--kfx-muted); }
.kfx-btn { padding:8px 16px; border-radius:var(--kfx-radius-sm); font-weight:600; font-size:14px; transition:var(--kfx-tx); display:inline-flex; align-items:center; gap:6px; }
.kfx-btn-ghost { background:transparent; color:var(--kfx-text-2); border:1px solid var(--kfx-border); }
.kfx-btn-ghost:hover { border-color:var(--kfx-border-hi); color:var(--kfx-text); }
.kfx-hamburger { display:none; }

/* ============================================================
   POST HEADER
   ============================================================ */
.kfx-post-header { padding:48px 0 32px; border-bottom:1px solid var(--kfx-border); }
.kfx-breadcrumb { display:flex; align-items:center; gap:8px; flex-wrap:wrap; font-size:13px; color:var(--kfx-muted); margin-bottom:24px; }
.kfx-breadcrumb a { color:var(--kfx-text-2); transition:var(--kfx-tx); }
.kfx-breadcrumb a:hover { color:var(--kfx-accent); }
.kfx-breadcrumb svg { width:12px; height:12px; opacity:.5; }
.kfx-breadcrumb .current { color:var(--kfx-text); font-weight:500; }
.kfx-post-cat { display:inline-flex; align-items:center; gap:6px; padding:5px 12px; background:rgba(247,147,26,.08); border:1px solid rgba(247,147,26,.25); border-radius:999px; color:#F7931A; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; margin-bottom:20px; transition:var(--kfx-tx); }
.kfx-post-cat:hover { background:rgba(247,147,26,.15); }
.kfx-post-title { font-family:var(--kfx-font-h); font-size:clamp(28px,3.6vw + 8px,48px); font-weight:800; letter-spacing:-.02em; line-height:1.15; margin:0 0 28px; max-width:900px; color:var(--kfx-text); }
.kfx-post-meta { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.kfx-post-meta-author { display:flex; align-items:center; gap:12px; }
.kfx-avatar-md { width:44px; height:44px; border-radius:50%; background:linear-gradient(135deg,var(--kfx-primary),var(--kfx-accent)); display:grid; place-items:center; font-family:var(--kfx-font-h); font-weight:700; font-size:17px; color:#fff; }
.kfx-post-meta-info { display:flex; flex-direction:column; gap:2px; }
.kfx-post-meta-name { font-weight:600; color:var(--kfx-text); font-size:14px; transition:var(--kfx-tx); }
a.kfx-post-meta-name:hover { color:var(--kfx-accent); }
.kfx-post-meta-detail { color:var(--kfx-muted); font-size:12px; }
.kfx-meta-divider { width:1px; height:32px; background:var(--kfx-border); }
.kfx-share-bar { display:flex; gap:6px; margin-left:auto; flex-wrap:wrap; }
.kfx-share-btn { width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--kfx-border); border-radius:var(--kfx-radius-sm); color:var(--kfx-text-2); transition:var(--kfx-tx); }
.kfx-share-btn:hover { border-color:var(--kfx-accent); color:var(--kfx-accent); background:rgba(0,200,150,.06); }
.kfx-share-btn.kfx-share-whatsapp:hover { border-color:#25D366; color:#25D366; background:rgba(37,211,102,.08); }
.kfx-share-btn.kfx-share-telegram:hover { border-color:#229ED9; color:#229ED9; background:rgba(34,158,217,.08); }
.kfx-share-btn.kfx-share-linkedin:hover { border-color:#0A66C2; color:#0A66C2; background:rgba(10,102,194,.08); }
.kfx-share-btn.is-text { width:auto; padding:0 14px; gap:6px; font-size:13px; font-weight:500; }

/* ============================================================
   FEATURED COVER
   ============================================================ */
.kfx-featured { margin:32px auto; max-width:var(--kfx-content-w); }
.kfx-featured-frame { aspect-ratio:16/9; border-radius:var(--kfx-radius); overflow:hidden; border:1px solid var(--kfx-border); background:linear-gradient(135deg,#1a2540,#0d1420); position:relative; }
.kfx-featured-frame::before { content:''; position:absolute; inset:0; background:radial-gradient(800px circle at 20% 20%,rgba(41,98,255,.35),transparent 50%),radial-gradient(700px circle at 80% 80%,rgba(0,200,150,.25),transparent 50%); }
.kfx-featured-frame::after { content:''; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:40px 40px; mask-image:radial-gradient(ellipse at center,black 30%,transparent 70%); }
.kfx-featured-frame svg { position:absolute; inset:0; margin:auto; z-index:1; }
.kfx-featured-frame .kfx-featured-img,
.kfx-featured-frame img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:2; }
.kfx-featured-caption { margin-top:12px; font-size:13px; color:var(--kfx-muted); text-align:center; font-style:italic; }

/* ============================================================
   ARTICLE GRID
   ============================================================ */
.kfx-article-grid { display:grid; grid-template-columns:1fr var(--kfx-sidebar-w); gap:60px; align-items:start; padding:48px 0 64px; }

/* ============================================================
   ARTICLE TYPOGRAPHY
   ============================================================ */
.kfx-article { max-width:var(--kfx-content-w); font-size:clamp(16px,0.5vw + 14px,18px); line-height:1.75; color:var(--kfx-text); }
.kfx-article > * { max-width: var(--kfx-content-w); }
.kfx-article p { margin:0 0 22px; color:var(--kfx-text-2); }
.kfx-article p:first-of-type { font-size:19px; font-weight:500; color:var(--kfx-text); margin-bottom:32px; line-height:1.6; }
.kfx-article h2 { font-family:var(--kfx-font-h); font-size:clamp(24px,1.8vw + 14px,32px); font-weight:700; letter-spacing:-.015em; line-height:1.2; margin:56px 0 16px; color:var(--kfx-text); scroll-margin-top:88px; position:relative; }
.kfx-article h2::before { content:''; position:absolute; left:-16px; top:50%; width:4px; height:28px; border-radius:2px; background:var(--kfx-accent); transform:translateY(-50%); opacity:0; transition:opacity var(--kfx-tx); }
.kfx-article h2:hover::before { opacity:1; }
.kfx-article h3 { font-family:var(--kfx-font-h); font-size:clamp(19px,1.2vw + 12px,23px); font-weight:600; letter-spacing:-.01em; margin:40px 0 12px; color:var(--kfx-text); scroll-margin-top:88px; }
.kfx-article h4 { font-family:var(--kfx-font-h); font-size:18px; font-weight:600; margin:32px 0 10px; color:var(--kfx-text); }
.kfx-article a { color:var(--kfx-accent); text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; transition:var(--kfx-tx); }
.kfx-article a:hover { color:#00E0B5; text-decoration-thickness:2px; }
.kfx-article strong { color:var(--kfx-text); font-weight:700; }
.kfx-article em { color:var(--kfx-text); font-style:italic; }
.kfx-article ul, .kfx-article ol { padding-left:24px; margin:0 0 24px; color:var(--kfx-text-2); }
.kfx-article li { margin-bottom:8px; }
.kfx-article li::marker { color:var(--kfx-accent); }
.kfx-article blockquote { border-left:3px solid var(--kfx-accent); padding:4px 0 4px 24px; margin:32px 0; font-size:19px; font-weight:500; color:var(--kfx-text); font-style:italic; }
.kfx-article blockquote p { color:var(--kfx-text); }
.kfx-article hr { border:0; border-top:1px solid var(--kfx-border); margin:48px 0; }
.kfx-article img,
.kfx-article .wp-block-image img { border-radius:var(--kfx-radius); border:1px solid var(--kfx-border); margin:32px 0; width:100%; height:auto; }
.kfx-article figure { margin:32px 0; }
.kfx-article figcaption { margin-top:8px; font-size:13px; color:var(--kfx-muted); text-align:center; font-style:italic; }
.kfx-article code { background:var(--kfx-card); border:1px solid var(--kfx-border); border-radius:4px; padding:2px 6px; font-family:'SF Mono',Menlo,Consolas,monospace; font-size:.92em; color:var(--kfx-accent); }
.kfx-article pre { background:var(--kfx-card-2); border:1px solid var(--kfx-border); border-radius:var(--kfx-radius); padding:16px; overflow-x:auto; margin:24px 0; font-size:13px; line-height:1.6; }
.kfx-article pre code { background:none; border:0; padding:0; color:var(--kfx-text); }

/* Article tables */
.kfx-article table { width:100%; margin:32px 0; border:1px solid var(--kfx-border); border-radius:var(--kfx-radius); border-collapse:separate; border-spacing:0; overflow:hidden; font-size:14px; }
.kfx-article thead th { background:var(--kfx-card-2); color:var(--kfx-muted); font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.06em; padding:12px 16px; text-align:left; border-bottom:1px solid var(--kfx-border); }
.kfx-article tbody td { padding:12px 16px; border-bottom:1px solid var(--kfx-border); color:var(--kfx-text-2); }
.kfx-article tbody tr:last-child td { border-bottom:0; }
.kfx-article tbody tr:hover { background:var(--kfx-card-hi); }

/* Inline callout */
.kfx-callout { display:flex; align-items:center; gap:16px; padding:20px 24px; background:var(--kfx-card); border:1px solid var(--kfx-border); border-left:3px solid var(--kfx-accent); border-radius:var(--kfx-radius-sm); margin:32px 0; transition:var(--kfx-tx); text-decoration:none!important; }
.kfx-callout:hover { border-color:var(--kfx-accent); transform:translateX(4px); }
.kfx-callout-icon { flex-shrink:0; width:40px; height:40px; border-radius:8px; background:linear-gradient(135deg,var(--kfx-primary),var(--kfx-accent)); display:grid; place-items:center; color:#fff; }
.kfx-callout-body { flex:1; }
.kfx-callout-label { font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.08em; color:var(--kfx-muted); margin-bottom:4px; }
.kfx-callout-title { font-family:var(--kfx-font-h); font-size:15px; font-weight:600; color:var(--kfx-text); }
.kfx-callout-arrow { color:var(--kfx-accent); transition:var(--kfx-tx); }
.kfx-callout:hover .kfx-callout-arrow { transform:translateX(4px); }

/* ============================================================
   STICKY SIDEBAR
   ============================================================ */
.kfx-sidebar { position:sticky; top:88px; display:flex; flex-direction:column; gap:20px; align-self:start; }
body.single-post-kfx.admin-bar .kfx-sidebar { top:120px; }
.kfx-side-card { background:var(--kfx-card); border:1px solid var(--kfx-border); border-radius:var(--kfx-radius); padding:20px; }
.kfx-side-title { font-family:var(--kfx-font-h); font-size:12px; font-weight:700; color:var(--kfx-muted); text-transform:uppercase; letter-spacing:.08em; margin-bottom:14px; display:flex; align-items:center; gap:8px; }
.kfx-side-title svg { width:14px; height:14px; }

/* TOC */
.kfx-toc { padding:16px 8px; }
.kfx-toc .kfx-side-title { padding:0 12px; }
.kfx-toc-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; }
.kfx-toc-item { display:block; padding:8px 12px; border-left:2px solid transparent; margin-left:-2px; font-size:13px; color:var(--kfx-muted); line-height:1.4; transition:var(--kfx-tx); }
.kfx-toc-item:hover { color:var(--kfx-text); border-left-color:var(--kfx-border-hi); }
.kfx-toc-item.is-active { color:var(--kfx-accent); border-left-color:var(--kfx-accent); font-weight:600; }
.kfx-toc-item.h3 { padding-left:28px; font-size:12.5px; }

/* Tool callout sidebar */
.kfx-callout-tool { display:block; background:linear-gradient(135deg,rgba(41,98,255,.12),rgba(0,200,150,.08)); border:1px solid rgba(0,200,150,.2); border-radius:var(--kfx-radius); padding:20px; position:relative; overflow:hidden; transition:var(--kfx-tx); color:var(--kfx-text); }
.kfx-callout-tool:hover { transform:translateY(-2px); border-color:var(--kfx-accent); }
.kfx-callout-tool::before { content:''; position:absolute; top:-30px; right:-30px; width:100px; height:100px; border-radius:50%; background:var(--kfx-accent); opacity:.12; filter:blur(20px); }
.kfx-callout-tool-icon { width:36px; height:36px; border-radius:8px; background:linear-gradient(135deg,var(--kfx-primary),var(--kfx-accent)); display:grid; place-items:center; margin-bottom:12px; position:relative; color:#fff; }
.kfx-callout-tool-title { font-family:var(--kfx-font-h); font-size:15px; font-weight:600; margin-bottom:4px; position:relative; }
.kfx-callout-tool-desc { font-size:12px; color:var(--kfx-text-2); margin-bottom:12px; line-height:1.5; position:relative; }
.kfx-callout-tool-link { font-size:13px; color:var(--kfx-accent); font-weight:600; display:inline-flex; align-items:center; gap:4px; transition:var(--kfx-tx); position:relative; }
.kfx-callout-tool:hover .kfx-callout-tool-link { gap:8px; }

/* Popular posts */
.kfx-popular-list { list-style:none; padding:0; margin:0; counter-reset:pop; }
.kfx-popular-item { display:flex; align-items:flex-start; gap:12px; padding:10px 0; border-bottom:1px solid var(--kfx-border); counter-increment:pop; transition:var(--kfx-tx); }
.kfx-popular-item:last-child { border-bottom:0; padding-bottom:0; }
.kfx-popular-item:hover .kfx-popular-title { color:var(--kfx-accent); }
.kfx-popular-item::before { content:counter(pop); font-family:var(--kfx-font-h); font-weight:700; font-size:14px; color:var(--kfx-muted); min-width:18px; flex-shrink:0; }
.kfx-popular-item:nth-child(1)::before { color:#F59E0B; }
.kfx-popular-item:nth-child(2)::before { color:#B0B5BD; }
.kfx-popular-item:nth-child(3)::before { color:#CD7F32; }
.kfx-popular-title { font-size:13px; color:var(--kfx-text-2); line-height:1.4; font-weight:500; transition:var(--kfx-tx); }

/* Sidebar mini newsletter */
.kfx-side-newsletter { background:linear-gradient(135deg,rgba(0,200,150,.08),rgba(41,98,255,.04)); border:1px solid rgba(0,200,150,.18); }
.kfx-side-newsletter input { width:100%; padding:10px 12px; background:var(--kfx-card-2); border:1px solid var(--kfx-border); border-radius:var(--kfx-radius-sm); color:var(--kfx-text); font-family:var(--kfx-font-b); font-size:13px; margin-bottom:8px; }
.kfx-side-newsletter input:focus { outline:none; border-color:var(--kfx-accent); }
.kfx-side-newsletter button { width:100%; padding:10px; background:var(--kfx-accent); color:#0B0F19; border-radius:var(--kfx-radius-sm); font-weight:700; font-size:13px; transition:var(--kfx-tx); }
.kfx-side-newsletter button:hover { background:#00B585; }

/* ============================================================
   YMYL BANNER
   ============================================================ */
.kfx-ymyl-banner { display:flex; align-items:flex-start; gap:14px; padding:18px 20px; background:rgba(245,158,11,.06); border:1px solid rgba(245,158,11,.25); border-radius:var(--kfx-radius); margin:32px auto; max-width:var(--kfx-content-w); }
.kfx-ymyl-icon { flex-shrink:0; width:28px; height:28px; display:grid; place-items:center; color:var(--kfx-warning); }
.kfx-ymyl-text { font-size:13px; color:var(--kfx-text-2); line-height:1.6; margin:0; }
.kfx-ymyl-text b { color:var(--kfx-warning); font-weight:600; }

/* ============================================================
   AUTHOR BOX
   ============================================================ */
.kfx-author-box { display:flex; gap:24px; padding:28px; background:var(--kfx-card); border:1px solid var(--kfx-border); border-radius:var(--kfx-radius); margin:48px auto; max-width:var(--kfx-content-w); align-items:flex-start; }
.kfx-author-avatar { flex-shrink:0; width:72px; height:72px; border-radius:50%; background:linear-gradient(135deg,var(--kfx-primary),var(--kfx-accent)); display:grid; place-items:center; font-family:var(--kfx-font-h); font-weight:700; font-size:28px; color:#fff; }
.kfx-author-body { flex:1; }
.kfx-author-name { font-family:var(--kfx-font-h); font-size:18px; font-weight:700; margin-bottom:4px; }
.kfx-author-role { font-size:13px; color:var(--kfx-muted); margin-bottom:14px; }
.kfx-author-bio { color:var(--kfx-text-2); font-size:14px; line-height:1.6; margin-bottom:16px; }
.kfx-author-links { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.kfx-author-links a { font-size:13px; color:var(--kfx-text-2); transition:var(--kfx-tx); display:inline-flex; align-items:center; gap:6px; }
.kfx-author-links a:hover { color:var(--kfx-accent); }
.kfx-author-links svg { width:14px; height:14px; }

/* ============================================================
   RELATED POSTS
   ============================================================ */
.kfx-related { padding:48px 0; border-top:1px solid var(--kfx-border); }
.kfx-related-title { font-family:var(--kfx-font-h); font-size:22px; font-weight:700; margin-bottom:24px; }
.kfx-related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.kfx-post-card { background:var(--kfx-card); border:1px solid var(--kfx-border); border-radius:var(--kfx-radius); overflow:hidden; display:flex; flex-direction:column; transition:var(--kfx-tx); color:var(--kfx-text); }
.kfx-post-card:hover { border-color:var(--kfx-border-hi); transform:translateY(-3px); }
.kfx-post-cover { height:140px; background:var(--kfx-cover-grad,linear-gradient(135deg,#1a2540,#0d1420)); position:relative; overflow:hidden; }
.kfx-post-cover img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:1; }
.kfx-post-cover-icon { position:absolute; inset:0; display:grid; place-items:center; font-family:var(--kfx-font-h); font-weight:800; font-size:40px; color:rgba(255,255,255,.18); z-index:0; }
.kfx-post-body { padding:16px; }
.kfx-post-title-sm { font-family:var(--kfx-font-h); font-size:15px; font-weight:600; line-height:1.35; margin:0 0 8px; color:var(--kfx-text); transition:var(--kfx-tx); }
.kfx-post-card:hover .kfx-post-title-sm { color:var(--kfx-accent); }
.kfx-post-meta-sm { font-size:12px; color:var(--kfx-muted); display:flex; gap:8px; align-items:center; }
.kfx-post-meta-sm b { color:var(--kfx-text-2); font-weight:600; }
.kfx-cover-btc { --kfx-cover-grad:linear-gradient(135deg,#3d2810,#1a1408); }
.kfx-cover-eth { --kfx-cover-grad:linear-gradient(135deg,#1d2548,#0d1228); }
.kfx-cover-defi { --kfx-cover-grad:linear-gradient(135deg,#0a3a2c,#051d16); }
.kfx-cover-edu { --kfx-cover-grad:linear-gradient(135deg,#2d1648,#170926); }
.kfx-cover-fin { --kfx-cover-grad:linear-gradient(135deg,#0e2540,#06121f); }
.kfx-cover-news { --kfx-cover-grad:linear-gradient(135deg,#3a1818,#1a0a0a); }
.kfx-cover-default { --kfx-cover-grad:linear-gradient(135deg,#1a2540,#0d1420); }

/* ============================================================
   FOOTER (slimmer than homepage)
   ============================================================ */
.kfx-footer { background:var(--kfx-card-2); border-top:1px solid var(--kfx-border); padding:48px 0 0; margin-top:0; }
.kfx-footer-grid { display:grid; grid-template-columns:1.6fr 1fr 1fr; gap:40px; margin-bottom:32px; }
.kfx-footer-brand .kfx-logo { margin-bottom:14px; }
.kfx-footer-brand p { color:var(--kfx-muted); font-size:13px; line-height:1.6; max-width:340px; margin:0; }
.kfx-footer-col h4 { font-size:12px; font-weight:700; color:var(--kfx-text); text-transform:uppercase; letter-spacing:.08em; margin-bottom:18px; }
.kfx-footer-col ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.kfx-footer-col a { color:var(--kfx-muted); font-size:13px; transition:var(--kfx-tx); }
.kfx-footer-col a:hover { color:var(--kfx-accent); }
.kfx-footer-bottom { border-top:1px solid var(--kfx-border); padding:20px 0; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:12px; color:var(--kfx-muted); }
.kfx-disclaimer { display:inline-flex; align-items:center; gap:6px; padding:4px 10px; background:rgba(245,158,11,.08); border:1px solid rgba(245,158,11,.2); border-radius:6px; color:var(--kfx-warning); font-weight:500; font-size:11px; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1024px) {
  .kfx-search { min-width:160px; }
  .kfx-article-grid { grid-template-columns:1fr; gap:40px; }
  .kfx-sidebar { position:static; }
  .kfx-related-grid { grid-template-columns:repeat(2,1fr); }
  .kfx-footer-grid { grid-template-columns:1fr 1fr; }
  .kfx-footer-brand { grid-column:1/-1; }
}
@media (max-width:768px) {
  .kfx-nav-links, .kfx-search { display:none; }
  .kfx-hamburger { display:grid; place-items:center; width:40px; height:40px; border:1px solid var(--kfx-border); border-radius:var(--kfx-radius-sm); color:var(--kfx-text); }
  .kfx-navbar .kfx-shell { gap:12px; }
  .kfx-logo { flex:1; }
  .kfx-post-header { padding:32px 0 24px; }
  .kfx-post-meta { flex-direction:column; align-items:flex-start; gap:16px; }
  .kfx-meta-divider { display:none; }
  .kfx-share-bar { margin-left:0; }
  .kfx-author-box { flex-direction:column; align-items:center; text-align:center; }
  .kfx-related-grid { grid-template-columns:1fr; }
  .kfx-article h2::before { display:none; }
}
