/* KubPoint article polish — scoped to single posts imported by the pipeline. */
.single-post .entry-content,.single-post .post-content{--kp-acc:#f97316;--kp-acc2:#0ea5e9;--kp-ink:#0a0f1c;--kp-mut:#5b6678;--kp-line:#e6e9ef}

/* TL;DR callout */
.kp-tldr{position:relative;margin:0 0 28px;padding:22px 24px 10px;border-radius:16px;background:linear-gradient(135deg,#0f1729,#0a0f1c);color:#e6ecf5;border:1px solid rgba(255,255,255,.08);box-shadow:0 20px 50px -30px rgba(10,15,28,.8)}
.kp-tldr::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;border-radius:16px 0 0 16px;background:linear-gradient(#fb923c,#22d3ee)}
.kp-tldr__label{margin:0 0 10px!important;font-size:.72rem!important;letter-spacing:.18em;text-transform:uppercase;color:#fb923c;font-weight:800}
.kp-tldr p,.kp-tldr li{color:#dbe3f0}
.kp-tldr a{color:#67e8f9}
.kp-tldr pre{margin:10px 0 14px}
.kp-tldr code:not(pre code){background:rgba(255,255,255,.1);color:#fff}

/* TOC */
.kp-toc{margin:0 0 32px;border:1px solid var(--kp-line);border-radius:14px;background:#fafbfd}
.kp-toc summary{cursor:pointer;padding:14px 18px;font-weight:700;color:var(--kp-ink);list-style:none;display:flex;justify-content:space-between;align-items:center}
.kp-toc summary::-webkit-details-marker{display:none}
.kp-toc summary::after{content:"−";color:var(--kp-mut);font-weight:400}
.kp-toc details:not([open]) summary::after{content:"+"}
.entry-content .kp-toc ol,.post-content .kp-toc ol,.kp-toc ol{margin:0;padding:0 18px 14px 18px;list-style:none!important;counter-reset:kp}
.entry-content .kp-toc li,.post-content .kp-toc li,.kp-toc li{counter-increment:kp;border-top:1px solid var(--kp-line);list-style:none!important;margin:0;padding:0}
.kp-toc li::marker{content:""}
.kp-toc li a{display:flex;gap:12px;padding:9px 0;color:#1f2a3d;text-decoration:none;font-size:.95rem}
.kp-toc li a::before{content:counter(kp,decimal-leading-zero);color:var(--kp-acc);font-weight:700;font-variant-numeric:tabular-nums}
.kp-toc li a:hover{color:var(--kp-acc2)}

/* Code blocks */
.single-post .entry-content pre,.single-post .post-content pre,.kp-tldr pre{position:relative;margin:18px 0 24px;padding:44px 18px 18px;border-radius:14px;background:#0b1220!important;color:#e6ecf5;border:1px solid rgba(255,255,255,.08);overflow:auto;font-size:.9rem;line-height:1.6;tab-size:2}
.single-post .entry-content pre code,.single-post .post-content pre code{background:transparent!important;color:inherit;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:inherit;border:0;white-space:pre}
.kp-code__bar{position:absolute;top:0;left:0;right:0;height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 16px;border-bottom:1px solid rgba(255,255,255,.08);font:600 .7rem/1 ui-monospace,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:#8b97ad}
.kp-code__copy{appearance:none;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#cbd5e1;border-radius:8px;padding:5px 10px;font:600 .72rem/1 inherit;cursor:pointer;transition:background .15s,color .15s}
.kp-code__copy:hover{background:#f97316;color:#111;border-color:#f97316}
.kp-code__copy[data-done="1"]{background:#22c55e;color:#052e16;border-color:#22c55e}
.single-post .entry-content :not(pre)>code,.single-post .post-content :not(pre)>code{background:#eef2f7;color:#0f1729;padding:.12em .4em;border-radius:6px;font-size:.9em}

/* Prism token colours (Night Owl-ish, tuned for navy) */
.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#6b7891;font-style:italic}
.token.punctuation{color:#9aa7bd}
.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol{color:#f78c6c}
.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.inserted{color:#addb67}
.token.operator,.token.entity,.token.url,.language-css .token.string,.style .token.string{color:#7fdbca}
.token.atrule,.token.attr-value,.token.keyword{color:#c792ea}
.token.function,.token.class-name{color:#82aaff}
.token.regex,.token.important,.token.variable{color:#ffcb6b}
.token.key.atrule,.language-yaml .token.key{color:#82aaff}
.language-bash .token.function{color:#ffcb6b}
.token.deleted{color:#ef4444}

/* Tables */
.single-post .entry-content table,.single-post .post-content table{width:100%;border-collapse:separate;border-spacing:0;margin:18px 0 28px;font-size:.93rem;border:1px solid var(--kp-line);border-radius:12px;overflow:hidden}
.single-post .entry-content th,.single-post .post-content th{background:#0f1729;color:#fff;text-align:left;padding:12px 14px;font-weight:700}
.single-post .entry-content td,.single-post .post-content td{padding:11px 14px;border-top:1px solid var(--kp-line);vertical-align:top}
.single-post .entry-content tr:nth-child(even) td{background:#fafbfd}

/* Headings & FAQ */
.single-post .entry-content h2{scroll-margin-top:90px;margin-top:2.2em;padding-top:.4em;border-top:1px solid var(--kp-line)}
.single-post .entry-content h2:first-of-type{border-top:0;padding-top:0;margin-top:0}
.single-post .entry-content h3{scroll-margin-top:90px}

/* Trust box */
.kp-trust{margin:40px 0 0;padding:26px 28px;border-radius:16px;border:1px solid var(--kp-line);background:linear-gradient(180deg,#fafbfd,#fff)}
.kp-trust h2{border-top:0!important;margin:0 0 8px!important;padding:0!important;font-size:1.25rem!important;display:flex;align-items:center;gap:10px}
.kp-trust h2::before{content:"✓";display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#22c55e;color:#052e16;font-size:.9rem;font-weight:800}
.kp-trust p{margin:0 0 10px;color:#3b4658}
.kp-trust__label{font-size:.72rem!important;letter-spacing:.14em;text-transform:uppercase;color:var(--kp-mut)!important;font-weight:700;margin-top:14px!important}
.kp-trust__list{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 18px}
.kp-trust__list a{display:block;padding:6px 0;color:#0f1729;text-decoration:none;font-weight:600;font-size:.9rem;border-bottom:1px solid transparent}
.kp-trust__list a span{display:block;color:var(--kp-mut);font-weight:400;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kp-trust__list a:hover{color:var(--kp-acc2)}

@media (max-width:640px){.kp-tldr{padding:18px 16px 6px}.kp-trust{padding:20px 18px}.single-post .entry-content pre{font-size:.82rem;padding:42px 14px 14px}}
