html {
    background: var(--page-margin, #020009);
    overflow-x: hidden;
    font-size: large;
    font-family: 'B612', sans-serif;
    line-height: 1.3;
    color: var(--primary-text, white);
}

body {
    max-width: 1100px;
    margin: auto;
    padding: 1rem;
}

h1 {
    font-size: 1.7rem;
    text-align: center;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    -webkit-text-stroke-width: 0;
}

h2 {
    border-top: 2px solid #808080;
    padding-top: 1rem;
    margin-top: 2rem;
    font-size: 1.5rem;
}

h3 {
    font-size: 1.2rem;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    -webkit-text-stroke-width: 0;
}

a.link {
    color: var(--secondary-text, rgb(193, 193, 193));
    margin-left: 8px;
}

a.link:hover {
    color: var(--secondary-text, rgb(233, 233, 233));
}

button {
    margin-top: 15px;
    padding: 10px 15px;
    border: 0;
    border-radius: 100px;
    background-color: #D7A481;
    font-weight: bold;
    transition: all 0.5s;
    -webkit-transition: all 0.5s;
    cursor: pointer;
}

button:hover {
    box-shadow: 0 0 20px #fff57050;
    transform: scale(1.1);
}

button:active {
    background-color: #e6da4c;
    transition: all 0.25s;
    -webkit-transition: all 0.25s;
    box-shadow: none;
    transform: scale(0.98);
}

@media (min-width: 1100px) {
    body {
        width: 1100px;
    }

    h2 {
        width: 1100px;
        align-items: start;
        align-content: start;
        border-radius: 2px;
        padding-top: 32px;
    }
}

p {
    font-size: 0.8rem;
    color: #9C9BA3;
}

.backbuttondiv {
    display: flex;
    justify-content: center;
    width: 100%;
}

.headertext{
    color: #ad7760;
    width: 100%;
}


a {
    color: var(--link-accent, #ad7760);
}

a:hover {
    color: var(--link-accent, #db9c80);
}

.lemsub {
    font-size: 1.2rem;
    text-align: center;
    color: #FFF570;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    -webkit-text-stroke-width: 0;
}

.sub {
    font-size: 1.2rem;
    text-align: center;
    color: white;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    -webkit-text-stroke-width: 0;
}

#popup {
    position: fixed;
    bottom: 20px;
    left: 20px;
    background-color: #78c25a;
    color: white;
    margin-top: 15px;
    padding: 10px 15px;
    font-weight: bold;
    border-radius: 4px;
    opacity: 0;
    transform: translateX(-100%);
    transition: all 0.5s ease;
    pointer-events: none;
    z-index: 1000;
}

#popup.show {
    opacity: 1;
    transform: translateX(0);
    pointer-events: auto;
}

.navbar {
    color: #f2f3f5;
    font-family: 'gg sans', 'Noto Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    background-color: #020009;
    text-align: left;
    padding: 5px 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    position: relative;
}

.col, .logo {
    flex: 1 1 0px;
}

.navbartitle {
    color: #ad7760;
    background-color: #020009;
    text-align: left;
    font-family: 'B612', sans-serif;
    position: absolute;
    top: 3%;
    left: 9%;
    white-space: nowrap;
}

.navbarlinks {
    color: #f2f3f5;
    background-color: #020009;
    text-align: right;
    padding-left: 5px;
    float: right;
    font-family: 'B612', sans-serif;
}

.logo-wrapper {
    position: relative;
    display: inline-block;
  }

  .logo {
    position: relative;
    z-index: 2;
    transition: transform 0.3s ease;
  }

  .logo-glow {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    filter: blur(8px) brightness(1.5);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
  }

.logo-wrapper:hover .logo {
  transform: scale(1.1);
}

.logo-wrapper:hover .logo-glow {
  opacity: 1;
}

.footertext {
	font-size:11px;
	color: #868c95;
	text-align: center;
	font-family: 'gg sans', 'Noto Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.footerlinks {
  color: #f2f3f5;
  font-family: 'gg sans', 'Noto Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  text-align: right;
  padding-left: 5px;
  float: right;
  font-size: 11px;
}

.fifth1 {
    color: #468;
}

.fifth2 {
    color: #a0cd7c;
}

.footer {
    margin-top: auto;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
}

.beforeafter1 {
    background-color: #44444A;
    border-radius: 6px;
    display: inline-block;
    padding: 2px 6px;
    color: white;
    font-family: monospace;
    border: 1.75px solid #333333;
}

.beforeafter2 {
    background-color: #443d4a;
    border-radius: 6px;
    display: inline-block;
    padding: 2px 6px;
    color: white;
    font-family: monospace;
    border: 1.75px solid #2a252e;
}

#grad1 {
    background: #00ffc0;
    background: -webkit-linear-gradient(left, #d8db1c, #25db1c, #1edde9, #182dbe, #df1ee9, #8d121a);
    background: -o-linear-gradient(right, #d8db1c, #25db1c, #1edde9, #182dbe, #df1ee9, #8d121a);
    background: -moz-linear-gradient(right, #d8db1c, #25db1c, #1edde9, #182dbe, #df1ee9, #8d121a);
    background: linear-gradient(to right, #d8db1c, #25db1c, #1edde9, #182dbe, #df1ee9, #8d121a);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-size: 12.25%;
}

#grad2 {
    background: #ffffff;
    background: -webkit-linear-gradient(left, #ff032b, #ffff0d, #0aff0a, #0dffff, #292aff, #ff08ff);
    background: -o-linear-gradient(left, #ff032b, #ffff0d, #0aff0a, #0dffff, #292aff, #ff08ff);
    background: -moz-linear-gradient(left, #ff032b, #ffff0d, #0aff0a, #0dffff, #292aff, #ff08ff);
    background: linear-gradient(left, #ff032b, #ffff0d, #0aff0a, #0dffff, #292aff, #ff08ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-size: 12.25%;
}

.keybind {
    background-color: #44444A80;
    border-radius: 4px;
    display: inline-block;
    padding: 1.75px 4px;
    color: #ebebeb;
    font-family: monospace;
    border: 1.75px solid #40404080;
}

.example {
  width: 620px; 
  display: inline-block;
  vertical-align: top;  
}


details[open] > summary {
    margin-bottom: 0.5rem;
}

.example-info {
    font-size:9px;
	color: #868c95;
	text-align: center;
	font-family: 'gg sans', 'Noto Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/*
details {
    cursor: pointer;
    user-select: none;
}
*/

details:hover {
    color: white;
}

.image-showcase {
  transform: scale(1);
  transition: all 0.3s ease-in-out;
}


.image-showcase:hover {
    transition: all 0.3s ease-in-out;
    transform: scale(1.25);
}


.lemon {
	color: #FFF570;
}

.slarmoo {
	color: #82DD5D;
}

.choptop {
    color: #ff66a6;
}

.bulbbox {
    color: #b961f8;
}

.jukebox {
    color: #AD7760;
}

.edobox {
    color: #fccaab;
}

.dogebox2 {
    color: #ffd800;
}

.studiobox {
    color: #41e995;
}

.unbox {
    color: #50b8be;
}

.dqbm {
    color: #4f5bfc;
}

.beepboard {
	color: #C203FE;
}

/* --- Page-specific overrides (moved from per-page inline <style> blocks) --- */

/* introduction, instructions, resources: h2 margin + h3 size */
body.page-introduction h2,
body.page-instructions h2,
body.page-resources h2 {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

body.page-introduction h3,
body.page-instructions h3,
body.page-resources h3 {
    font-size: 1.5rem;
}

/* features: heading + indent + bold override */
body.page-features h2,
body.page-features summary {
    font-size: 1.5rem;
    font-weight: bold;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    -webkit-text-stroke-width: 0;
}

body.page-features .left-indent {
    padding-left: 50px;
}

body.page-features b {
    font-weight: normal;
}

/* patch_notes, top_sneaky: heading margins + version tag colors */
body.page-patch-notes h2,
body.page-top-sneaky h2 {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

body.page-patch-notes h3,
body.page-top-sneaky h3 {
    margin-top: 1.0em;
    margin-bottom: -0.5em;
}

body.page-patch-notes h4,
body.page-top-sneaky h4 {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

body.page-patch-notes h5,
body.page-top-sneaky h5 {
    margin-top: 1.5em;
    margin-bottom: -0.5em;
}

body.page-patch-notes .gold,
body.page-top-sneaky .gold {
    color: #fbea37;
}

body.page-patch-notes .bonus,
body.page-top-sneaky .bonus {
    color: #8bc1f3;
}

body.page-patch-notes .return,
body.page-top-sneaky .return {
    color: #6ef43d;
}

/* credits: h2 margin + custom hmod element */
body.page-credits h2 {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

body.page-credits hmod {
    font-size: 1.5rem;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    -webkit-text-stroke-width: 0;
}

@media (min-width: 1100px) {
    body.page-credits hmod {
        border-left: white solid 4px;
        padding-left: 8px;
    }
}

/* leaderboard: table styling */
body.page-leaderboard table {
    border-collapse: collapse;
    border: 2px solid #ebebeb;
    font-family: sans-serif;
    font-size: 0.8rem;
    letter-spacing: 1px;
}

body.page-leaderboard caption {
    caption-side: bottom;
    padding: 10px;
    font-weight: bold;
}

body.page-leaderboard thead,
body.page-leaderboard tfoot {
    background-color: #020009;
}

body.page-leaderboard th,
body.page-leaderboard td {
    border: 2px solid #ebebeb;
    padding: 8px 10px;
}

body.page-leaderboard td:last-of-type {
    text-align: center;
}

body.page-leaderboard tbody > tr:nth-of-type(even) {
    background-color: #fff57054;
}

body.page-leaderboard tfoot th {
    text-align: right;
}

body.page-leaderboard tfoot td {
    font-weight: bold;
}

/* faq: overrides for subpages.css base rules */
body.page-faq h1 {
    align-items: center;
    align-content: center;
}

body.page-faq h2,
body.page-faq summary {
    font-size: 1.5rem;
    font-weight: bold;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    -webkit-text-stroke-width: 0;
    border-top: none;
    padding-top: 0;
}

body.page-faq h3 {
    text-align: center;
}

body.page-faq a {
    color: var(--link-accent, #98f);
}

body.page-faq p {
    font-size: inherit;
    color: inherit;
}

body.page-faq li,
body.page-faq details {
    margin-left: 3vw;
    margin-right: 3vw;
    margin-bottom: 0;
}

body.page-faq table {
    border-collapse: collapse;
    margin: 20px;
    align-self: center;
    justify-content: center;
}

body.page-faq tr,
body.page-faq tbody,
body.page-faq thead {
    margin: 0;
    padding: 0;
}

body.page-faq th {
    border-width: 2px;
    border-style: solid;
    margin: 0;
    padding: 10px;
}

@media (min-width: 711px) {
    body.page-faq {
        width: 100%;
        max-width: none;
        padding: 0;
    }
}

@media (max-width: 710px) {
    body.page-faq {
        width: 100%;
        max-width: none;
        padding: 0;
    }

    body.page-faq p {
        margin: 1em 0.5em;
    }
}