/* =========================================================
   BLOG (liste, arsiv, tekil yazi) - Tasarim
   page.css ile birlikte yuklenir (bkz. functions.php); baslik, kart,
   liste ve tipografi temelleri page.css'ten gelir, bu dosya blog'a
   ozel parcalari ekler. Atölye dili.
   ========================================================= */

/* ---------- Liste basligi ---------- */
.desen-blog > h1 { margin-bottom: 12px; }
.desen-blog__intro { max-width: 56ch; margin: 0 auto 28px; text-align: center; color: var(--color-text-muted); font-size: 14px; line-height: 1.7; }
.desen-blog__cats { margin-bottom: 32px; }
.desen-chips a.is-active { background: var(--color-accent); border-color: var(--color-accent); color: var(--color-text-light); }

/* ---------- Kart izgarasi ---------- */
.desen-blog__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-bottom: 36px; }
.desen-post-card {
    display: flex; flex-direction: column; background: var(--color-white); border: 1px solid var(--color-border); min-width: 0;
    transition: border-color var(--transition-fast), transform var(--transition-fast);
}
.desen-post-card:hover { border-color: var(--color-secondary); transform: translateY(-2px); }
.desen-post-card__media { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--color-primary-bg); border-bottom: 1px solid var(--color-border); }
.desen-post-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform var(--transition-medium); }
.desen-post-card:hover .desen-post-card__media img { transform: scale(1.04); }
.desen-post-card__body { display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 22px; flex: 1; }
.desen-post-card__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font-size: 11px; color: var(--color-text-muted); letter-spacing: 0.04em; }
.desen-post-card__meta time::before,
.desen-post-card__meta span::before { content: '·'; margin-right: 10px; color: var(--color-secondary); }
.desen-post-card__meta a.desen-post-card__cat + time::before { content: '·'; }
.desen-post-card__meta > :first-child::before { content: none; }
.desen-post-card__cat { font-family: var(--font-heading); font-size: 10px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-secondary); }
.desen-post-card__cat:hover { color: var(--color-accent); }
.desen-post-card__title { margin: 0; font-family: 'Cormorant', serif; font-weight: 400; font-size: 24px; line-height: 1.2; color: var(--color-accent); text-wrap: balance; }
.desen-post-card__title a:hover { color: var(--color-secondary); }
.desen-post-card__excerpt { margin: 0; font-size: 13px; line-height: 1.7; color: var(--color-text-muted); }
.desen-post-card__more { margin-top: auto; padding-top: 6px; font-family: var(--font-heading); font-size: 11px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--color-accent); }
.desen-post-card__more:hover { color: var(--color-secondary); }
/* One cikan (ilk) kart: tam genislik, yatay */
.desen-post-card--featured { grid-column: 1 / -1; flex-direction: row; }
.desen-post-card--featured .desen-post-card__media { flex: 0 0 52%; aspect-ratio: 3 / 2; border-bottom: 0; border-right: 1px solid var(--color-border); }
.desen-post-card--featured .desen-post-card__body { padding: 40px 44px; justify-content: center; gap: 14px; }
.desen-post-card--featured .desen-post-card__title { font-size: 36px; }
.desen-post-card--featured .desen-post-card__excerpt { font-size: 14px; }
.desen-post-card--featured .desen-post-card__more { margin-top: 8px; }
/* Gorselsiz kartlar: yazi odakli */
.desen-post-card.no-media .desen-post-card__body { padding: 26px 26px 24px; }
.desen-post-card.no-media .desen-post-card__title::before { content: ''; display: block; width: 32px; height: 1px; background: var(--color-secondary); margin-bottom: 14px; }
.desen-post-card--featured.no-media { flex-direction: column; }
.desen-post-card--featured.no-media .desen-post-card__body { max-width: 760px; margin: 0 auto; padding: 44px 40px 40px; text-align: center; align-items: center; }
.desen-post-card--featured.no-media .desen-post-card__title::before { margin-left: auto; margin-right: auto; }
.desen-post-card--featured.no-media .desen-post-card__excerpt { max-width: 62ch; }

/* ---------- Tekil yazi ---------- */
.desen-post__header { max-width: 760px; margin: 0 auto 28px; text-align: center; }
.desen-post__header .desen-page__eyebrow a { color: inherit; }
.desen-post__header .desen-page__eyebrow a:hover { color: var(--color-accent); }
.desen-post__header .desen-page__eyebrow span { margin: 0 6px; }
.desen-post__header > h1 { font-family: 'Cormorant', serif; font-weight: 400; color: var(--color-accent); text-align: center; text-wrap: balance; margin: 0 0 14px; font-size: 46px; line-height: 1.15; }
.desen-post__meta { margin: 0; font-size: 12px; color: var(--color-text-muted); letter-spacing: 0.04em; }
.desen-post__meta span[aria-hidden] { margin: 0 8px; color: var(--color-secondary); }
.desen-post__cover { max-width: 980px; margin: 0 auto 28px; }
.desen-post__cover img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border: 1px solid var(--color-secondary); background: var(--color-white); }
.desen-post__cover figcaption { margin-top: 8px; text-align: center; font-size: 12px; color: var(--color-text-muted); }
.desen-post .entry-content { max-width: 760px; padding: 44px 56px; font-size: 16px; line-height: 1.85; }
/* "Kisa cevap:" kutusu (ilk paragraf <strong> ile basliyorsa) */
.desen-post .entry-content > p:has(> strong:first-child):first-child,
.desen-post .entry-content > p.desen-short-answer {
    background: var(--color-primary-bg); border-left: 3px solid var(--color-secondary); padding: 16px 20px; margin: 0 0 26px; font-size: 15px;
}
.desen-post .entry-content > p:has(> strong:first-child):first-child strong { display: block; margin-bottom: 4px; font-family: var(--font-heading); font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-secondary); }
.desen-post .entry-content h2 { font-size: 30px; margin-top: 40px; }
.desen-post .entry-content h3 { font-family: 'Cormorant', serif; font-size: 22px; font-weight: 400; text-transform: none; letter-spacing: 0; color: var(--color-accent); margin: 26px 0 8px; }
.desen-post .entry-content h2 + h3 { margin-top: 6px; }
.desen-post .entry-content img,
.desen-post .entry-content figure.wp-block-image { margin: 24px auto; }
.desen-post .entry-content img { border: 1px solid var(--color-border); background: var(--color-white); }
.desen-post .entry-content figcaption { text-align: center; font-size: 12px; color: var(--color-text-muted); margin-top: 8px; }
.desen-post .entry-content ul li::before { top: 13px; }
.desen-post__pages { margin-top: 20px; font-size: 13px; }
.desen-post__pages a { margin-left: 6px; }
.desen-post__footer { max-width: 760px; margin: 20px auto 0; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; }
.desen-post__footer-label { font-family: var(--font-heading); font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-secondary); }
.desen-post__footer .desen-chips { justify-content: flex-start; }
.desen-post__footer .desen-chips a { text-transform: none; letter-spacing: 0.02em; font-weight: 500; }

/* Onceki / sonraki */
.desen-post-nav { max-width: 760px; margin: 32px auto 0; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.desen-post-nav__item { display: grid; gap: 6px; padding: 18px 22px; background: var(--color-white); border: 1px solid var(--color-border); transition: border-color var(--transition-fast); }
.desen-post-nav__item:hover { border-color: var(--color-secondary); }
.desen-post-nav__item--next { text-align: right; }
.desen-post-nav__item span { font-family: var(--font-heading); font-size: 10px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-secondary); }
.desen-post-nav__item strong { font-family: 'Cormorant', serif; font-weight: 400; font-size: 20px; line-height: 1.25; color: var(--color-accent); }

/* Ilgili yazilar */
.desen-blog--related { margin-top: 56px; }
.desen-blog__section-title { text-align: center; font-family: 'Cormorant', serif; font-weight: 400; font-size: 30px; color: var(--color-accent); margin: 0 0 24px; }
.desen-blog__grid--related { margin-bottom: 0; }

/* Yorumlar (acilirsa) */
.desen-post ~ .comments-area,
.comments-area { max-width: 760px; margin: 40px auto 0; background: var(--color-white); border: 1px solid var(--color-border); padding: 28px 32px; }
.comments-area .comments-title,
.comments-area .comment-reply-title { font-family: 'Cormorant', serif; font-weight: 400; font-size: 26px; color: var(--color-accent); margin: 0 0 16px; }
.comments-area input[type="text"],
.comments-area input[type="email"],
.comments-area input[type="url"],
.comments-area textarea { width: 100%; padding: 10px 14px; border: 1px solid var(--color-border); border-radius: var(--radius-sm); font-family: var(--font-body); font-size: 14px; }
.comments-area .submit { padding: 14px 32px; background: var(--color-accent); color: var(--color-text-light); border: 0; border-radius: var(--radius-sm); font-family: var(--font-heading); font-size: 12px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
    .desen-blog__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
    .desen-post-card--featured { flex-direction: column; }
    .desen-post-card--featured .desen-post-card__media { flex: none; aspect-ratio: 16 / 9; border-right: 0; border-bottom: 1px solid var(--color-border); }
    .desen-post-card--featured .desen-post-card__body { padding: 24px 22px; }
    .desen-post-card--featured .desen-post-card__title { font-size: 28px; }
    .desen-post__header > h1 { font-size: 32px; }
    .desen-post .entry-content { padding: 26px 20px; font-size: 15px; }
    .desen-post-nav { grid-template-columns: 1fr; }
    .desen-post-nav__item--next { text-align: left; }
}
@media (max-width: 600px) {
    .desen-blog__grid { grid-template-columns: 1fr; gap: 16px; }
}
