/* Blog + tools — shared layout, per-app theme via body class */
.theme-manicure { --ap:#ff4081; --ap-dark:#c23162; --ap-soft:#ffd3cb; --ap-bg:#fff5f2; }

.blog-hero { background:linear-gradient(135deg,var(--ap-bg) 0%,var(--ap-soft) 60%,#ffb3c7 100%); padding:3rem 0 2.5rem; }
.blog-hero h1 { font-size:clamp(1.7rem,3.6vw,2.6rem); font-weight:800; }
.blog-hero p { color:var(--text-2); max-width:42rem; margin:0; }
.blog-crumbs { font-size:.85rem; margin-bottom:1rem; color:var(--text-2); }
.blog-crumbs a { color:var(--ap-dark); text-decoration:none; }

.blog-btn { display:inline-flex; align-items:center; gap:.5rem; background:var(--ap); color:#fff; font-weight:700; padding:.75rem 1.4rem; border-radius:999px; text-decoration:none; transition:background .2s, transform .2s; }
.blog-btn:hover { background:var(--ap-dark); color:#fff; transform:translateY(-1px); }
.blog-btn.alt { background:#fff; color:var(--ap-dark); }
.blog-btn.alt:hover { background:var(--ap-soft); }

.post-card { display:flex; flex-direction:column; height:100%; background:#fff; border:1px solid var(--border); border-radius:var(--r-lg); overflow:hidden; text-decoration:none; color:inherit; transition:box-shadow .2s, transform .2s; }
.post-card:hover { box-shadow:var(--sh-lg); transform:translateY(-3px); color:inherit; }
.post-cover { width:100%; height:auto; aspect-ratio:1200/630; object-fit:cover; display:block; }
.post-card-body { display:flex; flex-direction:column; flex:1; padding:1.25rem 1.5rem 1.5rem; }
.post-hero-img { width:100%; height:auto; aspect-ratio:1200/630; object-fit:cover; border-radius:var(--r-lg); box-shadow:var(--sh); margin-bottom:2rem; }
.post-tag { align-self:flex-start; background:var(--ap-soft); color:var(--ap-dark); font-size:.75rem; font-weight:700; padding:.2rem .7rem; border-radius:999px; margin-bottom:.9rem; }
.post-card h2 { font-size:1.15rem; margin-bottom:.6rem; }
.post-card p { color:var(--text-2); font-size:.93rem; flex:1; }
.post-meta { font-size:.8rem; color:var(--text-3); }

.tool-card { background:linear-gradient(135deg,var(--ap) 0%,var(--ap-dark) 100%); color:#fff; border-radius:var(--r-xl); padding:2rem; }
.tool-card h2 { color:#fff; font-size:1.4rem; }

/* Article typography */
.post-body { font-size:1.06rem; line-height:1.8; color:var(--text-1); }
.post-body h2 { font-size:1.45rem; margin:2.4rem 0 .8rem; }
.post-body h3 { font-size:1.15rem; margin:1.8rem 0 .6rem; }
.post-body p, .post-body ul, .post-body ol { margin-bottom:1.1rem; }
.post-body li { margin-bottom:.4rem; }
.post-body a { color:var(--ap-dark); font-weight:600; }
.post-body .callout { background:var(--ap-bg); border-left:4px solid var(--ap); border-radius:var(--r); padding:1rem 1.25rem; margin:1.5rem 0; }
.post-body .formula { background:#fff; border:2px dashed var(--ap); border-radius:var(--r); padding:1rem 1.25rem; font-weight:700; text-align:center; margin:1.5rem 0; }
.post-body table { width:100%; border-collapse:collapse; margin:1.5rem 0; font-size:.97rem; }
.post-body th, .post-body td { border:1px solid var(--border); padding:.6rem .8rem; text-align:left; }
.post-body th { background:var(--surface-2); }
.post-cta { background:var(--ap-bg); border:1px solid var(--ap-soft); border-radius:var(--r-xl); padding:1.75rem; margin-top:3rem; }
.post-cta img { border-radius:16px; }

/* Calculator */
.calc-panel { background:#fff; border:1px solid var(--border); border-radius:var(--r-lg); padding:1.5rem; box-shadow:var(--sh-sm); height:100%; }
.calc-panel h2 { font-size:1.1rem; margin-bottom:1rem; }
.calc-panel label { font-size:.85rem; font-weight:600; color:var(--text-2); }
.calc-result { background:var(--ap-bg); border:2px solid var(--ap); border-radius:var(--r-lg); padding:1.25rem; }
.calc-result .big { font-size:2rem; font-weight:800; color:var(--ap-dark); line-height:1.1; }
.calc-result dt { font-weight:500; color:var(--text-2); font-size:.9rem; }
.calc-result dd { font-weight:700; margin-bottom:.6rem; }
