/* ■ テンプレート一覧専用 */

/* ◆ 絞り込み */
.catalog{padding-top:28px}
.catalog-tools{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:24px;align-items:end;margin:0 0 24px}
.category-list{display:flex;flex-wrap:wrap;gap:9px;min-width:0}
.filter-chip{min-height:40px;padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-size:var(--fs-sm);line-height:1.5;white-space:nowrap;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.filter-chip span{margin-left:6px;color:var(--muted);font-size:var(--fs-xs)}
.filter-chip:hover,.filter-chip.is-active{border-color:var(--navy);background:var(--navy);color:#fff}
.filter-chip:hover span,.filter-chip.is-active span{color:inherit}
.filter-chip:focus-visible,.search-box input:focus-visible{outline:2px solid #536b7d;outline-offset:3px}
.search-box{display:grid;gap:6px;color:var(--muted);font-size:var(--fs-sm)}
.search-box input{width:100%;min-height:42px;padding:10px 12px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font:inherit;font-size:13px}
.catalog-intro{margin:0 0 20px;padding:14px 18px;border-left:2px solid var(--gold-line);background:var(--cream);color:var(--muted);font-size:13px;line-height:1.9}
.catalog-intro strong{color:var(--ink);font-weight:700}
.catalog-result{margin:0 0 22px;color:var(--muted);font-size:13px}
.catalog [hidden]{display:none!important}

/* ◆ 該当なしの表示 */
.empty-state{grid-column:1/-1;padding:64px 24px;border-radius:5px;background:var(--cream);color:var(--muted);font-size:15px;text-align:center}

/* ◆ ページ送りと注記 */
.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:18px;margin:52px auto 0;font-size:13px}
.pagination>span{display:grid;place-items:center;min-width:40px;height:40px;border-radius:50%}
.pagination__current{background:var(--navy);color:#fff}
.pagination__disabled{color:#aaa39a}
.pagination>p{flex-basis:100%;margin:0;color:var(--muted);font-size:var(--fs-sm);text-align:center}
.catalog-note{max-width:1000px;margin:30px auto 0;color:var(--muted);font-size:var(--fs-sm);line-height:2;text-align:center}
