/* Shared tag/category archives; scoped so the homepage and article layout stay intact. */
.archive-page{min-height:100vh;display:flex;flex-direction:column}
.archive-page .header .row{align-items:center;flex-wrap:wrap}
.archive-page .nav{display:flex;gap:8px;flex-wrap:wrap}
.archive-page .nav a{margin:0}
.archive-main{width:100%;flex:1;padding-top:24px;padding-bottom:36px}
.archive-breadcrumb{display:flex;gap:10px;align-items:center;font-size:.85rem;color:var(--muted);margin-bottom:20px}
.archive-heading{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:26px}
.archive-eyebrow{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-weight:600;margin:0 0 6px}
.archive-heading h1{font-family:var(--font-serif);font-size:clamp(30px,5vw,44px);line-height:1.15;margin:0 0 12px;color:var(--text)}
.archive-description{color:var(--muted);font-size:.94rem;margin:0;display:flex;gap:10px 16px;align-items:center;flex-wrap:wrap}
.archive-count{display:inline-block;color:var(--text);background:var(--card);padding:2px 10px;border:1px solid var(--line);border-radius:999px;font-size:.78rem;white-space:nowrap}
.archive-page .archive-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.archive-page .archive-card{display:flex;flex-direction:column;min-width:0;padding:14px}
.archive-cover-link{display:block}
.archive-page .archive-card .post-cover,.archive-cover-placeholder{height:210px;width:100%;border-radius:9px;overflow:hidden}
.archive-page .archive-card .post-cover img{width:100%!important;height:100%!important;object-fit:cover;max-width:100%!important}
.archive-cover-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;padding:24px;background:#f3eee7;color:#76583c;font-family:var(--font-serif);font-size:1.5rem;border:1px solid #e5dbcc}
.archive-page .archive-card .archive-card-meta{font-size:.77rem;line-height:1.5;margin:12px 0 7px;display:flex;gap:8px 12px;flex-wrap:wrap}
.archive-card-meta a{color:var(--muted)}
.archive-page .archive-card-title{font-family:var(--font-serif);font-size:21px;line-height:1.3;margin:0 0 9px}
.archive-card-title a{color:var(--text)}
.archive-card-title a:hover{color:var(--brand)}
.archive-page .archive-card>.archive-summary{font-size:.88rem;line-height:1.6;margin:0 0 18px;color:#4b5563}
.archive-readmore{font-size:.85rem;font-weight:600;margin-top:auto;padding-top:8px;display:flex;justify-content:space-between;align-items:center}
.archive-related,.archive-browse,.archive-search{margin-top:36px;padding-top:22px;border-top:1px solid var(--line)}
.archive-related h2,.archive-browse h2,.archive-search h2{font-family:var(--font-serif);font-size:23px;line-height:1.3;margin:0 0 14px}
.archive-page .cat-btn{font-size:.82rem;line-height:1.5;text-decoration:none;color:var(--text);display:inline-block}
.archive-page .cat-btn:hover{border-color:var(--brand);color:var(--brand)}
.archive-page .cat-btn.active{color:#fff}
.archive-empty{padding:26px;background:var(--card);border:1px solid var(--line);border-radius:12px}
.archive-empty h2{font-family:var(--font-serif);font-size:24px;margin-top:0}
.archive-button{display:inline-block;border:1px solid var(--line);border-radius:8px;padding:8px 14px;background:#fff}
.archive-pagination{margin-top:28px;display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap;font-size:.9rem}
.archive-page .archive-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:20px}
.archive-footer>.container{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:.8rem}
.archive-footer small{font-size:.76rem}
.archive-dragon{color:red;font-size:1.15em}
.archive-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.archive-page a:focus-visible,.archive-page input:focus-visible,.archive-page button:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
@media(max-width:800px){.archive-page .archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.archive-main{padding-top:18px}.archive-page .archive-grid{grid-template-columns:minmax(0,1fr)}.archive-page .header .row{gap:12px}.archive-page .logo-img{max-height:48px}.archive-page .tagline{font-size:.8rem}.archive-page .nav a{padding:5px 9px;font-size:.85rem}.archive-page .archive-card .post-cover,.archive-cover-placeholder{height:220px}.archive-heading{padding-bottom:18px;margin-bottom:20px}.archive-description{font-size:.88rem}.archive-footer>.container{align-items:flex-start;flex-direction:column}.archive-search input{min-width:0}}
