.rules-illustration{margin:16px 0;padding:14px;border:1px solid var(--line,#cfc9b8);border-radius:12px;background:var(--surface,#fffdf7)}
.rules-illustration h3{margin:0 0 12px;font-size:17px}
.rules-illustration figure{margin:0}
.rules-illustration svg{display:block;width:100%;max-height:225px;margin:auto;border-radius:8px;background:#ebe4d3}
.guide-cell{fill:#fff9e9;stroke:#b4a991;stroke-width:1}
.guide-first{fill:#203b32;stroke:#faf5e8;stroke-width:2}
.guide-second{fill:#fff8df;stroke:#293d33;stroke-width:3}
.guide-symbol{font:600 15px system-ui,sans-serif;fill:#22392e}
.guide-arrow{stroke:#a24416;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round}
.rules-illustration figcaption{font-size:13px;line-height:1.6;margin-top:8px}
.guide-steps{padding-left:23px;font-size:14px;line-height:1.65}
.guide-steps li+li{margin-top:8px}
.rule-captures{margin:18px 0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fffdf7)}
.rule-captures h3{font-size:18px;margin:0 0 8px}
.rule-captures figure{margin:12px 0}
.capture-navigation{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.capture-navigation button{min-height:42px;padding:8px 10px;border:1px solid #adb9ad;border-radius:8px;background:#fffdf7;color:#253b30;font-size:12px}
.capture-navigation button[aria-pressed=true]{background:#253b30;color:#fffdf7;border-color:#253b30}
.capture-zoom{display:block;padding:0;width:100%;border:0;background:transparent;cursor:zoom-in}
.capture-zoom img{display:block;width:min(100%,800px);height:auto;object-fit:contain;border-radius:8px;margin-inline:auto}
.rule-captures figcaption,.capture-explanation{font-size:13px;line-height:1.6;margin:8px 0}
.capture-dialog{width:min(920px,96vw);max-width:96vw;padding:18px;max-height:94dvh;overflow:auto}
.capture-dialog>img{display:block;max-width:100%;width:auto;height:auto;max-height:70dvh;object-fit:contain;margin:auto}
.capture-dialog>.button{display:block;margin-left:auto}
.rules-page{max-width:1180px;margin:0 auto;padding-bottom:60px}
.rules-heading{display:flex;align-items:center;gap:28px;margin:32px 0 24px}
.rules-heading .game-emblem{width:112px;height:112px}
.rules-heading h1{font-family:Georgia,serif;font-size:clamp(32px,5vw,54px);margin:8px 0 12px}
.rules-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-bottom:28px}
.rules-variant{padding:20px 24px;border-radius:14px;background:#e9eee7;margin-bottom:24px}
.rules-variant h2{font-size:18px;margin:0 0 8px}
.group-rules-figure img{display:block;width:100%;max-width:560px;height:auto;margin-inline:auto}.group-rules-figure figcaption{margin-top:10px;line-height:1.6}
.rules-layout{display:grid;grid-template-columns:1fr;gap:24px;align-items:start}
.rules-page .rule-captures{margin:0;padding:20px}
.rules-text{padding:24px 26px}
.rules-text-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}
.rules-text-heading p{margin:0}.rules-text-heading .eyebrow{margin-bottom:6px}
.rules-text h2{font-family:Georgia,serif;font-size:28px;font-weight:400;margin:0}
.rules-text ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 18px;counter-reset:rule;list-style:none;padding:0;margin:0}
.rules-text li{position:relative;min-height:100%;padding:14px 14px 14px 48px;margin:0;border:1px solid color-mix(in srgb,var(--ambient-line,var(--line)) 74%,transparent);border-radius:10px;background:color-mix(in srgb,var(--ambient-surface,var(--surface)) 90%,var(--ambient-light,#eee));line-height:1.55}
.rules-text li::before{counter-increment:rule;content:counter(rule,decimal-leading-zero);position:absolute;left:13px;top:13px;display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--ambient-line,var(--line));border-radius:50%;font-size:10px;font-weight:800}
.rules-text details{margin-top:18px}
.rules-text summary{cursor:pointer;line-height:1.6}
.rules-link{display:block;margin:14px 0}
@media(max-width:760px){.rules-layout{gap:20px}.rules-heading{gap:16px}.rules-heading .game-emblem{width:80px;height:80px}.rules-heading p{font-size:14px}.rules-page .rule-captures{padding:12px}.rules-text{padding:20px}.rules-text-heading{display:block}.rules-text-heading>p{margin-top:8px}.rules-text ol{grid-template-columns:1fr}}
