/* Shared by the new-game homepage cards and the dedicated public list. */
.puzzle-card-art { position:relative; display:block; min-height:54px; background:#1b2022; }
.puzzle-card-rules { position:absolute; left:10px; bottom:10px; display:flex; flex-wrap:wrap; gap:6px; }
.puzzle-rule-badge { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:34px; height:34px; padding:5px; border:1px solid #607274; border-radius:6px; background:#20292d; color:#c4ebe3; vertical-align:middle; }
.puzzle-rule-badge svg { display:block; width:100%; height:100%; }
.puzzle-rule-legend { margin:0 0 20px; padding:12px 14px; border:1px solid #465254; border-radius:6px; color:#e1e9ea; font:14px/1.5 system-ui,sans-serif; background:#272e31; }
.puzzle-rule-legend summary { cursor:pointer; font-weight:600; }
.puzzle-rule-legend summary > span { margin-left:8px; font-size:12px; font-weight:400; color:#bccacd; }
.puzzle-rule-legend summary:focus-visible { outline:2px solid #a9e6d6; outline-offset:5px; }
.puzzle-rule-legend > p { color:#bdcacc; font-size:13px; margin:14px 0; max-width:650px; }
.puzzle-rule-legend ul { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:16px 24px; padding:0; margin:18px 0 4px; list-style:none; }
.puzzle-rule-legend li { display:flex; align-items:center; gap:12px; min-width:0; }
.puzzle-rule-legend li strong { display:block; font-size:13px; font-weight:600; }
.puzzle-rule-legend li div > span { display:block; color:#bdcacc; font-size:12px; margin-top:3px; }
@media(max-width:440px) {
  .puzzle-rule-legend summary > span { display:block; margin:3px 0 0; }
}
