Template:LegalDocument/styles.css

From RACKWiki
Revision as of 16:58, 21 January 2026 by Pupfern (talk | contribs)
/* Written by Gemini - Legal Document Layout */

.legal-doc {
  counter-reset: level1;
  line-height: 1.5;
}

/* 1. Global Reset: Remove default Wiki list indents */
.legal-doc ol {
  list-style-type: none;
  margin: 0 !important;
  padding: 0 !important;
}

/* LEVEL 1: Articles - Centered and Bold */
.legal-doc > ol > li {
  counter-increment: level1;
  counter-reset: level2;
  margin-top: 2.5em;
  margin-bottom: 1.5em;
  font-weight: bold;
  text-align: center; /* Centers the Article title */
  font-size: 1.1em;
}

/* General logic for Levels 2, 3, and 4 */
.legal-doc ol ol > li {
  position: relative;
  font-weight: normal;
  margin-bottom: 0.8em;
  text-align: left; /* Ensures sub-text stays left-aligned */
}

.legal-doc ol ol > li::before {
  position: absolute;
  font-weight: bold;
}

/* LEVEL 2: "Section 1.1" 
   Gutter: 7em */
.legal-doc ol ol > li {
  counter-increment: level2;
  counter-reset: level3;
  padding-left: 7em; 
}

.legal-doc ol ol > li::before {
  content: "Section " counter(level1) "." counter(level2);
  left: 0;
  width: 6.5em;
}

/* LEVEL 3: "1.1.1" 
   Matches Level 2 gutter, but indents number 1em */
.legal-doc ol ol ol > li {
  counter-increment: level3;
  counter-reset: level4;
  padding-left: 7em; 
}

.legal-doc ol ol ol > li::before {
  content: counter(level1) "." counter(level2) "." counter(level3);
  left: 1.2em; /* Number indent (~2 spaces) */
  width: 5.5em;
}

/* LEVEL 4: "1.1.1.1" 
   Indent both text and number further */
.legal-doc ol ol ol ol > li {
  counter-increment: level4;
  padding-left: 8.5em; 
}

.legal-doc ol ol ol ol > li::before {
  content: counter(level1) "." counter(level2) "." counter(level3) "." counter(level4);
  left: 2.4em; /* Number indent (~4 spaces) */
  width: 6em;
}

/* This forces nested lists to reset their horizontal position to the left */
.legal-doc li > ol {
  margin-left: -7em !important; 
}
.legal-doc ol ol ol > li > ol {
  margin-left: -7em !important;
}
.legal-doc ol ol ol ol > li > ol {
  margin-left: -8.5em !important;
}

/* Bigger break for <br /> tags */
.legal-doc br {
  display: block;
  content: "";
  margin-top: 0.8em;
}