/* style.css — shared stylesheet for the Luth: Reluthed Wiki */

:root{
  --bg-page:#f6f6f6;
  --bg-content:#ffffff;
  --border:#a2a9b1;
  --text:#202122;
  --text-muted:#54595d;
  --link:#3366bb;
  --link-visited:#795cb2;
  --sidebar-bg:#eaecf0;
}
*{box-sizing:border-box;}
body{
  margin:0;
  background:var(--bg-page);
  color:var(--text);
  font-family:Helvetica Neue, Arial, sans-serif;
  font-size:14px;
  line-height:1.6;
}
a{color:var(--link);text-decoration:none;}
a:visited{color:var(--link-visited);}
a:hover{text-decoration:underline;}

/* icon shown inline whenever a page is linked from elsewhere */
a.wiki-link img.link-icon{
  width:16px;
  height:16px;
  vertical-align:middle;
  margin-right:3px;
  image-rendering:pixelated;
}

/* ---- Top bar ---- */
header.site-header{
  background:#ffffff;
  border-bottom:1px solid var(--border);
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 16px;
}
header.site-header img.logo-icon{
  width:32px;
  height:32px;
  image-rendering:pixelated;
}
header.site-header .site-title{
  font-family:Georgia, "Times New Roman", serif;
  font-size:20px;
  font-weight:bold;
}
header.site-header .site-title span{
  font-weight:normal;
  font-size:13px;
  color:var(--text-muted);
  margin-left:8px;
}

/* ---- Layout ---- */
.wiki-layout{
  display:flex;
  max-width:1200px;
  margin:0 auto;
}
nav.sidebar{
  width:190px;
  flex-shrink:0;
  background:var(--sidebar-bg);
  border-right:1px solid var(--border);
  padding:16px 10px;
  min-height:calc(100vh - 49px);
}
nav.sidebar h3{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.5px;
  color:var(--text-muted);
  margin:16px 8px 6px;
}
nav.sidebar h3:first-child{margin-top:0;}
nav.sidebar ul{
  list-style:none;
  margin:0;
  padding:0;
}
nav.sidebar li a{
  display:flex;
  align-items:center;
  gap:6px;
  padding:5px 8px;
  border-radius:2px;
}
nav.sidebar li a:hover{
  background:#dadfe6;
  text-decoration:none;
}
nav.sidebar li a img{
  width:16px;
  height:16px;
  image-rendering:pixelated;
}

main.content{
  flex:1;
  background:var(--bg-content);
  padding:20px 30px 60px;
  min-width:0;
}

h1.page-title{
  font-family:Georgia, "Times New Roman", serif;
  font-size:28px;
  font-weight:normal;
  border-bottom:1px solid var(--border);
  padding-bottom:8px;
  margin:0 0 12px;
}
h2{
  font-family:Georgia, "Times New Roman", serif;
  font-size:20px;
  font-weight:normal;
  border-bottom:1px solid var(--border);
  padding-bottom:4px;
  margin:28px 0 10px;
}
h3{
  font-size:15px;
  margin:18px 0 6px;
}
.placeholder{
  color:#a00;
  font-style:italic;
}

/* ---- Infobox ---- */
.infobox{
  float:right;
  width:260px;
  margin:0 0 16px 20px;
  background:var(--sidebar-bg);
  border:1px solid var(--border);
  font-size:13px;
}
.infobox .infobox-title{
  text-align:center;
  font-weight:bold;
  font-size:16px;
  padding:8px;
  border-bottom:1px solid var(--border);
  background:#dfe3e8;
}
.infobox .infobox-image{
  text-align:center;
  padding:14px;
  border-bottom:1px solid var(--border);
  background:#ffffff;
}
.infobox .infobox-image img{
  max-width:200px;
  height:auto;
  image-rendering:pixelated;
}
.infobox table{
  width:100%;
  border-collapse:collapse;
}
.infobox table tr:not(:last-child) td,
.infobox table tr:not(:last-child) th{
  border-bottom:1px solid var(--border);
}
.infobox th{
  text-align:left;
  padding:6px 8px;
  width:38%;
  color:var(--text-muted);
  font-weight:normal;
  vertical-align:top;
}
.infobox td{
  padding:6px 8px;
  vertical-align:top;
}

/* ---- Gallery ---- */
.gallery{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:12px;
  margin:12px 0;
}
.gallery figure{
  margin:0;
  background:var(--sidebar-bg);
  border:1px solid var(--border);
  padding:6px;
  text-align:center;
}
.gallery figure img{
  display:block;
  max-width:200px;
  max-height:200px;
  width:auto;
  height:auto;
  image-rendering:pixelated;
  margin:0 auto;
}
.gallery figcaption{
  font-size:12px;
  color:var(--text-muted);
  margin-top:6px;
  max-width:200px;
}

/* ---- Index page ---- */
.index-hero{
  text-align:center;
  padding:30px 20px 20px;
  border-bottom:1px solid var(--border);
  margin-bottom:20px;
}
.index-hero img{
  width:80px;
  image-rendering:pixelated;
}
.index-hero h1{
  font-family:Georgia, "Times New Roman", serif;
  font-weight:normal;
  font-size:30px;
  margin:10px 0 4px;
  border:none;
}
.index-hero p{
  color:var(--text-muted);
  margin:0;
}
.index-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:16px;
}
.index-card{
  border:1px solid var(--border);
  background:var(--sidebar-bg);
  padding:14px;
  text-align:center;
}
.index-card img{
  width:40px;
  height:40px;
  image-rendering:pixelated;
  margin-bottom:6px;
}
.index-card a{
  display:block;
  font-weight:bold;
}

footer.site-footer{
  max-width:1200px;
  margin:0 auto;
  padding:20px 30px;
  font-size:12px;
  color:var(--text-muted);
  border-top:1px solid var(--border);
}