/* Tag/article index only. Existing cards, source images and loading logic stay intact. */
body.tag-index-page{--tag-ink:#3c4038;--tag-muted:#727b68;--tag-green:#536649;--tag-line:#dfe3d6;background:#fbfaf6;color:var(--tag-ink);font:15px/1.8 system-ui,-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;letter-spacing:0}
.tag-index-page a{color:var(--tag-green)}
.tag-index-page a:focus-visible,.tag-index-page button:focus-visible{outline:3px solid #a05236;outline-offset:5px}
.tag-index-page .site-header{background:#fffefa;border-bottom:1px solid var(--tag-line)}
.tag-index-page .header-inner{max-width:1200px;height:94px;padding-inline:24px;align-items:center}
.tag-index-page .site-brand{width:190px}
.tag-index-page .site-header nav a{font:650 14px/1.8 system-ui,sans-serif;background:transparent;padding:8px 16px}
.tag-index-page .site-header nav li ul{background:#fffefa}
.tag-index-page .site-header nav li ul a{font-size:13px}
.tag-index-page .site-header nav a[aria-current=page]{background:var(--tag-green);color:white}
.tag-index-page .page-content{width:min(1160px,calc(100% - 72px));max-width:none;padding:28px 0 64px;margin:auto}
.tag-index-page .tag-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;color:var(--tag-muted);margin-bottom:34px}
.tag-index-page .tag-breadcrumb a{display:inline-flex;align-items:center;min-height:32px}
.tag-index-page .listing-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:28px;align-items:end;margin:0 0 30px;padding:0;border:0}
.tag-index-page .tag-eyebrow{grid-column:1/-1;font-size:11px;letter-spacing:.16em;font-weight:650;color:#748067;margin:0 0 10px}
.tag-index-page .listing-heading h1{font-size:32px;font-weight:700;line-height:1.55;letter-spacing:.025em;margin:0;color:var(--tag-ink);overflow-wrap:anywhere}
.tag-index-page .listing-heading>a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 19px;border:1px solid #d7dfcd;border-radius:24px;background:#f0f3e9;font-size:12px;line-height:1.6;text-align:center;white-space:nowrap;text-decoration:none}
.tag-index-page .listing-heading>a:hover{background:#e6ecd9}
.tag-index-page .article-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 23px;margin:0}
.tag-index-page .content-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:0;border:1px solid var(--tag-line);border-radius:20px;background:#fffefa;overflow:hidden;box-shadow:0 5px 20px #394a2d04;gap:0}
.tag-index-page .content-card>.card-image{display:flex;width:100%;aspect-ratio:1.2;align-items:center;justify-content:center;min-width:0;max-width:none;margin:0;padding:15px;background:#f0f1e9;overflow:hidden;box-sizing:border-box}
.tag-index-page .card-image img{display:block;max-width:100%;width:100%;height:100%;max-height:100%;object-fit:contain;border-radius:10px;background:white}
.tag-index-page .content-card>.card-image:hover{background:#e7ebdd}
.tag-index-page .content-card>div{display:flex;flex:1;flex-direction:column;align-items:start;padding:20px 22px 19px;min-width:0}
.tag-index-page .content-card .category-label{display:inline-block;max-width:100%;font-size:11px;line-height:1.7;background:#f0f3e9;border-radius:16px;margin:0 0 11px;padding:4px 11px;overflow-wrap:anywhere;text-decoration:none}
.tag-index-page .content-card h2{font-size:16px;line-height:1.75;font-weight:650;margin:0 0 16px;padding:0;background:none;color:var(--tag-ink);letter-spacing:0;overflow-wrap:anywhere}
.tag-index-page .content-card h2 a{color:var(--tag-ink);text-decoration:none}
.tag-index-page .content-card h2 a:hover{text-decoration:underline;text-underline-offset:4px}
.tag-index-page .content-card>div>p{display:none}
.tag-index-page .content-card>div>a:last-child:not(.category-label){display:flex;align-items:center;justify-content:space-between;gap:20px;align-self:stretch;min-height:44px;margin-top:auto;padding-top:10px;border-top:1px solid #e5e8df;font-size:12px;text-decoration:none}
.tag-index-page .content-card>div>a:last-child::after{content:"↗";font-size:18px}
.tag-index-page .load-more{display:block;min-height:54px;min-width:240px;margin:36px auto 0;padding:13px 28px;border:1px solid #536649;border-radius:28px;background:#536649;color:#fffdf5;font:650 14px/1.8 system-ui,sans-serif;cursor:pointer;letter-spacing:.025em}
.tag-index-page .load-more:hover{background:#3f5136}
.tag-index-page .load-more:disabled{opacity:.6;cursor:wait}
.tag-index-page .load-more[hidden]{display:none}
.tag-index-page .tag-empty{padding:55px 22px;margin:0;border:1px solid var(--tag-line);border-radius:20px;background:#fffefa;text-align:center;color:var(--tag-muted)}
.tag-index-page .article-list:not(:empty)+.tag-empty{display:none}
.tag-index-page .site-support{background:#f0f2e8;border-top:1px solid #dfe4d5}
.tag-index-page .site-footer{background:#e8eddf;color:#647058}
.tag-index-page .site-footer a{color:var(--tag-green)}
@media(max-width:1000px){.tag-index-page .article-list{grid-template-columns:repeat(2,minmax(0,1fr))}.tag-index-page .listing-heading h1{font-size:28px}}
@media(max-width:767px){.tag-index-page .header-inner{height:72px;padding:0 18px}.tag-index-page .site-brand{width:154px}.tag-index-page .site-header nav{top:72px;background:#fffefa}.tag-index-page .site-header nav a{padding:9px 12px}.tag-index-page .page-content{width:calc(100% - 32px);padding:21px 0 44px}.tag-index-page .tag-breadcrumb{font-size:10px;gap:6px;margin-bottom:24px}.tag-index-page .listing-heading{grid-template-columns:1fr;gap:0;margin-bottom:24px}.tag-index-page .listing-heading h1{font-size:26px;line-height:1.6}.tag-index-page .tag-eyebrow{font-size:10px;margin-bottom:8px}.tag-index-page .listing-heading>a{justify-self:start;font-size:12px;min-height:44px;padding:9px 17px;margin-top:16px}.tag-index-page .article-list{grid-template-columns:1fr;gap:22px}.tag-index-page .content-card{border-radius:17px}.tag-index-page .content-card>.card-image{aspect-ratio:1.2;padding:14px}.tag-index-page .content-card>div{padding:19px 21px 15px}.tag-index-page .content-card h2{font-size:16px;margin-bottom:13px}.tag-index-page .content-card .category-label{font-size:11px}.tag-index-page .load-more{width:min(100%,300px);min-width:0;margin-top:28px}.tag-index-page .site-support{padding:32px 10px}}
