/* Fluxx blog: card images + designed article content */
.bcard .bi{position:relative;aspect-ratio:1200/630;overflow:hidden;background:#e9eef6}
.bcard .bi img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.bcard:hover .bi img{transform:scale(1.04)}
.bcard .bcat{position:absolute;left:14px;top:14px;background:rgba(6,11,31,.75);color:#fff;font-size:.74rem;font-weight:600;padding:5px 12px;border-radius:999px}

.post-hero{max-width:740px;margin:0 auto 30px}
.post-hero img{width:100%;height:auto;max-height:340px;aspect-ratio:1200/630;object-fit:cover;border-radius:16px;display:block;box-shadow:0 14px 36px -22px rgba(6,11,31,.4)}
@media(max-width:900px){.post-hero img{max-height:220px}}

.post{max-width:740px;margin:0 auto;font-size:1.1rem;line-height:1.85;color:#26304a}
.post>*:first-child{margin-top:0}
.post p{margin:0 0 1.3em}
.post h2{font-size:1.75rem;line-height:1.25;margin:2.1em 0 .6em;padding-left:16px;border-left:5px solid #22a0dc;color:#060b1f;scroll-margin-top:90px}
.post h3{font-size:1.3rem;margin:1.8em 0 .5em;color:#25409a;scroll-margin-top:90px}
.post h4{font-size:1.1rem;margin:1.5em 0 .4em}
.post a{color:#1a76b8;text-decoration:underline;text-underline-offset:3px}
.post strong{color:#060b1f}
.post ul,.post ol{margin:0 0 1.4em;padding-left:0;list-style:none;counter-reset:li}
.post li{position:relative;padding-left:34px;margin-bottom:.7em}
.post ul li:before{content:"";position:absolute;left:8px;top:.7em;width:9px;height:9px;border-radius:50%;background:linear-gradient(135deg,#22a0dc,#25409a)}
.post ol li{counter-increment:li}
.post ol li:before{content:counter(li);position:absolute;left:0;top:.2em;width:25px;height:25px;border-radius:50%;background:#e6f3fb;color:#1a76b8;font:700 .8rem/25px sans-serif;text-align:center}
.post img{max-width:100%;height:auto;border-radius:14px;margin:8px 0 28px;display:block}
.post hr{border:0;height:1px;background:linear-gradient(90deg,transparent,#c9d6e8,transparent);margin:2.4em 0}

/* tables */
.post table{display:table;width:100%;border-collapse:separate;border-spacing:0;margin:0 0 1.8em;border:1px solid #dfe8f3;border-radius:14px;font-size:.98rem;line-height:1.55;}
@media(max-width:700px){.post table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}
.post thead th{background:linear-gradient(135deg,#25409a,#22a0dc);color:#fff;text-align:left;font-weight:700;padding:13px 16px;white-space:nowrap}
.post td{padding:12px 16px;border-top:1px solid #e8eef6;vertical-align:top}
.post tbody tr:nth-child(even) td{background:#f6f9fd}
.post tbody tr:hover td{background:#eaf4fc}
.post td:first-child{font-weight:600;color:#060b1f}

/* callouts */
.post blockquote{margin:0 0 1.6em;padding:16px 22px;border-left:4px solid #22a0dc;background:#f3f8fd;border-radius:0 12px 12px 0;color:#34425f;font-size:1.05rem}
.post blockquote p:last-child{margin:0}
.post blockquote.callout,.post p.callout{border-left-color:#22a0dc;background:#eaf5fd;position:relative;padding:18px 22px 18px 58px;border-radius:12px;border-left-width:4px}
.post blockquote.callout:before,.post p.callout:before{content:"ℹ";position:absolute;left:18px;top:16px;width:28px;height:28px;border-radius:50%;background:#22a0dc;color:#fff;font:700 1rem/28px sans-serif;text-align:center}
.post .tip{border-left-color:#12a36b!important;background:#e8f8f1!important}.post .tip:before{content:"💡"!important;background:#12a36b!important;font-size:.9rem!important}
.post .warn{border-left-color:#e08a00!important;background:#fff4de!important}.post .warn:before{content:"!"!important;background:#e08a00!important}
.post a.cta{display:inline-block;background:linear-gradient(135deg,#22a0dc,#2a6fc4);color:#fff;text-decoration:none;font-weight:700;padding:13px 28px;border-radius:999px;box-shadow:0 10px 24px -10px rgba(34,160,220,.8)}
.post a.cta:hover{transform:translateY(-2px)}
.post p:has(>a.cta:only-child){text-align:center;margin:1.8em 0}

/* table of contents */
.toc{max-width:740px;margin:0 auto 34px;background:#f6f9fd;border:1px solid #dfe8f3;border-radius:14px;padding:6px 22px}
.toc summary{cursor:pointer;font-weight:700;padding:12px 0;color:#060b1f;list-style:none}
.toc summary::-webkit-details-marker{display:none}.toc summary:after{content:"＋";float:right;color:#1a76b8}.toc[open] summary:after{content:"－"}
.toc ol{margin:0 0 12px;padding-left:20px}.toc li{margin:6px 0}.toc li.h3{margin-left:18px;font-size:.93rem;list-style:circle}
.toc a{color:#26304a;text-decoration:none}.toc a:hover{color:#1a76b8;text-decoration:underline}

/* share */
.share{max-width:740px;margin:44px auto 0;padding-top:22px;border-top:1px solid #e1e8f2;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.share b{margin-right:6px}.share a,.share button{padding:8px 16px;border-radius:999px;border:1px solid #cfd9e8;background:#fff;color:#26304a;font:600 .88rem sans-serif;text-decoration:none;cursor:pointer}
.share a:hover,.share button:hover{border-color:#22a0dc;color:#1a76b8}
