/* ── Wiki: base article reset ── */
.wiki-article-content {
  max-width: none;
  font-size: 0.875rem;
  line-height: 1.6;
}
.wiki-article-content .toc,
.wiki-article-content .mw-parser-output > .metadata,
.wiki-article-content .catlinks {
  display: none;
}

/* ── Wiki: Vector skin emulation ── */
.wiki-vector-article.wiki-article-content {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Lato, Helvetica, Arial, sans-serif;
  color: #202122;
  background: #fff;
  line-height: 1.6;
}

/* headings */
.wiki-vector-article.wiki-article-content h1,
.wiki-vector-article.wiki-article-content h2,
.wiki-vector-article.wiki-article-content h3,
.wiki-vector-article.wiki-article-content h4 {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  color: #202122;
  margin: 0;
  padding: 0;
  line-height: 1.3;
}
.wiki-vector-article.wiki-article-content h1 { font-size: 1.8rem; }
.wiki-vector-article.wiki-article-content h2 {
  font-size: 1.5rem;
  border-bottom: 1px solid #a2a9b1;
  padding-bottom: 0.15em;
  margin: 1em 0 0.25em;
}
.wiki-vector-article.wiki-article-content h3 {
  font-size: 1.2rem;
  margin: 0.8em 0 0.25em;
}
.wiki-vector-article.wiki-article-content h4 {
  font-size: 1.05rem;
  margin: 0.6em 0 0.2em;
}

/* mw-heading wrapper (modern MediaWiki) */
.wiki-vector-article.wiki-article-content .mw-heading {
  display: contents;
}
.wiki-vector-article.wiki-article-content .mw-heading h2,
.wiki-vector-article.wiki-article-content .mw-heading h3,
.wiki-vector-article.wiki-article-content .mw-heading h4 {
  margin: 0;
}

/* body text */
.wiki-vector-article.wiki-article-content p {
  margin: 0.5em 0 1em;
  line-height: 1.6;
}
.wiki-vector-article.wiki-article-content ul,
.wiki-vector-article.wiki-article-content ol {
  margin: 0.3em 0 0.8em;
  padding-left: 2.5em;
}
.wiki-vector-article.wiki-article-content ul { list-style: disc; }
.wiki-vector-article.wiki-article-content ol { list-style: decimal; }

/* links */
.wiki-vector-article.wiki-article-content a {
  color: #36c;
  font-weight: 400;
  text-decoration: none;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.wiki-vector-article.wiki-article-content a:hover {
  text-decoration: underline;
}
.wiki-vector-article.wiki-article-content a.new,
.wiki-vector-article.wiki-article-content a.new:visited {
  color: #ba0000;
}
/* external links */
.wiki-vector-article.wiki-article-content a.external {
  color: #36c;
}
.wiki-vector-article.wiki-article-content a.external::after {
  content: '';
  display: inline-block;
  width: 0.75em;
  height: 0.75em;
  margin-left: 2px;
  vertical-align: baseline;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath d='M6 1h5v5L9.3 4.3 6.5 7.1 5.1 5.7 7.9 2.9z' fill='%2336c'/%3E%3Cpath d='M4 3H1v8h8V8H8v2H2V4h2z' fill='%2336c'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

/* parser output */
.wiki-vector-article.wiki-article-content .mw-parser-output {
  max-width: none;
}

/* images */
.wiki-vector-article.wiki-article-content img {
  border-radius: 0;
  max-width: 100%;
  height: auto;
}

.wiki-class-portrait-fallback {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
  gap: 8px;
  margin: 0 0 20px;
  padding: 12px;
  border: 1px solid #a2a9b1;
  background: #f8f9fa;
}

.wiki-class-portrait-fallback img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  border: 1px solid #c8ccd1;
  background: #fff;
}

.wiki-article-image-fallback {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  align-items: center;
  gap: 12px;
  margin: 0 0 20px;
  padding: 12px;
  border: 1px solid #a2a9b1;
  background: #f8f9fa;
}

.wiki-article-image-fallback img {
  width: 100%;
  max-height: 520px;
  object-fit: contain;
  border: 1px solid #c8ccd1;
  background: #fff;
}

/* float containers: thumb, tright, tleft, floatright, floatleft */
.wiki-vector-article.wiki-article-content .thumb,
.wiki-vector-article.wiki-article-content .tright {
  float: right;
  clear: right;
  margin: 0.5em 0 1.3em 1.4em;
  max-width: min(320px, 45%);
}
.wiki-vector-article.wiki-article-content .tleft {
  float: left;
  clear: left;
  margin: 0.5em 1.4em 1.3em 0;
  max-width: min(320px, 45%);
}
.wiki-vector-article.wiki-article-content .floatright {
  float: right;
  clear: right;
  margin: 0 0 1em 1.4em;
}
.wiki-vector-article.wiki-article-content .floatleft {
  float: left;
  clear: left;
  margin: 0 1.4em 1em 0;
}

/* MediaWiki figure alignment */
.wiki-vector-article.wiki-article-content figure.mw-halign-right {
  float: right;
  clear: right;
  margin: 0 0 0.5em 0.5em;
}

.wiki-vector-article.wiki-article-content figure.mw-halign-left {
  float: left;
  clear: left;
  margin: 0 0.5em 0.5em 0;
}

.wiki-vector-article.wiki-article-content figure.mw-halign-center {
  display: table;
  margin: 0.5em auto;
}

.wiki-vector-article.wiki-article-content figure.mw-halign-none {
  float: none;
  margin: 0.5em 0;
}

.wiki-vector-article.wiki-article-content .mw-file-element {
  display: inline;
}

/* Class buttons grid (mirrors MediaWiki:Common.css) */
.wiki-vector-article.wiki-article-content .class-buttons {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 8px;
}

.wiki-vector-article.wiki-article-content .class-button {
  position: relative;
  height: 136px;
  overflow: hidden;
}

.wiki-vector-article.wiki-article-content .class-button::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  background: no-repeat;
}

.wiki-vector-article.wiki-article-content .class-button:hover::before {
  display: none;
}

.wiki-vector-article.wiki-article-content .class-button.button-Explorers::before { background-image: url("/static/images/readdy/class-hero-001.jpg"); }
.wiki-vector-article.wiki-article-content .class-button.button-DualBlade::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_dual_blade-3221a627dd.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Cannoneer::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_cannoneer-4c67907a01.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Pathfinder::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_pathfinder-e0e4c2f0b9.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Zen::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_zen-b509f404fc.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Jett::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_jett-5185dbc2ad.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-CygnusKnights::before { background-image: url("/static/images/readdy/class-dw-001.jpg"); }
.wiki-vector-article.wiki-article-content .class-button.button-Mihile::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_mihile-97964a8dc1.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Aran::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_aran-a45a53a94a.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Evan::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_evan-bc3aaf67b8.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Mercedes::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_mercedes-e331a056f5.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Phantom::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_phantom-d574734d43.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Luminous::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_luminous-5a8c8df1ce.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Shade::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_shade-9240a95bec.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Resistance::before { background-image: url("/static/images/readdy/class-bmage-001.jpg"); }
.wiki-vector-article.wiki-article-content .class-button.button-Demon::before { background-image: url("/static/images/readdy/class-ds-001.jpg"); }
.wiki-vector-article.wiki-article-content .class-button.button-Xenon::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_xenon-145d6e2536.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Kaiser::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_kaiser-fb10b3d2b1.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-AngelicBuster::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_angelic_buster-c61c479f19.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Cadena::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_cadena-024f1202e8.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Kain::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_kain-1faa67f59b.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Illium::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_illium-355c25dca4.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Ark::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_ark-7d33facca2.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Adele::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_adele-b7edc5cf16.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Hayato::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_hayato-ead91a784e.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Kanna::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_kanna-2e165a7751.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Hoyoung::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_hoyoung-cb349a7dd1.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Zero::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_zero-dac33139e5.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-PinkBean::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_pink_bean-09be3761a1.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Yeti::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_yeti-21037c9579.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-BeastTamer::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_beast_tamer-f514927c50.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Kinesis::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_kinesis-1f62d3d152.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-MoXuan::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_mo_xuan-cd3b74361c.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Lara::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_lara-2a3d038acf.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Khali::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_khali-9994201e06.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Lynn::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_lynn-cda0297041.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-TanjiroKamado::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_tanjiro_kamado-824f607683.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-SiaAstelle::before { background-image: url("/static/images/vendor/media.maplestorywiki.net/classbutton_sia_astelle-d83c7f5d58.png"); }
.wiki-vector-article.wiki-article-content .class-button.button-Len::before { background-image: url("/static/images/readdy/class-ren-001.jpg"); }
.wiki-vector-article.wiki-article-content .thumbinner {
  border: 1px solid #c8ccd1;
  background: #f8f9fa;
  padding: 3px;
  font-size: 94%;
  text-align: center;
}
.wiki-vector-article.wiki-article-content .thumbcaption {
  padding: 3px;
  text-align: left;
  line-height: 1.4;
  font-size: 0.85em;
  color: #54595d;
}

/* infobox */
.wiki-vector-article.wiki-article-content .infobox {
  float: right;
  clear: right;
  width: 22em;
  margin: 0.5em 0 1em 1.5em;
  border: 1px solid #a2a9b1;
  border-collapse: collapse;
  background: #f8f9fa;
  font-size: 88%;
}
.wiki-vector-article.wiki-article-content .infobox th,
.wiki-vector-article.wiki-article-content .infobox td {
  padding: 0.35em 0.5em;
  vertical-align: top;
}
.wiki-vector-article.wiki-article-content .infobox th {
  background: #eaecf0;
  text-align: left;
}
.wiki-vector-article.wiki-article-content .infobox caption {
  font-size: 1.1em;
  font-weight: 700;
  padding: 0.4em;
}

/* wikitable / standard table */
.wiki-vector-article.wiki-article-content table.wikitable,
.wiki-vector-article.wiki-article-content table {
  border-collapse: collapse;
  border: 1px solid #a2a9b1;
  border-radius: 0;
  background: #f8f9fa;
  margin: 0.5em 0 1em;
}
.wiki-vector-article.wiki-article-content table.wikitable th,
.wiki-vector-article.wiki-article-content table th {
  border: 1px solid #a2a9b1;
  background: #eaecf0;
  padding: 0.4em 0.55em;
  text-align: left;
  font-weight: 600;
}
.wiki-vector-article.wiki-article-content table.wikitable td,
.wiki-vector-article.wiki-article-content table td {
  border: 1px solid #a2a9b1;
  padding: 0.4em 0.55em;
  vertical-align: top;
}
.wiki-vector-article.wiki-article-content table.wikitable caption {
  font-weight: 700;
  padding: 0.5em;
}

/* navbox (sister templates at bottom of articles) */
.wiki-vector-article.wiki-article-content .navbox,
.wiki-vector-article.wiki-article-content table.navbox {
  border: 1px solid #aaa;
  border-collapse: collapse;
  width: 100%;
  font-size: 88%;
  margin: 0.5em 0;
  background: #fdfdfd;
}
.wiki-vector-article.wiki-article-content .navbox th {
  background: #ccf;
  padding: 0.2em 0.4em;
  font-weight: 600;
  text-align: center;
}
.wiki-vector-article.wiki-article-content .navbox td {
  padding: 0.15em 0.4em;
}
.wiki-vector-article.wiki-article-content .navbox .navbox-title {
  background: #ccf;
}
.wiki-vector-article.wiki-article-content .navbox .navbox-group {
  background: #ddf;
  white-space: nowrap;
  text-align: right;
  padding: 0.2em 0.6em;
}
.wiki-vector-article.wiki-article-content .navbox .navbox-above,
.wiki-vector-article.wiki-article-content .navbox .navbox-below {
  background: #ccf;
  text-align: center;
}

/* hatnote / dablink / rellink (disambiguation & redirect notices) */
.wiki-vector-article.wiki-article-content .hatnote,
.wiki-vector-article.wiki-article-content .dablink,
.wiki-vector-article.wiki-article-content .rellink {
  padding: 0.35em 0.75em;
  margin: 0 0 0.5em;
  font-size: 0.88em;
  font-style: italic;
  background: #f8f9fa;
  border: 1px solid #eaecf0;
}

/* ambox (article message boxes: cleanup, stub, etc.) */
.wiki-vector-article.wiki-article-content .ambox {
  border: 1px solid #a2a9b1;
  border-collapse: collapse;
  width: 80%;
  margin: 0.5em auto;
  background: #fbfbfb;
  font-size: 0.9em;
}
.wiki-vector-article.wiki-article-content .ambox td {
  padding: 0.4em 0.6em;
  vertical-align: middle;
}
.wiki-vector-article.wiki-article-content .ambox .mbox-image {
  width: 50px;
  text-align: center;
}
.wiki-vector-article.wiki-article-content .ambox-content {
  font-weight: 600;
}
.wiki-vector-article.wiki-article-content .ambox-text {
  font-weight: 400;
  font-size: 0.92em;
}
.wiki-vector-article.wiki-article-content .ambox-stub {
  border-color: #c0c090;
  background: #fafaf0;
}
.wiki-vector-article.wiki-article-content .ambox-notice {
  border-color: #a2a9b1;
  background: #f8f9fa;
}

/* shortdescription */
.wiki-vector-article.wiki-article-content .shortdescription {
  font-size: 0.88em;
  color: #54595d;
  font-style: italic;
  margin: 0 0 0.5em;
}

/* gallery */
.wiki-vector-article.wiki-article-content .gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  margin: 0.5em 0 1em;
  padding: 0;
}
.wiki-vector-article.wiki-article-content .gallery .gallerybox {
  width: 155px;
  text-align: center;
}
.wiki-vector-article.wiki-article-content .gallery .gallerybox img {
  max-width: 100%;
  height: auto;
}
.wiki-vector-article.wiki-article-content .gallery .gallerytext {
  font-size: 0.85em;
  color: #54595d;
  padding: 2px 0;
}

/* references / reflist */
.wiki-vector-article.wiki-article-content .references,
.wiki-vector-article.wiki-article-content .reflist {
  font-size: 0.85em;
  column-count: 2;
  column-gap: 1.5em;
}
.wiki-vector-article.wiki-article-content .references ol {
  padding-left: 2em;
}
.wiki-vector-article.wiki-article-content .references li {
  margin-bottom: 0.3em;
}

/* code blocks */
.wiki-vector-article.wiki-article-content pre,
.wiki-vector-article.wiki-article-content code {
  font-family: 'Courier New', Courier, monospace;
  background: #f8f9fa;
  border: 1px solid #eaecf0;
  border-radius: 2px;
}
.wiki-vector-article.wiki-article-content pre {
  padding: 0.75em;
  overflow-x: auto;
  font-size: 0.85em;
  line-height: 1.4;
  margin: 0.5em 0 1em;
}
.wiki-vector-article.wiki-article-content code {
  padding: 0.1em 0.3em;
  font-size: 0.9em;
}

/* blockquote */
.wiki-vector-article.wiki-article-content blockquote {
  border-left: 4px solid #a2a9b1;
  margin: 0.5em 0 1em;
  padding: 0.4em 1em;
  color: #54595d;
  background: #f8f9fa;
}

/* definition list */
.wiki-vector-article.wiki-article-content dl {
  margin: 0.5em 0 1em;
}
.wiki-vector-article.wiki-article-content dt {
  font-weight: 600;
  margin-top: 0.5em;
}
.wiki-vector-article.wiki-article-content dd {
  margin-left: 1.5em;
  margin-bottom: 0.3em;
}

/* clear floats after article content */
.wiki-vector-article.wiki-article-content::after {
  content: '';
  display: table;
  clear: both;
}

/* ── Wiki: main page layout ── */
.wiki-mainpage-article #mainpage {
  font-size: 0.95rem;
}
.wiki-mainpage-article #mainpage-headline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.25rem;
  align-items: center;
  margin: 1rem 0 1.5rem;
  padding: 1.25rem;
  border: 1px solid #a2a9b1;
  background: #f8fbff;
}
.wiki-mainpage-article #mainpage-headline h2 {
  margin-top: 0;
}
.wiki-mainpage-article .mainpage-title {
  margin: 1.75rem 0 0.75rem;
  border-bottom: 1px solid #a2a9b1;
  padding-bottom: 0.2rem;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1.5rem;
  font-weight: 400;
}
.wiki-mainpage-article .mainpage-headline-logo img {
  width: 99px;
  height: auto;
}
.wiki-mainpage-article #mainpage-updates {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 1.25rem 0 0.75rem;
}
.wiki-mainpage-article .mainpage-update-tile {
  border: 1px solid #a2a9b1;
  background: #fff;
}
.wiki-mainpage-article .mainpage-update-image img {
  display: block;
  width: 100%;
  height: auto;
}
.wiki-mainpage-article .mainpage-update-subtitle {
  padding: 0.6rem 0.75rem 0;
  color: #54595d;
  font-size: 0.85rem;
}
.wiki-mainpage-article .mainpage-update-tile h3 {
  margin: 0;
  padding: 0.25rem 0.75rem 0.9rem;
  border: 0;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Lato, Helvetica, Arial, sans-serif;
  font-size: 1.05rem;
  font-weight: 600;
}
.wiki-mainpage-article .pill {
  display: inline-block;
  margin-right: 0.35rem;
  border-radius: 999px;
  padding: 0.05rem 0.45rem;
  font-size: 0.75rem;
  font-weight: 700;
}
.wiki-mainpage-article .pill-blue {
  background: #36c;
  color: #fff;
}
.wiki-mainpage-article .mainpage-more {
  display: block;
  margin: 0.5rem 0 1.5rem;
  text-align: right;
}
.wiki-mainpage-article #mainpage-navigation {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1px;
  margin: 1.5rem 0;
  border: 1px solid #a2a9b1;
  background: #a2a9b1;
}
.wiki-mainpage-article .mainpage-navigation-tile {
  min-height: 9rem;
  background: #f8f9fa;
  padding: 0.75rem 0.5rem;
  text-align: center;
}
.wiki-mainpage-article .mainpage-navigation-tile img {
  max-width: 96px;
  width: auto;
  height: auto;
}
.wiki-mainpage-article .mainpage-navigation-tile h3 {
  margin: 0.35rem 0 0;
  border: 0;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Lato, Helvetica, Arial, sans-serif;
  font-size: 1rem;
  font-weight: 600;
}
.wiki-mainpage-article #mainpage-versions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 1rem 0 1.5rem;
  border: 1px solid #a2a9b1;
  background: #a2a9b1;
}
.wiki-mainpage-article .mainpage-version-tile {
  background: #fff;
  padding: 0.9rem;
  text-align: center;
}
.wiki-mainpage-article .mainpage-version-image img {
  max-width: 160px;
  height: auto;
}
.wiki-mainpage-article .mainpage-version-tile h3 {
  margin: 0.4rem 0;
  border: 0;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Lato, Helvetica, Arial, sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
}
.wiki-mainpage-article .mainpage-version-subtitle {
  color: #54595d;
  font-size: 0.8rem;
}
.wiki-mainpage-article #mainpage-links {
  column-count: 2;
  column-gap: 2rem;
}
.wiki-mainpage-article #mainpage-links > * {
  break-inside: avoid;
}

/* ── Wiki: responsive ── */
@media (max-width: 1024px) {
  .wiki-mainpage-article #mainpage-updates,
  .wiki-mainpage-article #mainpage-versions {
    grid-template-columns: 1fr 1fr;
  }
  .wiki-mainpage-article #mainpage-navigation {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .wiki-vector-article.wiki-article-content .references {
    column-count: 1;
  }
}

@media (max-width: 640px) {
  .wiki-vector-article.wiki-article-content table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
  }

  .wiki-vector-article.wiki-article-content .thumb,
  .wiki-vector-article.wiki-article-content .tright,
  .wiki-vector-article.wiki-article-content .tleft,
  .wiki-vector-article.wiki-article-content .infobox,
  .wiki-vector-article.wiki-article-content .floatright,
  .wiki-vector-article.wiki-article-content .floatleft,
  .wiki-vector-article.wiki-article-content figure.mw-halign-right,
  .wiki-vector-article.wiki-article-content figure.mw-halign-left {
    float: none;
    max-width: 100%;
    width: 100%;
    margin: 1rem 0;
    clear: both;
  }
  .wiki-mainpage-article #mainpage-headline,
  .wiki-mainpage-article #mainpage-updates,
  .wiki-mainpage-article #mainpage-versions {
    grid-template-columns: 1fr;
  }
  .wiki-mainpage-article #mainpage-navigation {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .wiki-mainpage-article #mainpage-links {
    column-count: 1;
  }
}

.grandis-article-content {
  color: oklch(var(--foreground-800));
  font-size: 1rem;
  line-height: 1.8;
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.grandis-article-content a {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.grandis-article-content h1,
.grandis-article-content h2,
.grandis-article-content h3,
.grandis-article-content h4,
.grandis-article-content h5 {
  color: oklch(var(--foreground-950));
  font-family: var(--font-heading);
  font-weight: 650;
  line-height: 1.2;
  text-align: center;
}

.grandis-article-content h1 {
  margin: 0 0 2.5rem;
  font-size: clamp(2.25rem, 5vw, 4rem);
}

.grandis-article-content h2 {
  margin: 3rem 0 1.5rem;
  font-size: clamp(1.8rem, 3vw, 2.5rem);
}

.grandis-article-content h3,
.grandis-article-content h4,
.grandis-article-content h5 {
  margin: 2rem 0 1rem;
  font-size: 1.35rem;
}

.grandis-article-content hr {
  margin: 1.5rem 0;
  border: 0;
  border-top: 1px solid oklch(var(--background-300));
}

.grandis-article-content p,
.grandis-article-content ul,
.grandis-article-content ol,
.grandis-article-content table,
.grandis-article-content figure {
  margin: 1rem 0;
}

.grandis-article-content ul,
.grandis-article-content ol {
  padding-left: 1.5rem;
}

.grandis-article-content ul { list-style: disc; }
.grandis-article-content ol { list-style: decimal; }

.grandis-article-content a {
  color: oklch(var(--primary-700));
  text-decoration: underline;
  text-underline-offset: 2px;
}

.grandis-article-content img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

/* Long cached articles stay fully present in the DOM, but off-screen sections
   do not consume layout and paint time until they approach the viewport. */
.static-article-content [data-static-content-block] {
  content-visibility: auto;
  contain-intrinsic-size: auto 32rem;
}

.grandis-article-content [data-static-content-block] {
  contain-intrinsic-size: auto 48rem;
}

.grandis-article-content .maplehub-rendered-lazyload {
  margin: 1.25rem 0 2.25rem;
}

.grandis-article-content .repository-md-container,
.grandis-article-content .repository-sm-container {
  margin: 1rem auto;
}

.grandis-article-content .repository-image {
  display: block;
  margin: 0.75rem auto 1rem;
  max-height: 22rem;
  object-fit: contain;
}

.grandis-article-content .repository-video-container {
  position: relative;
  margin: 0.75rem auto 1.25rem;
  width: min(100%, 48rem);
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #111827;
}

.grandis-article-content .repository-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.grandis-article-content .card,
.grandis-article-content [class*='card'] {
  border: 1px solid oklch(var(--background-200));
  background: oklch(var(--background-50));
}

.grandis-article-content table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
  border: 1px solid oklch(var(--background-300));
}

.grandis-article-content th,
.grandis-article-content td {
  border: 1px solid oklch(var(--background-300));
  padding: 0.45rem 0.65rem;
  vertical-align: top;
}

.grandis-article-content th {
  background: oklch(var(--background-100));
}

.grandis-article-content .MuiSvgIcon-root {
  width: 1em;
  height: 1em;
  display: inline-block;
  flex-shrink: 0;
  fill: currentColor;
  color: #c2410c;
  font-size: 1.5rem;
  vertical-align: middle;
}

.grandis-article-content .MuiAccordion-root {
  border: 1px solid #fed7aa;
  border-radius: 0.5rem;
  overflow: hidden;
  background: #fff7ed;
  color: #7c2d12;
  box-shadow: 0 0.1rem 0.1rem rgba(124, 45, 18, 0.08), 0 0.2rem 0.2rem rgba(124, 45, 18, 0.06);
}

.grandis-article-content .MuiAccordionSummary-root {
  min-height: 3.1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1rem;
  color: #9a3412;
  cursor: pointer;
}

.grandis-article-content .MuiAccordionSummary-content {
  min-width: 0;
  flex: 1 1 auto;
  margin: 0.75rem 0;
  color: #9a3412;
}

.grandis-article-content .MuiAccordionSummary-expandIcon,
.grandis-article-content .MuiIconButton-root {
  width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  line-height: 1;
  color: #c2410c;
}

.grandis-article-content .MuiIconButton-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.grandis-article-content .MuiAccordionDetails-root {
  border-top: 1px solid #fed7aa;
  background: #fffaf5;
  color: oklch(var(--foreground-850));
  padding: 1rem;
}

.grandis-article-content .MuiCollapse-root {
  display: none;
}

.grandis-article-content .MuiCollapse-root.MuiCollapse-entered,
.grandis-article-content .MuiAccordion-root.maplehub-accordion-open .MuiCollapse-root {
  display: block;
}

.grandis-article-content .MuiAccordionSummary-expandIcon {
  transition: transform 180ms ease;
}

.grandis-article-content .MuiAccordion-root.maplehub-accordion-open .MuiAccordionSummary-expandIcon {
  transform: rotate(180deg);
}

.grandis-page-content {
  min-height: 70vh;
  background: oklch(var(--background-50));
  color: oklch(var(--foreground-850));
  font-family: 'Poppins', var(--font-sans), sans-serif;
  line-height: 1.5;
  padding-bottom: 3rem;
}

.grandis-page-content a {
  color: oklch(var(--primary-700));
  text-decoration: none;
}

.grandis-page-content a:hover {
  color: oklch(var(--primary-800));
  text-decoration: none;
}

.grandis-page-content h1,
.grandis-page-content h2,
.grandis-page-content h3,
.grandis-page-content h4,
.grandis-page-content h5 {
  color: oklch(var(--foreground-950));
  font-family: var(--font-heading), 'Poppins', sans-serif;
  font-weight: 650;
}

.grandis-page-content h1,
.grandis-page-content [class*='Page__Title'] {
  margin: 0 0 3rem;
  text-align: center;
  font-size: clamp(3rem, 6vw, 3.5rem);
  line-height: 1.1;
}

.grandis-page-content h2,
.grandis-page-content [class*='Page__Subtitle'] {
  margin: 2rem 0 2.5rem;
  text-align: center;
  font-size: clamp(2.15rem, 4vw, 2.5rem);
  line-height: 1.15;
}

.grandis-page-content [class*='Page__Caption'] {
  margin: 2.5rem auto 1.5rem;
  max-width: min(90vw, 48rem);
  text-align: center;
  font-size: 1.08rem;
  color: oklch(var(--foreground-700));
}

.grandis-page-content [class*='HeaderImage__OuterBox'] {
  margin-bottom: 4rem;
  max-height: 220px !important;
  overflow: hidden;
}

.grandis-page-content [class*='HeaderImage__HeaderBox'] {
  position: relative;
  height: 220px !important;
  overflow: hidden;
}

.grandis-page-content [class*='HeaderImage__Header'] {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 75%;
  display: block;
}

.grandis-page-content [class*='DarkOverlay'] {
  position: absolute;
  inset: 0;
  height: inherit;
  background: #2a2829;
  opacity: 0.2;
}

.grandis-page-content .container {
  width: min(100% - 2rem, 1140px);
  margin-right: auto;
  margin-left: auto;
}

.grandis-page-content .alert {
  margin: 0 auto 2rem;
  max-width: 1140px;
  border: 1px solid oklch(var(--background-200));
  background: oklch(var(--background-100));
  color: oklch(var(--foreground-800));
  padding: 0.75rem 1.25rem;
}

.grandis-page-content .alert a {
  color: #ffb27d;
  font-weight: 600;
}

.grandis-page-content [class*='ContentContainer']:not([class*='Page__ContentContainer']) {
  max-width: 80%;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}

.grandis-page-content [class*='ContentCard']:not([class*='Page__ContentCard']),
.grandis-page-content .card:not([class*='Page__ContentCard']) {
  min-width: 8rem;
  margin: 0.5rem;
  overflow: hidden;
  border: 1px solid oklch(var(--background-200));
  border-radius: 0;
  background: oklch(var(--background-50));
  color: oklch(var(--foreground-900));
  box-shadow: 0 0.1rem 0.1rem rgba(0, 0, 0, 0.08), 0 0.2rem 0.2rem rgba(0, 0, 0, 0.06);
}

.grandis-page-content .card-img-top {
  display: block;
  width: 100%;
  height: auto;
}

.grandis-page-content .card-body {
  padding: 1.25rem;
}

.grandis-page-content .card-title,
.grandis-page-content [class*='ContentCardTitle'] {
  margin: 0 0 0.75rem;
  font-size: 1.15rem;
  line-height: 1.2;
}

.grandis-page-content .card-text,
.grandis-page-content [class*='ContentCardText'] {
  margin: 0;
  color: oklch(var(--foreground-650));
  font-size: 0.9rem;
  line-height: 1.25rem;
}

/* Classes page: group headings (GL layout) */
.grandis-page-content .grandis-class-group-heading {
  text-align: center;
  font-size: 1.5rem;
  font-weight: 500;
  color: oklch(var(--foreground-800));
  margin: 1.5rem 0 1.25rem;
  line-height: 1.2;
}

.grandis-page-content .grandis-class-group-heading:first-of-type {
  margin-top: 0.5rem;
}

/* Classes page: group container */
.grandis-page-content .grandis-class-group-container {
  width: min(100%, 75rem);
  margin: 0 auto 1.5rem;
  padding: 0 1.5rem;
  text-align: center;
}

/* Compress the announcement banner on classes section */
.grandis-page-content .alert {
  padding: 0.25rem 0.5rem;
  margin-bottom: 0.25rem;
  font-size: 0.78rem;
}

.grandis-page-content .alert a {
  font-size: 0.78rem;
}

.grandis-page-content .grandis-class-portrait-link {
  display: inline-block;
  width: 8.5rem;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  text-decoration: none;
  border-radius: 0;
  transition: transform 0.15s ease, filter 0.15s ease;
  vertical-align: top;
}

.grandis-page-content .grandis-class-portrait-link:hover {
  transform: translateY(-2px);
  filter: brightness(1.1);
}

.grandis-page-content .grandis-class-portrait-link img {
  width: 7.5rem;
  height: 10.82rem;
  object-fit: contain;
  border-radius: 0;
  display: block;
}

@media (min-width: 200px) {
  .grandis-page-content [class*='ContentContainer']:not([class*='Page__ContentContainer']) {
    max-width: 100%;
  }

  .grandis-page-content [class*='ContentCard']:not([class*='Page__ContentCard']),
  .grandis-page-content .card:not([class*='Page__ContentCard']) {
    max-width: 100%;
  }
}

@media (min-width: 400px) {
  .grandis-page-content [class*='ContentCard']:not([class*='Page__ContentCard']),
  .grandis-page-content .card:not([class*='Page__ContentCard']) {
    max-width: 45%;
  }
}

@media (min-width: 500px) {
  .grandis-page-content [class*='ContentContainer']:not([class*='Page__ContentContainer']) {
    max-width: 90%;
    padding-left: 0.5rem;
  }
}

@media (min-width: 800px) {
  .grandis-page-content [class*='ContentContainer']:not([class*='Page__ContentContainer']) {
    max-width: 80%;
    padding-left: 2.5rem;
  }

  .grandis-page-content [class*='ContentCard']:not([class*='Page__ContentCard']),
  .grandis-page-content .card:not([class*='Page__ContentCard']) {
    max-width: 30%;
  }
}

@media (min-width: 1100px) {
  .grandis-page-content [class*='ContentCard']:not([class*='Page__ContentCard']),
  .grandis-page-content .card:not([class*='Page__ContentCard']) {
    max-width: 23%;
  }
}

@media (min-width: 1500px) {
  .grandis-page-content [class*='ContentCard']:not([class*='Page__ContentCard']),
  .grandis-page-content .card:not([class*='Page__ContentCard']) {
    max-width: 23.5%;
  }
}

@media (max-width: 473px) {
  .grandis-page-content .grandis-class-group-heading {
    font-size: 1.15rem;
    margin: 1rem 0 0.75rem;
  }

  .grandis-page-content .grandis-class-group-container {
    padding: 0 0.5rem;
  }

  .grandis-page-content .grandis-class-portrait-link {
    width: 4.5rem;
  }

  .grandis-page-content .grandis-class-portrait-link img {
    width: 4rem;
    height: 5.78rem;
  }
}

/* ===== Class Swipers (Classes Section - Original Grandis Library Layout) ===== */
.grandis-page-content [class*='ClassSwipers__ClassContainer'] {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 1rem;
  margin: 1.5rem auto;
  max-width: 1140px;
  padding: 0 1rem;
}

.grandis-page-content [class*='ClassSwipers__FilterTitle'] {
  display: block;
  text-align: center;
  font-size: 0.95rem;
  font-weight: 500;
  color: oklch(var(--foreground-700));
  margin: 0.25rem 0;
  padding: 0.25rem 0.5rem;
  line-height: 1.3;
}

.grandis-page-content [class*='ClassSwipers'] a {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: oklch(var(--foreground-800));
  transition: transform 0.2s ease, filter 0.2s ease;
}

.grandis-page-content [class*='ClassSwipers'] a:hover {
  transform: translateY(-0.15rem);
  filter: brightness(1.1);
}

.grandis-page-content [class*='ClassSwipers'] img {
  width: auto;
  max-width: 120px;
  height: auto;
  object-fit: contain;
  border-radius: 0.25rem;
}

/* ===== Content Cards (Events & Content Sections) ===== */
.grandis-page-content [class*='Page__ContentContainer'] {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 1.25rem;
  max-width: 1140px;
  margin: 1.5rem auto;
  padding: 0 1rem;
}

.grandis-page-content [class*='Page__ContentCard'] {
  width: 18rem;
  border: 1px solid oklch(var(--background-200));
  border-radius: 0.25rem;
  background: oklch(var(--background-50));
  overflow: hidden;
  box-shadow: 0 0.1rem 0.1rem rgba(0, 0, 0, 0.08), 0 0.2rem 0.2rem rgba(0, 0, 0, 0.06);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.grandis-page-content [class*='Page__ContentCard']:hover {
  transform: translateY(-0.15rem);
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.12), 0 0.1rem 0.3rem rgba(0, 0, 0, 0.08);
}

.grandis-page-content [class*='Page__ContentCard'] img {
  width: 100%;
  height: auto;
  display: block;
}

.grandis-page-content [class*='ContentCard__Body'],
.grandis-page-content [class*='Page__ContentCard'] .card-body {
  padding: 1.25rem;
}

.grandis-page-content [class*='ContentCard__Title'],
.grandis-page-content [class*='Page__ContentCard'] .card-title {
  font-size: 1.15rem;
  font-weight: 600;
  color: oklch(var(--foreground-900));
  margin: 0 0 0.75rem;
  line-height: 1.2;
}

.grandis-page-content [class*='ContentCard__Text'],
.grandis-page-content [class*='Page__ContentCard'] .card-text {
  font-size: 0.9rem;
  color: oklch(var(--foreground-650));
  line-height: 1.5;
  margin: 0;
}

.grandis-page-content [class*='Page__ContentCard'] a {
  color: oklch(var(--primary-700));
  text-decoration: none;
}

.grandis-page-content [class*='Page__ContentCard'] a:hover {
  color: oklch(var(--primary-800));
  text-decoration: none;
}

.grandis-page-content .maplehub-guide-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  padding: 0 1.25rem 1rem;
}

.grandis-page-content .maplehub-guide-card-meta span {
  border: 1px solid oklch(var(--background-300));
  border-radius: 999px;
  background: oklch(var(--background-100));
  padding: 0.2rem 0.55rem;
  color: oklch(var(--foreground-700));
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.2;
}

/* ===== Video / Embed Containers ===== */
.grandis-page-content .video-container,
.grandis-page-content [class*='Video'],
.grandis-page-content [class*='Embed'] {
  position: relative;
  width: 100%;
  margin: 1rem 0;
}

.grandis-page-content iframe {
  border: 0;
  border-radius: 0.5rem;
  max-width: 100%;
}

.grandis-page-content iframe[src*='youtube'],
.grandis-page-content iframe[src*='youtu.be'] {
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  display: block;
  margin: 1rem auto;
  border-radius: 0.5rem;
}

.grandis-page-content video {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 1rem auto;
  border-radius: 0.5rem;
}

/* ===== Section Subheadings (Events/Content categories) ===== */
.grandis-page-content h3[class*='Page__Subtitle'],
.grandis-page-content [class*='Page__Subtitle'] {
  color: oklch(var(--foreground-900));
  font-size: clamp(1.5rem, 3vw, 2rem);
  margin: 2.5rem auto 1.5rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid oklch(var(--primary-500));
  display: block;
  width: max-content;
  max-width: 100%;
  text-align: center;
}

/* ===== Figure / Caption ===== */
.grandis-page-content figure {
  margin: 1.5rem 0;
  text-align: center;
}

.grandis-page-content figcaption {
  font-size: 0.85rem;
  color: oklch(var(--foreground-600));
  margin-top: 0.5rem;
  font-style: italic;
}

/* ===== Responsive: Classes & Events ===== */
@media (max-width: 768px) {
  .grandis-page-content [class*='ClassSwipers__ClassContainer'] {
    gap: 0.75rem;
    padding: 0 0.5rem;
  }

  .grandis-page-content [class*='ClassSwipers'] img {
    max-width: 90px;
  }

  .grandis-page-content [class*='Page__ContentContainer'] {
    gap: 1rem;
    padding: 0 0.5rem;
  }

  .grandis-page-content [class*='Page__ContentCard'] {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .grandis-page-content [class*='ClassSwipers'] img {
    max-width: 72px;
  }

  .grandis-page-content [class*='ClassSwipers__FilterTitle'] {
    font-size: 0.8rem;
  }
}

/* Imported wiki/guide HTML contains source-owned light colors. Normalize its
   reading surfaces in dark mode without rewriting the sanitized content. */
.dark .wiki-vector-article.wiki-article-content {
  color: oklch(var(--foreground-900));
  background: oklch(var(--background-100));
}

.dark .wiki-vector-article.wiki-article-content h1,
.dark .wiki-vector-article.wiki-article-content h2,
.dark .wiki-vector-article.wiki-article-content h3,
.dark .wiki-vector-article.wiki-article-content h4 {
  color: oklch(var(--foreground-950));
  border-color: oklch(var(--background-400));
}

.dark .wiki-vector-article.wiki-article-content a,
.dark .wiki-vector-article.wiki-article-content a.external {
  color: oklch(0.78 0.12 245);
}

.dark .wiki-vector-article.wiki-article-content a.new,
.dark .wiki-vector-article.wiki-article-content a.new:visited {
  color: oklch(0.76 0.16 25);
}

.dark .wiki-vector-article.wiki-article-content .thumbcaption,
.dark .wiki-vector-article.wiki-article-content .shortdescription,
.dark .wiki-vector-article.wiki-article-content .gallerytext,
.dark .wiki-mainpage-article .mainpage-update-subtitle,
.dark .wiki-mainpage-article .mainpage-version-subtitle {
  color: oklch(var(--foreground-700));
}

.dark .wiki-vector-article.wiki-article-content .thumbinner,
.dark .wiki-vector-article.wiki-article-content .infobox,
.dark .wiki-vector-article.wiki-article-content table.wikitable,
.dark .wiki-vector-article.wiki-article-content table,
.dark .wiki-vector-article.wiki-article-content .navbox,
.dark .wiki-vector-article.wiki-article-content table.navbox,
.dark .wiki-vector-article.wiki-article-content .hatnote,
.dark .wiki-vector-article.wiki-article-content .dablink,
.dark .wiki-vector-article.wiki-article-content .rellink,
.dark .wiki-vector-article.wiki-article-content .ambox,
.dark .wiki-vector-article.wiki-article-content .ambox-stub,
.dark .wiki-vector-article.wiki-article-content .ambox-notice,
.dark .wiki-vector-article.wiki-article-content pre,
.dark .wiki-vector-article.wiki-article-content code,
.dark .wiki-vector-article.wiki-article-content blockquote,
.dark .wiki-mainpage-article #mainpage-headline,
.dark .wiki-mainpage-article .mainpage-update-tile,
.dark .wiki-mainpage-article .mainpage-navigation-tile,
.dark .wiki-mainpage-article .mainpage-version-tile {
  color: oklch(var(--foreground-900));
  background: oklch(var(--background-200));
  border-color: oklch(var(--background-400));
}

.dark .wiki-vector-article.wiki-article-content .infobox th,
.dark .wiki-vector-article.wiki-article-content table.wikitable th,
.dark .wiki-vector-article.wiki-article-content table th,
.dark .wiki-vector-article.wiki-article-content .navbox th,
.dark .wiki-vector-article.wiki-article-content .navbox .navbox-title,
.dark .wiki-vector-article.wiki-article-content .navbox .navbox-group,
.dark .wiki-vector-article.wiki-article-content .navbox .navbox-above,
.dark .wiki-vector-article.wiki-article-content .navbox .navbox-below {
  color: oklch(var(--foreground-950));
  background: oklch(var(--background-300));
  border-color: oklch(var(--background-400));
}

.dark .grandis-article-content .MuiAccordion-root {
  border-color: oklch(var(--primary-800));
  background: oklch(var(--background-200));
  color: oklch(var(--foreground-900));
}

.dark .grandis-article-content .MuiAccordionSummary-root,
.dark .grandis-article-content .MuiAccordionSummary-content,
.dark .grandis-article-content .MuiAccordionSummary-expandIcon,
.dark .grandis-article-content .MuiIconButton-root {
  color: oklch(var(--primary-400));
}

.dark .grandis-article-content .MuiAccordionDetails-root {
  border-color: oklch(var(--primary-800));
  background: oklch(var(--background-100));
  color: oklch(var(--foreground-900));
}
