/* Shared rules trigger + modal (chapter 2–5). One circle "?" everywhere,
   one parchment sheet instead of long rule text unfolded under each table. */
.rules-help{position:absolute;z-index:6;width:32px;height:32px;display:grid;place-items:center;border:1px solid #c3a463;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fffdf1,#f6e8c6);color:#7d6127;font:700 17px/1 Georgia,'Times New Roman',serif;box-shadow:0 2px 0 #a98f5833,0 6px 14px #404f3226,inset 0 0 0 2px #fffdf4;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,color .16s ease}
.rules-help:hover{transform:translateY(-1px) scale(1.04);color:#5f491c;box-shadow:0 4px 0 #a98f5833,0 9px 20px #3b4a2c33,inset 0 0 0 2px #fffdf4}
.rules-help:active{transform:translateY(0) scale(.97)}
.rules-help:focus-visible{outline:2px solid #6f9679;outline-offset:3px}
.forest-heading,.star-heading,.compass-masthead{position:relative}
.forest-heading>.rules-help,.star-heading>.rules-help,.compass-masthead>.rules-help{top:-1px;right:0}
.forest-mode .rules-help{border-color:#a9bd7f;background:radial-gradient(circle at 35% 28%,#fffdf0,#f0f3d3);color:#5d7135;box-shadow:0 2px 0 #8ba05f33,0 6px 14px #3e533026,inset 0 0 0 2px #fffdf4}
.star-mode .rules-help{border-color:#d8bd82;background:radial-gradient(circle at 35% 28%,#fffaea,#f2e2bf);color:#836224}
.auction-guide.rules-help{right:4%;top:4%}
.rules-dialog{position:relative;width:min(620px,calc(100vw - 28px));max-height:min(88dvh,820px);padding:0;border:1px solid #cbb07a;border-radius:26px;background:linear-gradient(168deg,#fffdf4,#f8f1dd 62%,#f3ecd6);color:#3f5748;box-shadow:0 26px 90px #203a2c66,inset 0 1px #fffdf8;overflow:hidden}
.rules-dialog[open]{display:flex;flex-direction:column;padding:27px 32px 22px}
.rules-dialog:before{content:'';position:absolute;inset:9px;border:1px solid #d8c493;border-radius:19px;pointer-events:none}
.rules-dialog::backdrop{background:#1d3127b8;backdrop-filter:blur(6px)}
.rules-dialog-close{position:absolute;right:15px;top:13px;z-index:2;width:30px;height:30px;display:grid;place-items:center;border:1px solid #d9c9a1;border-radius:50%;background:#f8f3e2;color:#7c6b45;font-size:19px;line-height:1;cursor:pointer;transition:background .15s,color .15s}
.rules-dialog-close:hover{background:#fff8e2;color:#5d4b25}
.rules-dialog-kicker{font:11px Georgia,'Times New Roman',serif;letter-spacing:3.5px;color:#a08850}
.rules-dialog h2{font-size:25px;font-weight:600;letter-spacing:2px;line-height:1.4;color:#2d5340;margin:6px 0 8px;padding-right:34px}
.rules-dialog-lead{margin:0 0 14px;padding-right:20px;font-size:13.5px;line-height:1.85;color:#70846b}
.rules-dialog-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:2px 7px 2px 2px;scrollbar-width:thin;scrollbar-color:#c9b98b transparent}
.rules-dialog.is-scrollable:not(.is-scrolled-end) .rules-dialog-body{-webkit-mask-image:linear-gradient(#000 calc(100% - 30px),transparent);mask-image:linear-gradient(#000 calc(100% - 30px),transparent)}
.rules-dialog-body::-webkit-scrollbar{width:7px}.rules-dialog-body::-webkit-scrollbar-thumb{background:#d6c69c;border-radius:4px}
.rules-section{margin:0 0 17px}.rules-section:last-child{margin-bottom:0}
.rules-section>h3{display:flex;align-items:center;gap:7px;margin:0 0 6px;font-size:14px;font-weight:700;letter-spacing:1.5px;color:#8a6a2f}
.rules-section>h3:before{content:'✦';font-size:11px;color:#c1a35d}
.rules-section p,.rules-dialog-body>p{margin:0 0 8px;font-size:14px;line-height:2;color:#455b4b}
.rules-section p:last-child{margin-bottom:0}
.rules-dialog-note{margin:14px 0 0;padding-top:11px;border-top:1px dashed #d7c9a4;font-size:12px;line-height:1.8;color:#89937c}
.rules-paytable{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin:4px 0 4px}
.rules-paytable>div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;border:1px solid #e1d3af;border-radius:10px;background:#fffdf5}
.rules-paytable span{font-size:13px;line-height:1.4;color:#4c634f}
.rules-paytable small{display:block;margin-top:2px;font-size:11px;letter-spacing:0;color:#939b81}
.rules-paytable b{font:15px Georgia,serif;color:#a5792f;white-space:nowrap}
.rules-paytable>div.is-current{border-color:#cfa955;background:#fff6d5;box-shadow:inset 0 0 0 1px #e0c784}
.rules-table{width:100%;border-collapse:collapse;margin:6px 0 2px;font-size:13px}
.rules-table th,.rules-table td{padding:5px 8px;border-bottom:1px solid #e6dac0;text-align:center;color:#4d6352}
.rules-table th{font-size:12px;font-weight:600;letter-spacing:1px;color:#8a7444}
.rules-table tbody tr:last-child td{border-bottom:0}
.rules-tiers td{font-variant-numeric:tabular-nums}
body.forest-mode .rules-dialog{background:linear-gradient(168deg,#fffef5,#f2f8e8 60%,#eaf3dd);border-color:#b9c68f}
body.forest-mode .rules-dialog:before{border-color:#c7d2a3}
body.forest-mode .rules-dialog h2{color:#2b5a41}
body.forest-mode .rules-section>h3{color:#6f8134}
@media(max-width:700px){.rules-dialog[open]{padding:23px 20px 18px;border-radius:22px}.rules-dialog:before{inset:7px;border-radius:17px}.rules-dialog h2{font-size:21px;letter-spacing:1.5px}.rules-dialog-lead{font-size:12.5px;padding-right:26px}.rules-section p,.rules-dialog-body>p{font-size:13px;line-height:1.95}.rules-dialog-note{font-size:11.5px}.rules-paytable{grid-template-columns:1fr;gap:5px}.rules-paytable>div{padding:6px 9px}.rules-help{width:30px;height:30px;font-size:16px}.auction-guide.rules-help{right:5%;top:4%}}
@media(prefers-reduced-motion:reduce){.rules-help{transition:none}.rules-help:hover{transform:none}}
