/* The original table/card layout is shared; these rules only support static twins. */
body[data-rendering="static"] [hidden] { display: none !important; }
[data-static-list] { min-width: 0; scroll-margin-top: 1rem; }
[data-static-list] .static-mobile { display: none; }
[data-static-list] .character-card-value { white-space: normal; overflow-wrap: anywhere; }
[data-static-list] [data-static-count] { font-size: .8rem; text-align: right; margin: .5rem 0; }
[data-static-list] [data-static-reset] { font: inherit; cursor: pointer; }
[data-static-list] button:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
[data-static-list] .character-detail { padding: 10px; }
@media (max-width: 850px) {
  [data-static-list] .static-desktop { display: none; }
  [data-static-list] .static-mobile { display: block; }
}

body[data-rendering="static"] .static-page-kind { display: inline-block; }
/* The original table/card layout is shared; these rules only support static twins. */
body[data-rendering="static"] [hidden] { display: none !important; }
[data-static-list] { min-width: 0; scroll-margin-top: 1rem; }
[data-static-list] .static-mobile { display: none; }
[data-static-list] .character-card-value { white-space: normal; overflow-wrap: anywhere; }
[data-static-list] [data-static-count] { font-size: .8rem; text-align: right; margin: .5rem 0; }
[data-static-list] [data-static-reset] { font: inherit; cursor: pointer; }
[data-static-list] button:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
[data-static-list] .character-detail { padding: 10px; }
[data-static-list] .character-card-meta-item { display: flex; gap: .35em; overflow-wrap: anywhere; }
[data-static-list] .character-card-meta-item::before { content: attr(data-label) ":"; font-weight: 700; flex: 0 0 auto; }
@media (max-width: 850px) {
  [data-static-list] .static-desktop { display: none; }
  [data-static-list] .static-mobile { display: block; }
}
body[data-rendering="static"] .static-page-kind { display: inline-block; }
.puni-group-nav, .puni-group-hub { margin: 12px 0; }
.puni-group-nav h2, .puni-group-hub h2 { margin: 0 0 8px; font-size: 1.05rem; }
.puni-group-nav > p, .puni-group-hub > p { margin: 0 0 12px; color: var(--text-muted); line-height: 1.6; }
.puni-group-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: 10px; }
.puni-group-card { display: flex; flex-direction: column; gap: 5px; min-width: 0; padding: 13px 14px; border: 1px solid var(--brand-light); border-radius: 12px; background: #fff; color: inherit; text-decoration: none; }
.puni-group-card:hover, .puni-group-card:focus-visible { border-color: var(--brand); outline: 2px solid transparent; box-shadow: 0 3px 12px rgba(0,0,0,.08); }
.puni-group-card.is-current { border-color: var(--brand); background: #fff7fb; }
.puni-group-card-title { font-weight: 700; line-height: 1.45; }
.puni-group-card-count { color: var(--text-muted); font-size: .9rem; }
.puni-group-card-detail { color: var(--text-muted); font-size: .85rem; line-height: 1.5; overflow-wrap: anywhere; }
[data-static-list] .puni-list-heading { margin: 0 0 8px; font-size: 1.2rem; }
[data-static-list] > .site-intro-copy { margin: 0 0 12px; }

/* 静的一覧の名称もカード幅に合わせ、末尾を値の下へ隠さない。 */
body[data-rendering="static"] [data-static-list] .character-card-name-cell .character-name-static {
  white-space: normal;
  overflow-wrap: anywhere;
}
