.site-header { align-items: center; }
.header-controls { display: flex; flex-direction: column; align-items: flex-end; gap: .9rem; min-width: 0; }
.header-controls nav { justify-content: flex-end; }
.reader-welcome { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: .6rem .9rem; font: .875rem/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #18382e; }
.reader-greeting { min-width: 0; max-width: 28rem; overflow-wrap: anywhere; }
.reader-greeting-name { font-weight: 600; color: inherit; text-decoration: none; }
.reader-greeting-name:hover { text-decoration: underline; }
.reader-header-button { display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: .4rem .75rem; border: 1px solid #a7b8aa; border-radius: 999px; background: transparent; color: #18382e; font: 600 .8125rem/1.3 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; text-decoration: none; cursor: pointer; }
.reader-header-button:hover { background: #edf1e8; }
.reader-header-button:disabled { opacity: .6; cursor: wait; }
.reader-welcome [hidden] { display: none !important; }
.reader-welcome :focus-visible { outline: 3px solid #527621; outline-offset: 4px; }
.reader-header-message { flex-basis: 100%; text-align: right; color: #8b3c25; font-size: .8rem; }
.reader-header-message:empty { display: none; }
.article-comments-link { display: inline-flex; align-items: center; gap: .5rem; border: 1px solid #cdd6d0; border-radius: 999px; padding: .3rem .9rem; font-size: .875rem; text-decoration: none; margin-bottom: 1rem; }
.article-comments-link::before { content: "\1F4AC"; font-size: 1rem; }
.article-comments-link:hover { background: #edf1e8; }
@media (max-width: 800px) { header.site-header { flex-wrap: wrap; } .header-controls { margin-left: auto; } }
@media (max-width: 520px) { header.site-header { align-items: flex-start; } .header-controls { width: 100%; align-items: stretch; } .header-controls nav { justify-content: flex-start; } .reader-welcome { justify-content: flex-end; } }
