/* Insights reuses the approved public catalogue and Keetels Admin foundation. */
.blog-section { padding: 72px 0 88px; }
.blog-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 48px 28px; }
.blog-card { min-width: 0; border-bottom: 1px solid var(--border); padding-bottom: 24px; }
.blog-card img { display: block; width: 100%; aspect-ratio: 3/2; height: auto; object-fit: cover; margin-bottom: 24px; }
.blog-card h2 { font-size: 25px; margin-bottom: 16px; overflow-wrap: anywhere; }
.blog-card h2 a { text-decoration: none; }
.blog-card h2 a:hover { color: var(--orange-hover); }
.blog-card p,.blog-card-meta { color: var(--grey); }
.blog-card .eyebrow { margin-bottom: 12px; }
.blog-card-meta { display: flex; justify-content: space-between; gap: 12px; font-size: 12px; margin: 20px 0 8px; }
.blog-pagination { display: flex; gap: 32px; margin-top: 32px; }
.blog-empty { grid-column: 1/-1; padding: 32px 0; }
.blog-empty p { margin: 16px 0; }
.blog-breadcrumb { display: flex; gap: 12px; margin-bottom: 48px; color: var(--grey); font-size: 13px; }
.blog-article { max-width: 880px; margin-inline: auto; }
.blog-article h1 { font-size: clamp(36px,4.4vw,60px); line-height: 1.1; overflow-wrap: anywhere; }
.blog-lead { font-size: 20px; color: var(--grey); margin: 24px 0; }
.blog-byline { font-size: 13px; color: var(--grey); margin: 20px 0 32px; }
.blog-featured { display: block; width: 100%; height: auto; margin: 32px 0 48px; }
.blog-prose { max-width: 740px; margin-inline: auto; font-size: 18px; overflow-wrap: anywhere; }
.blog-prose p { margin: 0 0 24px; }
.blog-prose h2,.blog-prose h3,.blog-prose h4 { margin: 40px 0 20px; line-height: 1.25; }
.blog-prose h2 { font-size: 30px; }.blog-prose h3 { font-size: 24px; }.blog-prose h4 { font-size: 20px; }
.blog-prose ul,.blog-prose ol { padding-left: 26px; margin: 0 0 24px; }
.blog-prose li { margin: 8px 0; }.blog-prose a { color: var(--orange-hover); }
.blog-prose blockquote { border-left: 2px solid var(--orange); padding: 8px 0 8px 24px; margin: 28px 0; color: var(--grey); }
.blog-prose blockquote p { margin: 0; }
.blog-return { max-width: 880px; margin: 40px auto; border-top: 1px solid var(--border); padding-top: 20px; }
.blog-sell { background: var(--dark); color: white; padding: 36px; max-width: 880px; margin: 32px auto 0; }
.blog-sell h2 { font-size: 30px; }.blog-sell p { color: #bbc6cf; margin: 16px 0 24px; }
.blog-filters { display: flex; flex-wrap: wrap; gap: 16px; margin-bottom: 24px; align-items: end; }
.blog-filters label { display: grid; gap: 6px; font-size: 13px; }
.blog-filters input,.blog-filters select { padding: 10px 12px; background: white; border: 1px solid var(--input-border); }
.blog-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.blog-form-grid label { display: grid; gap: 8px; font-size: 13px; font-weight: 600; min-width: 0; }
.blog-form-grid input,.blog-form-grid textarea,.blog-form-grid select { width: 100%; padding: 12px; border: 1px solid var(--input-border); background: white; color: var(--dark); font: inherit; font-weight: 400; }
.blog-form-grid .wide { grid-column: 1/-1; }
.blog-form-grid textarea { resize: vertical; }
#blogContent { font-family: Consolas,monospace; font-size: 14px; line-height: 1.6; min-height: 360px; }
.blog-editor-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0; }
.blog-preview { background: var(--light); padding: 32px; border: 1px solid var(--border); }
.blog-preview-label { color: var(--grey); font-size: 12px; margin-bottom: 28px; }
.blog-preview-frame { width: 100%; height: 900px; border: 1px solid var(--border); background: var(--light); }
.blog-form-grid { border: 0; padding: 0; }
.blog-preview .blog-article h1 { font-size: 38px; }
.blog-editor-hint { font-size: 13px; color: var(--grey); margin: 16px 0; }
.blog-ai-image-prompt { width: 100%; padding: 12px; border: 1px solid var(--input-border); font: inherit; resize: vertical; }
#aiAssistant { scroll-margin-top: 24px; }
#aiBriefDetails summary { cursor: pointer; font-weight: 600; padding: 12px 0; }
.admin-navigation a:not([aria-current="page"]) { background: transparent; border-left-color: transparent; color: #b9c1c7; }
.admin-navigation a:not([aria-current="page"]):hover { background: var(--dark-light); color: white; }
@media(max-width:1100px) { .blog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:550px) { .blog-section { padding: 48px 0 56px; } .blog-grid,.blog-form-grid { grid-template-columns: 1fr; } .blog-card h2 { font-size: 23px; } .blog-lead,.blog-prose { font-size: 17px; } .blog-sell,.blog-preview { padding: 24px 18px; } .blog-breadcrumb { margin-bottom: 32px; } }
.blog-ai-image-preview { display:block; width:100%; max-width:900px; height:auto; margin-top:16px; border-radius:8px; }
.content-planning { padding: 28px; margin-bottom: 32px; }
.content-planning h2 { font-size: 28px; }
.content-planning h3 { font-size: 20px; }
.planner-next { border-left: 3px solid var(--orange); padding: 16px 20px; margin: 20px 0 28px; background: var(--light); }
.planner-next p,.planner-series-next p { margin: 8px 0; }
.planner-country { font-weight: 600; }
.planner-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin: 16px 0 24px; }
.planner-stat { border: 1px solid var(--border); padding: 16px; display: grid; gap: 6px; }
.planner-stat strong { font-size: 26px; }.planner-stat span { font-size: 13px; color: var(--grey); }
.planner-filter { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.planner-filter select { padding: 10px; border: 1px solid var(--input-border); background: white; max-width: 100%; }
.planner-series { border-top: 1px solid var(--border); padding-top: 24px; margin-top: 24px; }
.planner-series-heading { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; }
.planner-series-next { padding: 16px 0; }.planner-series-next h3 { font-size: 16px; }
.content-planning td { overflow-wrap: anywhere; }.content-planning table { min-width: 680px; }
.planner-status-planned,.planner-status-archived,.planner-status-skipped { background: #edf0f2; color: var(--grey); }
.planner-status-draft,.planner-status-scheduled,.planner-status-postponed { background: #fff1dc; color: #805019; }
.planner-status-completed { background: #e5f3e8; color: #21613a; }
.planner-link-row { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; border-bottom:1px solid var(--border); padding:12px 0; }
.planner-link-row span { flex:1; min-width:180px; }.planner-link-row button { flex-shrink:0; }
#plannerLinkSelect { display:block; width:100%; margin:12px 0; padding:10px; }
@media(max-width:700px) { .planner-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }.content-planning { padding: 18px; }.planner-filter { flex-wrap: wrap; } }
