.journal-page{padding-bottom:var(--ucu-space-9)}

.journal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ucu-space-3);margin:var(--ucu-space-6) 0 var(--ucu-space-7)}

.journal-toolbar{display:flex;gap:var(--ucu-space-3);align-items:center;justify-content:space-between;flex-wrap:wrap;margin:0 0 var(--ucu-space-6)}
.journal-toolbar .ucu-search{flex:1;min-width:220px;max-width:420px}
.journal-filters{display:flex;gap:var(--ucu-space-2);flex-wrap:wrap;align-items:center}
.journal-filter-state{color:var(--ucu-text-faint);font-size:var(--ucu-fs-sm);white-space:nowrap}

.journal-preview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ucu-space-4);margin-top:var(--ucu-space-8)}
.ucu-card.journal-preview-card{display:flex;flex-direction:column;min-height:225px}
.journal-preview-card .card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--ucu-space-3)}
.journal-preview-card time{font-size:var(--ucu-fs-xs);color:var(--ucu-text-faint);font-weight:var(--ucu-fw-semibold)}
.journal-preview-card h2,.journal-preview-card h3{font-size:var(--ucu-fs-lg);margin:var(--ucu-space-3) 0;letter-spacing:-.01em;color:var(--ucu-text)}
.journal-preview-card p{color:var(--ucu-text-muted);font-size:var(--ucu-fs-sm);margin:0 0 var(--ucu-space-5)}
.journal-preview-card .card-link{margin-top:auto}

.journal-empty{display:none;padding:var(--ucu-space-7);border:1px dashed var(--ucu-border-strong);border-radius:var(--ucu-radius-md);color:var(--ucu-text-faint);text-align:center;font-size:var(--ucu-fs-sm)}
.journal-empty.visible{display:block}

.article-page{padding-bottom:var(--ucu-space-9)}
.article-crumbs{display:flex;gap:var(--ucu-space-4);flex-wrap:wrap;align-items:center;padding:var(--ucu-space-5) 0 0}

.article{max-width:720px;margin:0 auto;padding:var(--ucu-space-7) 0 var(--ucu-space-10)}
.article header{margin-bottom:var(--ucu-space-7);padding-bottom:var(--ucu-space-6);border-bottom:1px solid var(--ucu-border)}
.article h1{font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.08;letter-spacing:-.03em;margin:var(--ucu-space-3) 0 var(--ucu-space-5);color:var(--ucu-text)}
.article .dek{font-size:var(--ucu-fs-lg);color:var(--ucu-text-muted);line-height:var(--ucu-lh-relaxed);margin:0}
.article h2{font-size:var(--ucu-fs-xl);margin:var(--ucu-space-8) 0 var(--ucu-space-3);letter-spacing:-.01em;color:var(--ucu-text);border-left:3px solid var(--ucu-accent);padding-left:var(--ucu-space-3)}
.article p{font-size:var(--ucu-fs-md);color:var(--ucu-text-muted);line-height:var(--ucu-lh-relaxed);margin:0 0 var(--ucu-space-5)}
.article ul,.article ol{list-style:disc;margin:0 0 var(--ucu-space-5);padding-left:var(--ucu-space-6)}
.article li{color:var(--ucu-text-muted);line-height:var(--ucu-lh-relaxed);margin-bottom:var(--ucu-space-2)}
.article code{background:var(--ucu-surface-alt);border:1px solid var(--ucu-border);border-radius:var(--ucu-radius-sm);padding:2px 6px;font-size:.9em;color:var(--ucu-text)}
.article .ucu-alert{margin:var(--ucu-space-6) 0}

@media(max-width:1024px){
  .journal-preview-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .journal-stats{grid-template-columns:1fr}
  .journal-toolbar{flex-direction:column;align-items:stretch}
  .journal-toolbar .ucu-search{max-width:none}
}
