/* ── RULES PAGE ── */

.rules-intro {
  font-size: 13px;
  color: var(--c-linen);
  line-height: 1.8;
  margin-bottom: 24px;
  font-style: italic;
  max-width: 680px;
  border-left: 2px solid rgba(176,40,64,0.4);
  padding-left: 14px;
}

.rules-layout {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 12px;
  align-items: start;
}

.rules-col { display: flex; flex-direction: column; gap: 12px; }

.rules-list { display: flex; flex-direction: column; gap: 0; }
.rules-list.compact .rule-item { padding: 8px 0; }

.rule-item {
  display: flex; gap: 14px; align-items: flex-start;
  padding: 12px 0;
  border-bottom: 1px solid rgba(184,176,184,0.07);
}
.rule-item:last-child { border-bottom: none; }

.rule-num {
  font-family: var(--font-head);
  font-size: 18px;
  color: var(--c-crimson);
  opacity: 0.7;
  min-width: 26px;
  text-align: right;
  flex-shrink: 0;
  line-height: 1.1;
  margin-top: 1px;
  letter-spacing: 0.04em;
}

.rule-dot {
  width: 5px; height: 5px;
  background: var(--c-stone);
  border-radius: 50%;
  flex-shrink: 0;
  margin-top: 7px;
}
.rule-dot.mod {
  background: var(--c-lavender);
  box-shadow: 0 0 6px var(--c-lavender);
}

.rule-text {
  font-size: 12px;
  color: var(--c-ash);
  line-height: 1.7;
}
.rule-text strong {
  color: var(--c-frost);
  font-weight: 500;
  display: block;
  margin-bottom: 2px;
  font-family: var(--font-body);
}

.mod-thank {
  font-family: var(--font-body);
  font-style: italic;
  font-size: 12px;
  color: var(--c-lavender);
  padding: 8px 0;
  margin-bottom: 6px;
  border-bottom: 1px solid rgba(128,112,168,0.15);
}

.cursor-glow {
  position: fixed; z-index: 9001; pointer-events: none;
  width: 220px; height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(176,40,64,0.07) 0%, transparent 70%);
  transform: translate(-50%,-50%);
  mix-blend-mode: screen;
  transition: left 0.08s ease, top 0.08s ease;
}

@media (max-width: 800px) {
  .rules-layout { grid-template-columns: 1fr; }
}
