/* Rules remain visible without scripts; shared nation.js controls navigation. */
.rules-theme { background:#0c1118; color:#e1e5ec; }
.rules-intro { padding:160px 0 70px; background:radial-gradient(ellipse at 85% 0%,#303b48,transparent 65%),linear-gradient(135deg,#111a25,#0c1118); border-bottom:1px solid #b8984f55; }
.rules-intro h1 { font-size:clamp(2.1rem,6vw,4.5rem); letter-spacing:.08em; margin:24px 0 8px; overflow-wrap:anywhere; }
.rules-kicker { font:.8rem var(--font-en); letter-spacing:.15em; color:#c1b18d; }
.rules-english { font:1.2rem var(--font-en); color:var(--color-gold); letter-spacing:.2em; margin-bottom:28px; }
.rules-intro p+p { margin-top:18px; }
.rules-note,.rule-supplement { margin-top:24px; padding:18px 22px; border-left:2px solid var(--color-gold); background:#b8984f0c; }
.rules-index { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.rules-index a { padding:10px 14px; border:1px solid #536071; background:#14202c; }
.rules-theme main a { color:#dfc68f; text-decoration:underline; text-underline-offset:4px; }
.rules-section { scroll-margin-top:80px; padding:70px 0; }
.rules-section:nth-of-type(even) { background:#111b26; }
.rules-section h2 { font-size:clamp(1.6rem,3vw,2.4rem); color:#dfc68f; margin-bottom:32px; }
.rule-card { padding:32px; border:1px solid #394656; background:#101923; margin-top:24px; }
.rule-card h3 { font-size:clamp(1.15rem,2vw,1.45rem); color:#dfc68f; margin-bottom:22px; }
.rule-card p { line-height:2; }
.rule-card p+p { margin-top:18px; }
.rule-example { border-left:2px solid #c38478; padding:14px 20px; background:#c384780b; }
.rule-supplement { color:#c3cedd; font-size:.95rem; }
.rules-table { width:100%; border-collapse:collapse; margin:24px 0; }
.rules-table caption { text-align:left; color:#c3cedd; margin-bottom:12px; }
.rules-table th,.rules-table td { text-align:left; padding:14px 18px; border-bottom:1px solid #394656; }
.rules-table thead { background:#263241; }
.rules-table tbody th { font-weight:400; }
.rules-table td { white-space:nowrap; color:#e4cfa0; }
.rules-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:24px; }
.rules-grid h4 { color:#c5d7e9; margin-bottom:16px; }
.rules-grid ul,.rules-checklist { padding-left:1.5em; }
.rules-grid li+li,.rules-checklist li+li { margin-top:12px; }
.rules-closing { font-size:1.2rem; color:#dfc68f; margin-top:40px; }
.rules-theme a:focus-visible,.rules-theme button:focus-visible { outline:2px solid #e1c483; outline-offset:4px; }
.rules-theme .mobile-nav { overflow-y:auto; height:100dvh; padding:90px 20px 35px; align-items:safe center; }
.rules-theme .mobile-nav li { margin:10px 0; }
@media(max-width:768px) { .rules-intro { padding:120px 0 50px; } .rules-section { padding:55px 0; } .rule-card { padding:24px 18px; } .rules-grid { grid-template-columns:1fr; } .rules-table th,.rules-table td { padding:12px 8px; } .rule-supplement { padding:16px; } }
