/* Wikipedia-like Vanilla CSS for extreme speed and clean aesthetic */
html {
  scroll-behavior: smooth;
}

:root {
  --wiki-bg: #ffffff;
  --wiki-text: #202122;
  --wiki-link: #3366cc;
  --wiki-link-visited: #0b0080;
  --wiki-border: #a2a9b1;
  --wiki-sidebar-bg: #f8f9fa;
  --wiki-heading-border: #eaecf0;
  --wiki-button: #3366cc;
  --wiki-button-hover: #2b56ad;
  --wiki-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Lato, Helvetica, Arial, sans-serif;
  --wiki-font-serif: var(--font-lora), "Linux Libertine", "Georgia", "Times", serif;
}

body {
  font-family: var(--wiki-font-sans);
  color: var(--wiki-text);
  background-color: var(--wiki-bg);
  line-height: 1.6;
  margin: 0;
  padding: 0;
  font-size: 0.875rem; /* ~14px on standard 16px root */
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--wiki-font-serif);
  font-weight: normal;
  color: var(--wiki-strong-text, #000);
}

h1 {
  font-size: 1.8em;
  border-bottom: 1px solid var(--wiki-heading-border);
  padding-bottom: 0.25em;
  margin-top: 1em;
  margin-bottom: 0.25em;
}

h2 {
  font-size: 1.5em;
  border-bottom: 1px solid var(--wiki-heading-border);
  padding-bottom: 0.25em;
  margin-top: 1em;
}

h3 {
  font-size: 1.2em;
  font-weight: bold;
}

a {
  color: var(--wiki-link);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

a:visited {
  color: var(--wiki-link-visited);
}

.wiki-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  background-color: var(--wiki-bg);
}

.wiki-header {
  border-bottom: 1px solid var(--wiki-border);
  margin-bottom: 20px;
  background-color: var(--wiki-bg);
}

.wiki-grid {
  display: grid;
  /* Standard Width: Noticeably constrained for readability */
  grid-template-columns: minmax(2vw, 1fr) 240px minmax(0, 1100px) 220px minmax(2vw, 1fr);
  gap: 25px;
}

.wiki-grid > :nth-child(1) { grid-column: 2; }
.wiki-grid > :nth-child(2) { grid-column: 3; }
.wiki-grid > :nth-child(3) { grid-column: 4; }

.wiki-header-grid {
  padding-top: 10px;
  padding-bottom: 10px;
  align-items: center;
}

body.wiki-width-wide .wiki-grid {
  /* Wide Width: stretches fully to screen edges with minimal margin */
  grid-template-columns: 20px 240px minmax(0, 1fr) 220px 20px;
}

body.sidebar-right-hidden .wiki-grid > :nth-child(3) {
  display: none !important;
}

body.sidebar-right-hidden .wiki-main-content {
  grid-column: 2 / 5 !important;
}

.wiki-logo {
  font-family: var(--wiki-font-serif);
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 1px;
  object-fit: contain;
}

/* Article Typography (For AI generated HTML) */
.wiki-article-content p {
  margin-bottom: 1em;
  line-height: 1.6;
  font-size: 0.9375rem; /* ~15px on standard 16px root */
  color: var(--wiki-text);
}

.wiki-article-content h2 {
  font-size: 1.5rem;
  border-bottom: 1px solid var(--wiki-border);
  padding-bottom: 0.3em;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  font-family: 'Linux Libertine', Georgia, Times, serif;
  font-weight: normal;
  color: var(--wiki-text);
}

.wiki-article-content ul, .wiki-article-content ol {
  margin-bottom: 1em;
  padding-left: 20px;
  line-height: 1.6;
}

.wiki-article-content a {
  color: var(--wiki-link);
  text-decoration: none;
}

.wiki-article-content a:hover {
  text-decoration: underline;
}

.wiki-infobox {
  float: right;
  clear: right;
  margin: 0.5em 0 0.5em 1em;
  border: 1px solid var(--wiki-border);
  background-color: var(--wiki-sidebar-bg);
  padding: 0.5em;
  font-size: 88%;
  width: 22em;
}

.wiki-infobox th {
  text-align: left;
  vertical-align: top;
  width: 35%;
}

.wiki-infobox td {
  vertical-align: top;
}

.wiki-infobox-header {
  text-align: center;
  font-weight: bold;
  background-color: #eaecf0;
  padding: 5px;
  margin-bottom: 10px;
}

.wiki-form-group {
  margin-bottom: 15px;
}

.wiki-label {
  display: block;
  font-weight: bold;
  margin-bottom: 5px;
}

.wiki-input, .wiki-textarea {
  width: 100%;
  padding: 8px;
  border: 1px solid var(--wiki-border);
  border-radius: 2px;
  font-family: var(--wiki-font-sans);
  background-color: var(--wiki-input-bg, #fff);
  color: var(--wiki-text);
}

.wiki-textarea {
  min-height: 150px;
}

.wiki-button {
  background-color: var(--wiki-button);
  color: white;
  border: none;
  padding: 10px 15px;
  cursor: pointer;
  font-weight: bold;
  border-radius: 2px;
}

.wiki-button:hover {
  background-color: var(--wiki-button-hover);
  text-decoration: none;
}

/* Clearfix for floating elements */
.clearfix::after {
  content: "";
  clear: both;
  display: table;
}

/* Appearance Settings */
body.wiki-theme-dark {
  --wiki-bg: #202122;
  --wiki-text: #eaecf0;
  --wiki-strong-text: #ffffff;
  --wiki-sidebar-bg: #2c2d2e;
  --wiki-border: #54595d;
  --wiki-heading-border: #54595d;
  --wiki-link: #8dbaff;
  --wiki-button: #4a7be8;
  --wiki-input-bg: #101010;
  
  --wiki-box-bg: #2c2d2e;
  --wiki-featured-bg: #1e3a2b;
  --wiki-featured-border: #2a503c;
  --wiki-news-bg: #1c2e4a;
  --wiki-news-border: #274066;
  --wiki-onthisday-bg: #4a2525;
  --wiki-onthisday-border: #663333;
  --wiki-newest-bg: #3e4042;
  --wiki-browse-bg: #3a3250;
  --wiki-header-text: #f8f9fa;
  
  background-color: var(--wiki-bg);
  color: var(--wiki-text);
}
body.wiki-theme-dark .wiki-container { background-color: var(--wiki-bg); }
body.wiki-theme-dark .wiki-infobox { background-color: var(--wiki-sidebar-bg); }
body.wiki-theme-dark .wiki-infobox-header { background-color: #3e4042; }

body.wiki-theme-dark .wiki-footer-badges img {
  filter: invert(1) hue-rotate(180deg);
}

body.wiki-theme-dark .wiki-footer-badges img {
  filter: invert(1) hue-rotate(180deg);
}

html.wiki-text-small { font-size: 14px; }
html.wiki-text-large { font-size: 18px; }

.article-main {
  display: flex;
  align-items: flex-start;
}

@media (max-width: 1024px) {
  .wiki-appearance-sidebar, .hide-on-mobile {
    display: none !important;
  }
  
  .show-on-mobile {
    display: block !important;
  }
  
  img.show-on-mobile {
    display: inline-block !important;
  }
  
  .wiki-infobox {
    float: none !important;
    width: 100% !important;
    margin-left: 0 !important;
  }
  
  .wiki-grid {
    display: block !important;
    padding: 15px !important;
  }
  
  .article-main {
    display: block !important;
  }
  
  .wiki-main-content {
    width: 100% !important;
    max-width: 100% !important;
  }

  .home-top-grid {
    display: grid;
    grid-template-columns: 1fr !important;
    gap: 15px;
  }
}

.home-top-grid {
  display: grid;
  grid-template-columns: 55% 1fr;
  gap: 15px;
}

/* ----------------------------------------------------
   Wikipedia Native HTML Support
   (To render action=parse HTML perfectly)
------------------------------------------------------- */
.mw-parser-output .infobox {
  float: right;
  clear: right;
  margin: 0.5em 0 1em 1em;
  background-color: var(--wiki-sidebar-bg);
  border: 1px solid var(--wiki-border);
  padding: 0.2em;
  font-size: 88%;
  line-height: 1.5em;
  width: 22em;
}

.mw-parser-output .infobox th, .mw-parser-output .infobox td {
  vertical-align: top;
  padding: 0.2em;
}

.mw-parser-output .infobox th {
  text-align: left;
}

.mw-parser-output .infobox-above {
  font-size: 125%;
  font-weight: bold;
  text-align: center;
}

.mw-parser-output .infobox-image {
  text-align: center;
}

.mw-parser-output .toc {
  display: none; /* Hide Wikipedia's inline TOC since we have a sticky sidebar TOC */
}

.mw-parser-output .thumb {
  margin-bottom: 0.5em;
}

.mw-parser-output .tright {
  clear: right;
  float: right;
  margin-left: 1.4em;
}

.mw-parser-output .tleft {
  float: left;
  clear: left;
  margin-right: 1.4em;
}

.mw-parser-output .thumbinner {
  border: 1px solid var(--wiki-border);
  padding: 3px;
  background-color: var(--wiki-sidebar-bg);
  font-size: 94%;
  text-align: center;
  overflow: hidden;
}

.mw-parser-output .thumbimage {
  border: 1px solid var(--wiki-border);
}

.mw-parser-output .thumbcaption {
  text-align: left;
  padding: 3px;
  font-size: 90%;
}

.mw-parser-output .hatnote, .mw-parser-output .ambox {
  font-style: italic;
  margin-bottom: 0.5em;
  color: var(--wiki-text);
}

.mw-parser-output .navbox {
  border: 1px solid var(--wiki-border);
  background-color: var(--wiki-sidebar-bg);
  margin-top: 1em;
  padding: 2px;
  text-align: center;
  width: 100%;
}

.mw-parser-output .reflist {
  font-size: 90%;
  column-width: 30em;
}

.mw-parser-output .references {
  margin: 0;
  padding-left: 1.5em;
}

.mw-parser-output img {
  max-width: 100%;
  height: auto;
}
