.tkl-stores { overflow-wrap: anywhere; }
.tkl-stores .main__inner { box-sizing: border-box; max-width: 65rem; margin: 0 auto; padding: var(--tkl-space-4) var(--tkl-space-4) var(--tkl-space-8); }
.tkl-stores h1 { margin: var(--tkl-space-2) 0; font-size: 2rem; line-height: 1.4; }
.tkl-stores h2 { margin: var(--tkl-space-8) 0 var(--tkl-space-3); font-size: 1.6rem; }
.tkl-stores .main__inner > .bread { padding-inline: 0; }
.tkl-store-facets { display: flex; flex-wrap: wrap; align-items: center; gap: var(--tkl-space-2); margin-block: var(--tkl-space-4); }
.tkl-store-facets a { display: inline-flex; align-items: center; box-sizing: border-box; min-height: var(--tkl-control-height); padding: var(--tkl-space-2) var(--tkl-space-3); border: 1px solid var(--tkl-border); border-radius: var(--tkl-radius); color: var(--tkl-ink); text-decoration: none; }
.tkl-store-list { margin: 0; padding: 0; list-style: none; }
.tkl-store-item { display: flex; flex-direction: column; gap: var(--tkl-space-1); padding-block: var(--tkl-space-3); border-bottom: 1px solid var(--tkl-border); }
.tkl-store-item__name { display: inline-flex; align-items: center; min-height: var(--tkl-control-height); font-weight: 700; color: var(--tkl-ink); }
.tkl-store-item__meta, .tkl-store__muted, .tkl-store__retailer { color: var(--tkl-muted); font-size: 1.2rem; }
.tkl-store-badge { display: inline-block; margin-inline: 0 var(--tkl-space-2); padding: 0 var(--tkl-space-2); border: 1px solid var(--tkl-border); border-radius: 99.9rem; font-size: 1.1rem; line-height: 1.8; }
.tkl-store__retailer .tkl-store-badge { margin-inline: var(--tkl-space-2) 0; }
.tkl-store__info { margin: 0; }
.tkl-store__description { margin-block: var(--tkl-space-4); line-height: 1.8; }
.tkl-store-brands { display: flex; flex-wrap: wrap; gap: var(--tkl-space-2); margin: 0; padding: 0; list-style: none; }
.tkl-store-brands a { display: inline-flex; align-items: center; box-sizing: border-box; min-height: var(--tkl-control-height); padding: var(--tkl-space-2) var(--tkl-space-3); border: 1px solid var(--tkl-border); border-radius: var(--tkl-radius); color: var(--tkl-ink); text-decoration: none; }
.tkl-stores__pager { display: flex; justify-content: space-between; gap: var(--tkl-space-4); margin-block: var(--tkl-space-6); }
.tkl-stores__pager a { display: inline-flex; align-items: center; min-height: var(--tkl-control-height); }
.tkl-stores a:focus-visible, .tkl-store-list a:focus-visible { outline: 2px solid var(--tkl-action); outline-offset: 2px; }

/* 店舗の共通情報は公開版を参照。記事本文の旧テーマより優先して紹介欄を整える。 */
#article-store-section { margin-block: var(--tkl-space-8); padding: var(--tkl-space-4); border: 1px solid var(--tkl-border); border-radius: var(--tkl-radius); background: var(--tkl-surface-muted); overflow-wrap: anywhere; }
#article-store-section h2 { margin: 0 0 var(--tkl-space-4); padding: 0; border: 0; background: transparent; color: var(--tkl-ink); font-size: 20px; line-height: 1.5; }
#article-store-section ol { margin: 0; padding-inline-start: var(--tkl-space-6); }
#article-store-section li { margin: 0; padding-block: var(--tkl-space-3); }
#article-store-section li + li { border-top: 1px solid var(--tkl-border); }
#article-store-section h3 { margin: 0 0 var(--tkl-space-2); padding: 0; border: 0; background: transparent; font-size: 17px; line-height: 1.6; }
#article-store-section p { margin: var(--tkl-space-2) 0; color: var(--tkl-ink); font-size: 15px; line-height: 1.8; }
#article-store-section a { color: var(--tkl-accent); text-decoration: underline; text-underline-offset: 3px; }
#article-store-section a:focus-visible { outline: 2px solid var(--tkl-accent); outline-offset: 3px; }
