.page-game-rules-index .game-rules-list a{min-height:7.5rem}
.page-game-rules-index .game-rules-group__description{max-width:52rem;margin:-.65rem 0 1.5rem;color:var(--muted);font-size:1.02rem;line-height:1.55}
.page-game-rules-index .game-rules-list article{display:flex;min-height:7.5rem;height:100%;padding:1.5rem;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm)}
.page-game-rules-index .game-rules-list article strong{margin:0;font-size:1.14rem;line-height:1.25}
.page-game-rules-index .game-rules-list--remaining{margin-top:1rem}
.page-game-rule .game-rule-hero{background:radial-gradient(circle at 82% 20%,rgb(241 200 69 / 27%),transparent 21rem),linear-gradient(126deg,#3f7e89 0%,#4e8d9a 49%,#639d70 112%);color:#fff}
.page-game-rule .game-rule-hero__inner{width:min(calc(100% - 2rem),68rem);margin-inline:auto;padding-block:clamp(1.4rem,3vw,2.5rem)}
.page-game-rule .game-rule-header{max-width:58rem}
.page-game-rule .game-rule-header h1{margin:0;line-height:1;letter-spacing:-.04em}
.page-game-rule .game-rule-title__type{display:block;margin-bottom:.45rem;font-size:clamp(1.05rem,1.8vw,1.35rem);font-weight:700;letter-spacing:-.01em}
.page-game-rule .game-rule-title__name{display:block;font-size:clamp(2.35rem,5.3vw,4.5rem);font-weight:900}
.page-game-rule .game-rule-header p{margin:.85rem 0 0;color:rgb(255 255 255 / 86%);font-size:1.08rem;line-height:1.5}
.page-game-rule .game-rule-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:clamp(1.5rem,3vw,2.25rem) 0 0;padding:0}
.page-game-rule .game-rule-meta div{min-width:0;border-top:1px solid rgb(255 255 255 / 38%);padding-top:.75rem}
.page-game-rule .game-rule-meta dt{color:rgb(255 255 255 / 72%);font-size:.88rem;font-weight:700}
.page-game-rule .game-rule-meta dd{margin:.35rem 0 0;line-height:1.45}
.page-game-rule .game-rule-content{width:min(calc(100% - 2rem),54rem);margin-inline:auto;padding-block:clamp(2.5rem,5vw,4.5rem)}
.page-game-rule .game-rule-section+.game-rule-section{margin-top:clamp(2rem,4vw,3.25rem)}
.page-game-rule .game-rule-section h2,.page-game-rule .game-rule-section h3{margin:0 0 1rem;line-height:1.15}
.page-game-rule .game-rule-section h2{font-size:clamp(1.7rem,3vw,2.35rem)}
.page-game-rule .game-rule-section h3{font-size:clamp(1.35rem,2.5vw,1.8rem)}
.page-game-rule .game-rule-copy{font-size:1.06rem;line-height:1.65}
.page-game-rule .game-rule-copy p{margin:1rem 0}
.page-game-rule .game-rule-copy ol,.page-game-rule .game-rule-copy ul{padding-left:1.4rem}
.page-game-rule .game-rule-copy a{overflow-wrap:anywhere}
.page-game-rule .game-rule-figure{max-width:56rem;margin:clamp(1.5rem,3vw,2.5rem) auto}
.page-game-rule .game-rule-figure--compact-wide{max-width:32rem}
.page-game-rule .game-rule-figure--compact-narrow{max-width:26rem}
.page-game-rule .game-rule-figure img{display:block;max-width:100%;height:auto;margin-inline:auto}
.page-game-rule .game-rule-interactive{margin-top:clamp(2.5rem,5vw,4.5rem)}
.page-game-rule .game-rule-interactive h2{margin:0 0 1.25rem;font-size:clamp(1.7rem,3vw,2.35rem)}
.page-game-rule .game-rule-interactive__frame{width:100%}
.page-game-rule iframe{display:block;width:100%;min-height:42rem;border:0;background:transparent}
.page-game-rule .game-rule-interactive__frame--simulation iframe{background:transparent}
.page-game-rule .game-rule-accordions{margin-top:clamp(2.5rem,5vw,4.5rem);border-bottom:1px solid var(--line)}
.page-game-rule .game-rule-accordion{border-top:1px solid var(--line)}
.page-game-rule .game-rule-accordion summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 0;list-style:none;cursor:pointer;font-size:clamp(1.3rem,2.6vw,1.8rem);font-weight:800;line-height:1.2}
.page-game-rule .game-rule-accordion summary::-webkit-details-marker{display:none}
.page-game-rule .game-rule-accordion summary::after{content:"+";flex:none;font-size:1.6rem;font-weight:500;line-height:1;transition:transform 160ms ease}
.page-game-rule .game-rule-accordion[open] summary::after{transform:rotate(45deg)}
.page-game-rule .game-rule-accordion summary:focus-visible{outline:2px solid var(--accent);outline-offset:.25rem}
.page-game-rule .game-rule-accordion__content{padding:0 0 1.5rem;font-size:1.03rem;line-height:1.65}
.page-game-rule .game-rule-accordion__content ol,.page-game-rule .game-rule-accordion__content ul{margin:0;padding-left:1.4rem}
.page-game-rule .game-rule-accordion__content li+li{margin-top:.5rem}
@media(max-width:48rem){.page-game-rule .game-rule-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:64.01rem){.page-game-rule .game-rule-interactive__frame--wide{position:relative;left:50%;width:min(calc(100vw - 2rem),78rem);transform:translateX(-50%)}}
@media(max-width:64rem){.page-game-rule .game-rule-figure--compact-wide,.page-game-rule .game-rule-figure--compact-narrow{max-width:100%}}
@media(max-width:40rem){.page-game-rules-index .game-rules-list article{min-height:7.5rem;padding:1.25rem}.page-game-rule .game-rule-meta{grid-template-columns:1fr}.page-game-rule .game-rule-content{width:min(calc(100% - 1.25rem),54rem)}.page-game-rule .game-rule-copy{font-size:1rem}.page-game-rule iframe{min-height:36rem}}
@media(max-width:30rem){.page-game-rule .game-rule-hero__inner{width:min(calc(100% - 1.25rem),68rem)}}
@media(max-width:26.875rem){
  .page-game-rules-index .game-rules-title__primary{display:block}
  .page-game-rules-index .game-rules-title__secondary{display:block;margin-top:.2rem;font-size:clamp(1.45rem,7.4vw,1.75rem);letter-spacing:-.025em;white-space:nowrap}
}

/* Continue the established five-colour sequence for every active game card. */
.page-game-rules-index .game-rules-list li:nth-child(5n+1) a{background:#e8f2e6}
.page-game-rules-index .game-rules-list li:nth-child(5n+2) a{background:#fff4c9}
.page-game-rules-index .game-rules-list li:nth-child(5n+3) a{background:#e4f0f2}
.page-game-rules-index .game-rules-list li:nth-child(5n+4) a{background:#ecebf5}
.page-game-rules-index .game-rules-list li:nth-child(5n) a{background:#ffe2d4}
@media(min-width:64rem){
  .page-game-rules-index .puzzle-hero__inner{width:min(calc(100% - 2rem),68rem)}
  .page-game-rules-index .puzzle-hero h1{max-width:100%}
}

.page-game-rules-index .game-rules-group:first-child>h2,
.page-game-rules-index .game-rules-group:first-child>.game-rules-group__description{max-width:none}
