h2 {
    font-weight: bold !important;
}

/* Hanging indent for rules and subrules */
p.rule {
    text-indent: -2em;
    padding-left: 2em;
    & + blockquote,
    & + blockquote + blockquote,
    & + blockquote + blockquote + blockquote,
    & + blockquote + blockquote + blockquote + blockquote,
    & + blockquote + blockquote + blockquote + blockquote + blockquote {
        padding-left: 0 !important;
        margin-left: 2em !important;
    }
}
/* Hanging indent for rules and subrules */
p.subrule {
    text-indent: -2em;
    padding-left: 4em;
    & + blockquote,
    & + blockquote + blockquote,
    & + blockquote + blockquote + blockquote,
    & + blockquote + blockquote + blockquote + blockquote,
    & + blockquote + blockquote + blockquote + blockquote + blockquote {
        padding-left: 0 !important;
        margin-left: 4em !important;
    }
}
/* Hanging indent for rules and subrules */
p.rule, p.subrule  {
    & > a.headerlink {
        text-indent: 0;
    }
}


/* Add padding to the bottom of content */
.md-content {
  padding-bottom: 60vh;
}


/* Highlight rules if focused */
p.rule:target, p.subrule:target {
  background-color: var(--md-accent-fg-color);
  transition: background-color 0.5s ease-out;
  border-radius: 0.3em;
}

blockquote {
    padding: 0 !important;
    background: #8883;
    border: 1px solid #ccc !important;
    border-left: .2rem solid #ccc !important;
    border-radius: 8px !important;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
    & p {
      margin: 1em;
    }
}

.inline-icon {
    display: inline-flex;
    vertical-align: middle;
    margin: 0 0.05em;
    & img {
        height: 1.1em;
        width: auto;
        position: relative;
        top: -0.1em;
        filter: drop-shadow(0 0 0.05em var(--md-default-fg-color));
    }
}




/* Hide all admonitions when toggled */
html.admonitions-hidden .admonition,
html.admonitions-hidden details.admonition {
  display: none !important;
}

/* Fix admonitions styling */
.md-typeset .admonition {
  background-color: var(--md-admonition-bg-color);
  border-right: none;
  border-top: none;
  border-bottom: none;
  border-left: .2rem solid #448aff;
  border-radius: 8px;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
}






.md-typeset table:not([class]) {
  /* font-size: .8rem; */
  border-top: .08rem solid var(--md-typeset-table-color);
  border-bottom: .08rem solid var(--md-typeset-table-color);
  border-left: none;
  border-right: none;
}

.md-typeset__table table:not([class]) th {
    min-width: 2rem;
    border-bottom: .05rem solid var(--md-typeset-table-color);
}

/* Manual mid-rule borders */
.md-typeset__table table:not([class]) tr:has(td.hline) td,
.md-typeset__table table:not([class]) tr td.cline {
  border-bottom: .05rem solid var(--md-typeset-table-color);
}

/* Table cell padding */
.md-typeset__table table:not([class]) th,
.md-typeset__table table:not([class]) td {
    padding: .15em 1em;
    border-top: none;
    vertical-align: middle;
}

/* Make empty cells collapse */
.md-typeset__table table:not([class]) th:empty,
.md-typeset__table table:not([class]) td:empty {
  padding: 0;
}

/* Dynamic SVG */
.dynamic-svg {
  filter: var(--md-svg-filter);
}

/* Custom Box for Penalties */
.ppg-penalty {
  display: inline;
  font-size: 1.2em;
  padding: .5em;
  border: .05rem solid var(--md-typeset-table-color);
}


/* Color palette */
:root {
    --md-lss-gold:       #C19348;
    --md-lss-brown-dark: #21180C;
    --md-lss-white:      #FFFAF0;
  }


[data-md-color-scheme="lss-light"] {
    /* Primary color shades */
    --md-primary-fg-color:               var(--md-lss-gold);
    --md-primary-fg-color--light:        #D6AE71;
    --md-primary-fg-color--dark:         #8B6A2E;
    --md-primary-bg-color:               var(--md-lss-brown-dark);
    --md-primary-bg-color--light:        rgba(255, 255, 255, 0.7);
  
    /* Accent color shades */
    --md-accent-fg-color:                var(--md-lss-gold);
    --md-accent-fg-color--transparent:   rgba(193, 147, 72, 0.1);
    --md-accent-bg-color:                #ffffff;
    --md-accent-bg-color--light:         rgba(255, 255, 255, 0.7);

    /* Custom Elements */
    --md-accent-fg-color:                rgba(193, 147, 72, 0.3);
    
    /* Color hue */
    --md-hue: 38deg; /* Gold hue */
  
    /* Default color shades */
    --md-default-fg-color:               rgba(0, 0, 0, 0.87);
    --md-default-fg-color--light:        rgba(0, 0, 0, 0.54);
    --md-default-fg-color--lighter:      rgba(0, 0, 0, 0.32);
    --md-default-fg-color--lightest:     rgba(0, 0, 0, 0.07);
    --md-default-bg-color:               var(--md-lss-white);
    --md-default-bg-color--light:        rgba(255, 255, 255, 0.12);
    --md-default-bg-color--lighter:      rgba(255, 255, 255, 0.3);
    --md-default-bg-color--lightest:     rgba(255, 255, 255, 0.7);
  
    /* Code color shades */
    --md-code-fg-color:                  #2d3e4f;
    --md-code-bg-color:                  #f5f5f5;
  
    /* Code highlighting */
    --md-code-hl-color:                  #4dabf7;
    --md-code-hl-color--light:           rgba(77, 171, 247, 0.1);
  
    /* Code highlighting syntax */
    --md-code-hl-number-color:           #ff4d4d;
    --md-code-hl-special-color:          #ff4081;
    --md-code-hl-function-color:         #ae66e4;
    --md-code-hl-constant-color:         #9980fa;
    --md-code-hl-keyword-color:          #3b82f6;
    --md-code-hl-string-color:           #2e7d32;
    --md-code-hl-name-color:             var(--md-code-fg-color);
    --md-code-hl-operator-color:         var(--md-default-fg-color--light);
    --md-code-hl-punctuation-color:      var(--md-default-fg-color--light);
    --md-code-hl-comment-color:          var(--md-default-fg-color--light);
    --md-code-hl-generic-color:          var(--md-default-fg-color--light);
    --md-code-hl-variable-color:         var(--md-default-fg-color--light);
  
    /* Typeset */
    --md-typeset-color:                  var(--md-default-fg-color);
    --md-typeset-a-color:                var(--md-lss-gold);
  
    --md-typeset-del-color:              rgba(255, 87, 87, 0.15);
    --md-typeset-ins-color:              rgba(0, 200, 83, 0.15);
  
    --md-typeset-kbd-color:              #fafafa;
    --md-typeset-kbd-accent-color:       #ffffff;
    --md-typeset-kbd-border-color:       #b3b3b3;
  
    --md-typeset-mark-color:             rgba(255, 241, 118, 0.5);
  
    --md-typeset-table-color:            var(--md-default-fg-color);
    --md-typeset-table-color--light:     var(--md-default-fg-color--lightest);
  
    /* Admonition */
    --md-admonition-fg-color:            var(--md-default-fg-color);
    --md-admonition-bg-color:            var(--md-default-bg-color);
  
    /* Warning */
    --md-warning-fg-color:               rgba(0, 0, 0, 0.87);
    --md-warning-bg-color:               #fff3cd;
  
    /* Footer */
    --md-footer-fg-color:                #ffffff;
    --md-footer-fg-color--light:         rgba(255, 255, 255, 0.7);
    --md-footer-fg-color--lighter:       rgba(255, 255, 255, 0.45);
    --md-footer-bg-color:                rgba(0, 0, 0, 0.87);
    --md-footer-bg-color--dark:          rgba(0, 0, 0, 0.32);
  
    /* Shadows */
    --md-shadow-z1:
      0 0.25rem 0.625rem rgba(0, 0, 0, 0.05),
      0 0 0.0625rem rgba(0, 0, 0, 0.1);
  
    --md-shadow-z2:
      0 0.25rem 0.625rem rgba(0, 0, 0, 0.1),
      0 0 0.0625rem rgba(0, 0, 0, 0.25);
  
    --md-shadow-z3:
      0 0.25rem 0.625rem rgba(0, 0, 0, 0.2),
      0 0 0.0625rem rgba(0, 0, 0, 0.35);

    --md-svg-filter: brightness(2);
}

[data-md-color-scheme="lss-dark"] {
    /* Primary color shades */
    --md-primary-fg-color:               var(--md-lss-brown-dark);
    --md-primary-fg-color--light:        rgba(33, 24, 12, 0.7);  /* Slightly lighter brown */
    --md-primary-fg-color--dark:         rgba(0, 0, 0, 1);        /* Even darker, near-black */
    --md-primary-bg-color:               var(--md-lss-white);
    --md-primary-bg-color--light:        rgba(255, 255, 255, 0.7);
  
    /* Accent color shades */
    --md-accent-fg-color:                var(--md-lss-gold);
    --md-accent-fg-color--transparent:   rgba(193, 147, 72, 0.1);
    --md-accent-bg-color:                rgba(255, 255, 255, 1);
    --md-accent-bg-color--light:         rgba(255, 255, 255, 0.7);
  
    /* Custom Elements */
    --md-accent-fg-color:                rgba(193, 147, 72, 0.3);

    /* Color hue */
    --md-hue: 38deg; /* Gold hue */
  
    /* Default color shades */
    --md-default-fg-color:               rgba(255, 250, 240, 0.87);
    --md-default-fg-color--light:        rgba(255, 250, 240, 0.54);
    --md-default-fg-color--lighter:      rgba(255, 250, 240, 0.32);
    --md-default-fg-color--lightest:     rgba(255, 250, 240, 0.07);
    --md-default-bg-color:               #2A2112; /* slightly lighter brown */
    --md-default-bg-color--light:        rgba(255, 255, 255, 0.12);
    --md-default-bg-color--lighter:      rgba(255, 255, 255, 0.3);
    --md-default-bg-color--lightest:     rgba(255, 255, 255, 0.7);
  
    /* Code color shades */
    --md-code-fg-color:                  rgba(180, 180, 180, 1);    /* Soft light grey */
    --md-code-bg-color:                  rgba(40, 35, 30, 1);       /* Slightly lighter than background */
  
    /* Code highlighting color shades */
    --md-code-hl-color:                  rgba(255, 215, 120, 1);    /* Bright gold highlight */
    --md-code-hl-color--light:           rgba(255, 215, 120, 0.1);
  
    /* Code highlighting syntax color shades */
    --md-code-hl-number-color:           rgba(255, 80, 80, 1);      /* Red */
    --md-code-hl-special-color:          rgba(255, 85, 130, 1);     /* Pinkish red */
    --md-code-hl-function-color:         rgba(180, 120, 255, 1);    /* Soft purple */
    --md-code-hl-constant-color:         rgba(160, 140, 255, 1);    /* Light violet */
    --md-code-hl-keyword-color:          rgba(120, 160, 255, 1);    /* Muted blue */
    --md-code-hl-string-color:           rgba(80, 160, 120, 1);     /* Deep green */
    --md-code-hl-name-color:             var(--md-code-fg-color);
    --md-code-hl-operator-color:         var(--md-default-fg-color--light);
    --md-code-hl-punctuation-color:      var(--md-default-fg-color--light);
    --md-code-hl-comment-color:          rgba(255, 255, 255, 0.3);
    --md-code-hl-generic-color:          var(--md-default-fg-color--light);
    --md-code-hl-variable-color:         var(--md-default-fg-color--light);
  
    /* Typeset color shades */
    --md-typeset-color:                  var(--md-default-fg-color);
  
    /* Typeset `a` color shades */
    --md-typeset-a-color:                var(--md-lss-gold);
  
    /* Typeset `del` and `ins` color shades */
    --md-typeset-del-color:              rgba(255, 80, 80, 0.15);   /* Red tint */
    --md-typeset-ins-color:              rgba(80, 255, 160, 0.15);  /* Green tint */
  
    /* Typeset `kbd` color shades */
    --md-typeset-kbd-color:              rgba(250, 250, 250, 1);
    --md-typeset-kbd-accent-color:       rgba(255, 255, 255, 1);
    --md-typeset-kbd-border-color:       rgba(180, 180, 180, 1);
  
    /* Typeset `mark` color shades */
    --md-typeset-mark-color:             rgba(255, 240, 150, 0.5);  /* Yellowish highlight */
  
    /* Typeset `table` color shades */
    --md-typeset-table-color:            var(--md-default-fg-color);
    --md-typeset-table-color--light:     var(--md-default-fg-color--lighter);
  
    /* Admonition color shades */
    --md-admonition-fg-color:            var(--md-default-fg-color);
    --md-admonition-bg-color:            var(--md-default-bg-color);
  
    /* Warning color shades */
    --md-warning-fg-color:               rgba(0, 0, 0, 0.87);
    --md-warning-bg-color:               rgba(255, 255, 160, 1);    /* Pale yellow */
  
    /* Footer color shades */
    --md-footer-fg-color:                rgba(255, 255, 255, 1);
    --md-footer-fg-color--light:         rgba(255, 255, 255, 0.7);
    --md-footer-fg-color--lighter:       rgba(255, 255, 255, 0.45);
    --md-footer-bg-color:                rgba(0, 0, 0, 0.87);
    --md-footer-bg-color--dark:          rgba(0, 0, 0, 0.32);
  
    /* Shadow depth 1 */
    --md-shadow-z1:
      0 0.25rem 0.625rem rgba(0, 0, 0, 0.05),
      0 0      0.0625rem rgba(0, 0, 0, 0.1);
  
    /* Shadow depth 2 */
    --md-shadow-z2:
      0 0.25rem 0.625rem rgba(0, 0, 0, 0.1),
      0 0      0.0625rem rgba(0, 0, 0, 0.25);
  
    /* Shadow depth 3 */
    --md-shadow-z3:
      0 0.25rem 0.625rem rgba(0, 0, 0, 0.2),
      0 0      0.0625rem rgba(0, 0, 0, 0.35);

    --md-svg-filter: invert(1) brightness(2);
}

.cookie-banner {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #c39256;
  color: #fff;
  padding: 1rem;
  font-size: 14px;
  text-align: center;
  z-index: 9999;
}

.cookie-banner.show {
  display: block;
}

.cookie-banner a {
  color: #fff;
  text-decoration: underline;
}

.cookie-dismiss {
  background: transparent;
  border: none;
  color: #fff;
  font-weight: bold;
  margin-left: 10px;
  font-size: 16px;
  cursor: pointer;
}
