/* ═══ POST PAGE STYLES ═══ */
/* Loaded only on post pages, extends style.css */

.post-page{background:var(--bg)}

/* Override nav for post pages — always visible with background */
.post-page nav{background:rgba(224,235,245,.92);backdrop-filter:blur(24px) saturate(1.4);border-bottom:1px solid var(--glass-border);box-shadow:0 1px 20px rgba(15,28,46,.06)}
.post-page .logo-img{width:40px}
.post-page .logo{padding-top:0}
/* Reset centered nav-links for post pages (nav structure differs from index) */
.post-page .nav-links{position:static;left:auto;transform:none}
.post-page .nav-links a::after{display:none}
/* Hide scroll progress on posts */
.post-page .scroll-progress{display:none}
/* Reset section title gradient for posts */
.post-page .sec-title{background:none;-webkit-background-clip:unset;-webkit-text-fill-color:var(--ink);background-clip:unset;animation:none}

.post-main{max-width:780px;margin:0 auto;padding:6rem 2rem 3rem}

.breadcrumbs{font-size:.75rem;color:var(--ink3);margin-bottom:2rem;font-family:var(--f2)}
.breadcrumbs a{color:var(--ink3);transition:color .3s}
.breadcrumbs a:hover{color:var(--accent)}
.breadcrumbs span{margin:0 .4rem}
.breadcrumbs .current{color:var(--ink2)}

.post-header{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--border)}
.post-meta-bar{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;font-family:var(--f2);font-size:.72rem;color:var(--ink3)}
.post-date-tag{color:var(--accent);font-weight:600}
.post-header h1{font-family:var(--f3);font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;line-height:1.15;letter-spacing:-1.5px;color:var(--ink);margin-bottom:.75rem}
.post-subtitle{font-size:1.05rem;color:var(--ink2);line-height:1.7;max-width:600px}

/* ═══ POST CONTENT ═══ */
.post-content{font-size:.95rem;line-height:1.85;color:var(--ink2)}
.post-content h2{font-family:var(--f3);font-size:1.4rem;font-weight:700;color:var(--ink);margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--border);margin-bottom:.75rem;letter-spacing:-.5px}
.post-content h3{font-family:var(--f3);font-size:1.1rem;font-weight:600;color:var(--ink);margin-top:1.75rem;margin-bottom:.5rem}
.post-content p{margin-bottom:1rem}
.post-content strong{color:var(--ink);font-weight:600}
.post-content a{color:var(--accent);text-decoration:underline;text-decoration-color:rgba(232,137,12,.3);text-underline-offset:2px;transition:all .3s}
.post-content a:hover{text-decoration-color:var(--accent)}
.post-content ul,.post-content ol{margin:1rem 0;padding-left:1.5rem}
.post-content li{margin-bottom:.4rem}
.post-content img{max-width:100%;border-radius:var(--radius);border:1px solid var(--border);margin:1.5rem 0}
.post-content hr{border:none;border-top:1px solid var(--border);margin:2.5rem 0}

/* Inline code */
.post-content code:not([class]){font-family:var(--f2);font-size:.85em;padding:.15rem .4rem;background:rgba(15,28,46,.05);border:1px solid var(--border);border-radius:6px;color:var(--ink)}

/* Code blocks */
.post-content pre{margin:1.25rem 0;border-radius:12px;overflow-x:auto;border:1px solid rgba(15,28,46,.1);background:#1e1e2e!important;padding:1.25rem;font-size:.82rem;line-height:1.7}
.post-content pre code{background:none;border:none;padding:0;font-size:inherit;color:#cdd6f4}

/* Callouts */
.callout{border-left:4px solid var(--accent);background:var(--accent-g);padding:1rem 1.25rem;border-radius:0 12px 12px 0;margin:1.25rem 0;font-size:.9rem}
.callout strong{display:block;margin-bottom:.25rem;color:var(--ink)}
.warning{border-left:4px solid #ef4444;background:rgba(239,68,68,.06);padding:1rem 1.25rem;border-radius:0 12px 12px 0;margin:1.25rem 0;font-size:.9rem}
.warning strong{color:#ef4444}
.tip{border-left:4px solid #34d399;background:rgba(52,211,153,.06);padding:1rem 1.25rem;border-radius:0 12px 12px 0;margin:1.25rem 0;font-size:.9rem}
.tip strong{color:#059669}

/* Print/screenshot placeholder */
.print{border:2px dashed var(--border);border-radius:12px;padding:1rem;background:rgba(15,28,46,.02);margin:1.25rem 0}
.print .t{font-weight:700;margin-bottom:.3rem;font-size:.85rem}
.print .d{color:var(--ink3);font-size:.82rem;line-height:1.5}

/* ═══ COLLAPSIBLE CODE BLOCKS (details/summary) ═══ */
.post-content details{margin:1.25rem 0;border-radius:12px;overflow:hidden;border:1px solid rgba(15,28,46,.1)}
.post-content details summary{padding:.75rem 1rem;cursor:pointer;font-family:var(--f2);font-size:.8rem;font-weight:600;color:var(--ink2);background:rgba(15,28,46,.03);display:flex;align-items:center;gap:.5rem;list-style:none;user-select:none;transition:background .2s}
.post-content details summary::-webkit-details-marker{display:none}
.post-content details summary::before{content:'▶';font-size:.6rem;color:var(--ink3);transition:transform .2s}
.post-content details[open] summary::before{transform:rotate(90deg)}
.post-content details summary:hover{background:rgba(15,28,46,.06)}
.post-content details[open] summary{border-bottom:1px solid rgba(15,28,46,.08)}
.post-content details pre{margin:0;border:none;border-radius:0}

/* ═══ COMPARISON CARDS (before/after) ═══ */
.comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}
.comparison-card{border-radius:12px;padding:1.25rem;border:1px solid}
.comparison-card.before{background:rgba(239,68,68,.04);border-color:rgba(239,68,68,.2)}
.comparison-card.after{background:rgba(52,211,153,.04);border-color:rgba(52,211,153,.2)}
.comparison-card h4{font-family:var(--f2);font-size:.68rem;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:.75rem}
.comparison-card.before h4{color:#ef4444}
.comparison-card.after h4{color:#059669}
.comparison-card ul{margin:0;padding-left:1.25rem}
.comparison-card li{font-size:.85rem;margin-bottom:.35rem;color:var(--ink2)}

/* ═══ STEP INDICATORS ═══ */
.step{display:flex;gap:1rem;margin:1.75rem 0;align-items:flex-start}
.step-num{flex-shrink:0;width:32px;height:32px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--f2);font-weight:700;font-size:.8rem;margin-top:.15rem}
.step-content{flex:1}
.step-content h4{font-family:var(--f3);font-size:1rem;font-weight:600;margin-bottom:.3rem;color:var(--ink)}
.step-content p{font-size:.9rem;color:var(--ink2);margin-bottom:.5rem}

/* ═══ COST COMPARISON BARS ═══ */
.cost-comparison{margin:1.5rem 0}
.cost-bar{display:flex;align-items:center;margin-bottom:.75rem;gap:.75rem}
.cost-label{width:80px;font-family:var(--f2);font-size:.75rem;font-weight:600;text-align:right;flex-shrink:0;color:var(--ink2)}
.cost-track{flex:1;height:28px;background:rgba(15,28,46,.04);border-radius:6px;overflow:hidden}
.cost-fill{height:100%;border-radius:6px;display:flex;align-items:center;padding-left:.75rem;font-family:var(--f2);font-size:.72rem;font-weight:700;color:#fff}
.cost-fill.old{background:#ef4444;width:100%}
.cost-fill.new{background:#059669;width:2%;min-width:80px}

/* ═══ INFO CARDS ═══ */
.card{background:var(--card);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:12px;padding:1.25rem;margin:1.25rem 0}
.card-title{font-family:var(--f3);font-weight:600;font-size:.95rem;margin-bottom:.5rem;color:var(--ink)}

/* ═══ DIAGRAM CONTAINER ═══ */
.diagram-container{margin:1.5rem 0;background:var(--card);border:1px solid var(--glass-border);border-radius:12px;padding:1.5rem;text-align:center;overflow-x:auto}
.diagram-container svg{max-width:100%;height:auto}
.diagram-caption{font-size:.75rem;color:var(--ink3);margin-top:.75rem;font-style:italic}

/* ═══ SERVICES TABLE ═══ */
.post-content table{width:100%;border-collapse:collapse;margin:1.25rem 0;font-size:.85rem}
.post-content th{text-align:left;font-family:var(--f2);font-weight:600;padding:.6rem .75rem;border-bottom:2px solid var(--border);font-size:.68rem;text-transform:uppercase;letter-spacing:1px;color:var(--ink3)}
.post-content td{padding:.6rem .75rem;border-bottom:1px solid var(--border);color:var(--ink2)}
.post-content tr:last-child td{border-bottom:none}

/* ═══ METRICS GRID ═══ */
.metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;margin:1.5rem 0}
.metric-card{border:1px solid var(--border-h);border-radius:12px;padding:1.25rem;text-align:center;background:var(--accent-g)}
.metric-value{font-family:var(--f3);font-size:1.6rem;font-weight:700;color:var(--accent);display:block}
.metric-label{font-size:.72rem;color:var(--ink3);margin-top:.25rem;display:block}

/* ═══ CALLOUT VARIANTS ═══ */
.callout.info{border-left-color:#3b82f6;background:rgba(59,130,246,.06)}
.callout.info strong{color:#1d4ed8}
.callout.warn{border-left-color:#f59e0b;background:rgba(245,158,11,.06)}
.callout.warn strong{color:#d97706}
.callout.danger{border-left-color:#ef4444;background:rgba(239,68,68,.06)}
.callout.danger strong{color:#ef4444}
.callout.success{border-left-color:#059669;background:rgba(52,211,153,.06)}
.callout.success strong{color:#059669}

/* ═══ POST FOOTER ═══ */
.post-footer{display:flex;align-items:center;justify-content:space-between;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);flex-wrap:wrap;gap:1rem}
.post-author{display:flex;align-items:center;gap:.75rem}
.post-author-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#f5a623);display:flex;align-items:center;justify-content:center;font-family:var(--f2);font-size:.8rem;font-weight:700;color:#fff}
.post-author-name{font-family:var(--f3);font-weight:700;font-size:.9rem;color:var(--ink)}
.post-author-role{font-size:.75rem;color:var(--ink3)}
.post-share{display:flex;align-items:center;gap:.5rem;font-size:.78rem;color:var(--ink3)}
.share-btn{width:32px;height:32px;border-radius:8px;background:var(--accent-g);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:var(--accent);transition:all .3s}
.share-btn:hover{background:var(--accent);color:#fff}

@media(max-width:680px){
  .post-main{padding:5rem 1.25rem 2rem}
  .post-footer{flex-direction:column;align-items:flex-start}
  .comparison{grid-template-columns:1fr}
  .metrics-grid{grid-template-columns:1fr 1fr}
  .step{gap:.75rem}
}
