MediaWiki:Timeless.css:修订间差异

来自Mindustry中文wiki
无编辑摘要
无编辑摘要
第1行: 第1行:
/* MediaWiki:Timeless.css (Mindustry green + clean nav) */
/* MediaWiki:Timeless.css - Mindustry green header + MkDocs-ish sidebars */


  .skin-timeless {
body.skin-timeless {
    --mdtBrand: #00af89;
  --mdtBrand: #00af89;
    --mdtBrand2: #00cfa0;
  --mdtBrand2: #00cfa0;
    --mdtHeaderFg: #fff;
  --mdtHeaderFg: #ffffff;


    --mdtText: rgba(0, 0, 0, 0.87);
  --mdtText: rgba(0, 0, 0, 0.87);
    --mdtTextMut: rgba(0, 0, 0, 0.55);
  --mdtTextMut: rgba(0, 0, 0, 0.55);
    --mdtHover: rgba(0, 0, 0, 0.06);
  --mdtHover: rgba(0, 0, 0, 0.06);


    --mdtSidebarW: 16rem;
  --mdtSidebarW: 16rem;
    --mdtShadow:
  --mdtShadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.08),
      0 0.2rem 0.5rem rgba(0, 0, 0, 0.08),
    0 0 0.05rem rgba(0, 0, 0, 0.12);
      0 0 0.05rem rgba(0, 0, 0, 0.12);
}
  }


  /* ===== Header ===== */
/* ===== Header (Mindustry green) ===== */
  .skin-timeless #mw-header-container {
body.skin-timeless #mw-header-container {
    background: var(--mdtBrand) !important;
  background: var(--mdtBrand) !important;
    color: var(--mdtHeaderFg);
  color: var(--mdtHeaderFg);
    box-shadow: var(--mdtShadow);
  box-shadow: var(--mdtShadow);
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  }
}


  .skin-timeless #mw-header {
body.skin-timeless #mw-header {
    display: flex;
  display: flex;
    align-items: center;
  align-items: center;
    gap: 0.75rem;
  gap: 0.75rem;
    flex-wrap: nowrap;
  flex-wrap: nowrap;
  }
}


  .skin-timeless #mw-header .visualClear {
body.skin-timeless #mw-header .visualClear {
    display: none;
  display: none;
  }
}


  /* Site title */
/* Site title (left) */
  .skin-timeless #p-logo-text {
body.skin-timeless #p-logo-text {
    order: 1;
  order: 1;
    flex: 0 0 auto;
  flex: 0 0 auto;
    min-width: 0;
  min-width: 0;
    position: static !important;
  max-width: none;
    text-align: left !important;
  position: static !important;
  }
  text-align: left !important;
}


  .skin-timeless #p-logo-text #p-banner {
body.skin-timeless #p-logo-text #p-banner {
    display: flex;
  display: flex;
    align-items: center;
  align-items: center;
    gap: 0.5rem;
  gap: 0.5rem;
    color: inherit;
  color: inherit;
    text-decoration: none;
  text-decoration: none;
    font-weight: 700;
  font-weight: 700;
    letter-spacing: 0.02em;
  letter-spacing: 0.02em;
    line-height: 1.1;
  line-height: 1.1;
  }
}


  /* Move logo from sidebar to header */
/* Hide sidebar logo; show a small icon next to title */
  .skin-timeless #mw-site-navigation #p-logo {
body.skin-timeless #mw-site-navigation #p-logo {
    display: none !important;
  display: none !important;
  }
}


  .skin-timeless #p-logo-text #p-banner::before {
body.skin-timeless #p-logo-text #p-banner::before {
    content: '';
  content: '';
    width: 32px;
  width: 32px;
    height: 32px;
  height: 32px;
    background-image: url(/resources/assets/logo.jpg);
  background: url(/resources/assets/logo.jpg) center / cover no-repeat;
    background-position: center;
  border-radius: 8px;
    background-size: cover;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.22);
    background-repeat: no-repeat;
}
    border-radius: 8px;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.22);
  }


  /* Search (small + dark) */
/* Search (right, smaller, dark like external wiki) */
  .skin-timeless #p-search {
body.skin-timeless #p-search {
    order: 2;
  order: 2;
    margin-left: auto;
  margin-left: auto;
    flex: 0 1 13rem;
  flex: 0 1 13rem;
    min-width: 11rem;
  min-width: 11rem;
    max-width: 22vw;
  max-width: 22vw;
  }
}


  .skin-timeless #p-search h3 {
body.skin-timeless #p-search h3 {
    display: none;
  display: none;
  }
}


  .skin-timeless #p-search form {
body.skin-timeless #p-search form {
    margin: 0;
  margin: 0;
  }
}


  .skin-timeless #mw-header-container #simpleSearch {
body.skin-timeless #mw-header-container #simpleSearch {
    display: flex;
  display: flex;
    align-items: stretch;
  align-items: stretch;
    height: 2.2rem;
  height: 2.2rem;
    width: 100%;
  width: 100%;
    background: rgba(0, 0, 0, 0.28) !important;
  background: rgba(0, 0, 0, 0.28) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 0.35rem !important;
  border-radius: 0.35rem !important;
    box-shadow: none !important;
  box-shadow: none !important;
    overflow: hidden;
  overflow: hidden;
  }
}


  .skin-timeless #mw-header-container #simpleSearch:focus-within {
body.skin-timeless #mw-header-container #simpleSearch:focus-within {
    background: rgba(0, 0, 0, 0.36) !important;
  background: rgba(0, 0, 0, 0.36) !important;
    border-color: rgba(255, 255, 255, 0.25) !important;
  border-color: rgba(255, 255, 255, 0.25) !important;
  }
}


  .skin-timeless #mw-header-container #searchInput-container {
body.skin-timeless #mw-header-container #searchInput-container {
    flex: 1 1 auto;
  flex: 1 1 auto;
  }
}


  .skin-timeless #mw-header-container #searchInput {
body.skin-timeless #mw-header-container #searchInput {
    height: 100% !important;
  height: 100% !important;
    width: 100% !important;
  width: 100% !important;
    background: transparent !important;
  background: transparent !important;
    border: 0 !important;
  border: 0 !important;
    box-shadow: none !important;
  box-shadow: none !important;
    color: var(--mdtHeaderFg) !important;
  color: var(--mdtHeaderFg) !important;
    padding: 0.25rem 0.55rem !important;
  padding: 0.25rem 0.55rem !important;
  }
}


  .skin-timeless #mw-header-container #searchInput::placeholder {
body.skin-timeless #mw-header-container #searchInput::placeholder {
    color: rgba(255, 255, 255, 0.75) !important;
  color: rgba(255, 255, 255, 0.75) !important;
  }
}


  /* Hide submit buttons (Enter to search) */
/* Hide both submit buttons (press Enter to search) */
  .skin-timeless #mw-header-container #mw-searchButton,
body.skin-timeless #mw-header-container #mw-searchButton,
  .skin-timeless #mw-header-container #searchButton {
body.skin-timeless #mw-header-container #searchButton {
    display: none !important;
  display: none !important;
  }
}


  /* Account */
/* Account area on far right */
  .skin-timeless #user-tools {
body.skin-timeless #user-tools {
    order: 3;
  order: 3;
    flex: 0 0 auto;
  flex: 0 0 auto;
    white-space: nowrap;
  white-space: nowrap;
  }
}


  .skin-timeless #mw-header a,
body.skin-timeless #mw-header a,
  .skin-timeless #mw-header a:visited {
body.skin-timeless #mw-header a:visited {
    color: var(--mdtHeaderFg);
  color: var(--mdtHeaderFg);
  }
}


  .skin-timeless #mw-header .dropdown {
body.skin-timeless #mw-header .dropdown {
    color: rgba(0, 0, 0, 0.87);
  color: rgba(0, 0, 0, 0.87);
  }
}


  .skin-timeless #mw-header .dropdown a,
body.skin-timeless #mw-header .dropdown a,
  .skin-timeless #mw-header .dropdown a:visited {
body.skin-timeless #mw-header .dropdown a:visited {
    color: #0645ad;
  color: #0645ad;
  }
}


  /* Color bar */
/* Header color bar -> solid Mindustry green */
  .skin-timeless #mw-header-hack,
body.skin-timeless #mw-header-hack {
  .skin-timeless #mw-header-hack .color-left,
   background: var(--mdtBrand) !important;
   .skin-timeless #mw-header-hack .color-middle,
}
  .skin-timeless #mw-header-hack .color-right {
    background: var(--mdtBrand) !important;
  }


  /* ===== Sidebars ===== */
body.skin-timeless #mw-header-hack .color-left,
  .skin-timeless #mw-site-navigation,
body.skin-timeless #mw-header-hack .color-middle,
  .skin-timeless #mw-related-navigation {
body.skin-timeless #mw-header-hack .color-right {
    width: var(--mdtSidebarW) !important;
  background: var(--mdtBrand) !important;
    flex: 0 0 var(--mdtSidebarW) !important;
}
  }


  .skin-timeless #mw-site-navigation .sidebar-chunk,
/* ===== Sidebars (left + right consistent) ===== */
  .skin-timeless #mw-related-navigation .sidebar-chunk {
body.skin-timeless #mw-site-navigation,
    background: transparent !important;
body.skin-timeless #mw-related-navigation {
    border: 0 !important;
  width: var(--mdtSidebarW) !important;
    box-shadow: none !important;
  flex: 0 0 var(--mdtSidebarW) !important;
    padding: 0.25rem 0 !important;
}
    margin: 0 0 1rem !important;
  }


  .skin-timeless #mw-site-navigation .sidebar-chunk > h2,
body.skin-timeless #mw-site-navigation .sidebar-chunk,
  .skin-timeless #mw-related-navigation .sidebar-chunk > h2 {
body.skin-timeless #mw-related-navigation .sidebar-chunk {
    margin: 0.25rem 0.75rem 0.5rem;
  background: transparent;
    font-size: 0.8rem;
  border: 0;
    letter-spacing: 0.06em;
  box-shadow: none;
    color: var(--mdtTextMut);
  padding: 0.25rem 0;
  }
  margin: 0 0 1rem;
}


  .skin-timeless #mw-site-navigation .mw-portlet-body ul,
body.skin-timeless #mw-site-navigation .sidebar-chunk > h2,
  .skin-timeless #mw-related-navigation .mw-portlet-body ul {
body.skin-timeless #mw-related-navigation .sidebar-chunk > h2 {
    list-style: none;
  margin: 0.25rem 0.75rem 0.5rem;
    margin: 0;
  font-size: 0.8rem;
    padding: 0;
  letter-spacing: 0.06em;
   }
   color: var(--mdtTextMut);
}


  .skin-timeless #mw-site-navigation .mw-portlet-body a,
body.skin-timeless #mw-site-navigation .mw-portlet-body ul,
  .skin-timeless #mw-related-navigation .mw-portlet-body a {
body.skin-timeless #mw-related-navigation .mw-portlet-body ul {
    display: block;
  list-style: none;
    padding: 0.38rem 0.85rem;
  margin: 0;
    border-radius: 10px;
  padding: 0;
    text-decoration: none;
}
    color: var(--mdtText);
    box-shadow: inset 3px 0 0 transparent;
  }


  .skin-timeless #mw-site-navigation .mw-portlet-body a:hover,
body.skin-timeless #mw-site-navigation .mw-portlet-body a,
  .skin-timeless #mw-related-navigation .mw-portlet-body a:hover {
body.skin-timeless #mw-related-navigation .mw-portlet-body a {
    background: var(--mdtHover);
  display: block;
    box-shadow: inset 3px 0 0 var(--mdtBrand2);
  padding: 0.38rem 0.85rem;
  }
  border-radius: 10px;
  text-decoration: none;
  color: var(--mdtText);
  box-shadow: inset 3px 0 0 transparent;
}


  /* Sticky + scroll */
body.skin-timeless #mw-site-navigation .mw-portlet-body a:hover,
  @media (min-width: 1000px) {
body.skin-timeless #mw-related-navigation .mw-portlet-body a:hover {
    .skin-timeless #mw-site-navigation,
  background: var(--mdtHover);
    .skin-timeless #mw-related-navigation {
  box-shadow: inset 3px 0 0 var(--mdtBrand2);
      position: sticky;
}
      top: 4rem;
      align-self: flex-start;
      max-height: calc(100vh - 4rem);
      overflow-y: auto;
    }
  }


  /* Thin scrollbar */
/* Desktop: sticky and scrollable sidebars */
   .skin-timeless #mw-site-navigation,
@media (min-width: 1000px) {
   .skin-timeless #mw-related-navigation {
   body.skin-timeless #mw-site-navigation,
     scrollbar-width: thin;
   body.skin-timeless #mw-related-navigation {
     scrollbar-color: rgba(0, 207, 160, 0.85) transparent;
     position: sticky;
    top: 4rem;
    align-self: flex-start;
     max-height: calc(100vh - 4rem);
    overflow-y: auto;
   }
   }
}


  .skin-timeless #mw-site-navigation::-webkit-scrollbar,
/* Thin scrollbar like MkDocs */
  .skin-timeless #mw-related-navigation::-webkit-scrollbar {
body.skin-timeless #mw-site-navigation,
    width: 6px;
body.skin-timeless #mw-related-navigation {
   }
  scrollbar-width: thin;
   scrollbar-color: rgba(0, 207, 160, 0.85) transparent;
}


  .skin-timeless #mw-site-navigation::-webkit-scrollbar-track,
body.skin-timeless #mw-site-navigation::-webkit-scrollbar,
  .skin-timeless #mw-related-navigation::-webkit-scrollbar-track {
body.skin-timeless #mw-related-navigation::-webkit-scrollbar {
    background: transparent;
  width: 6px;
  }
}


  .skin-timeless #mw-site-navigation::-webkit-scrollbar-thumb,
body.skin-timeless #mw-site-navigation::-webkit-scrollbar-track,
  .skin-timeless #mw-related-navigation::-webkit-scrollbar-thumb {
body.skin-timeless #mw-related-navigation::-webkit-scrollbar-track {
    background: rgba(0, 207, 160, 0.85);
  background: transparent;
    border-radius: 999px;
}
  }


  /* ===== Collapsible nav (left) ===== */
body.skin-timeless #mw-site-navigation::-webkit-scrollbar-thumb,
  .skin-timeless #mw-site-navigation li.mdtNavGroup {
body.skin-timeless #mw-related-navigation::-webkit-scrollbar-thumb {
    display: grid;
  background: rgba(0, 207, 160, 0.85);
    grid-template-columns: 1fr 2rem;
  border-radius: 999px;
    align-items: center;
}
    min-width: 0;
  }


  .skin-timeless #mw-site-navigation .mdtNavToggle {
/* ===== Collapsible navigation (left) ===== */
    width: 2rem;
body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavGroup {
    height: 2rem;
  display: grid;
    border: 0;
  grid-template-columns: 1fr 2rem;
    background: transparent;
  align-items: center;
    cursor: pointer;
  min-width: 0;
    color: var(--mdtTextMut);
}
    border-radius: 10px;
  }


  .skin-timeless #mw-site-navigation .mdtNavToggle:hover {
body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavGroup > a {
    background: var(--mdtHover);
  min-width: 0;
  }
}


  .skin-timeless #mw-site-navigation .mdtNavToggle::before {
body.skin-timeless #mw-site-navigation #p-navigation .mdtNavToggle {
    content: '\25B8';
  width: 2rem;
    display: block;
  height: 2rem;
    font-size: 18px;
  border: 0;
    line-height: 1;
  background: transparent;
    transition: transform 0.15s ease;
  cursor: pointer;
  }
  color: var(--mdtTextMut);
  border-radius: 10px;
}


  .skin-timeless #mw-site-navigation li.mdtNavOpen >
body.skin-timeless #mw-site-navigation #p-navigation .mdtNavToggle:hover {
  .mdtNavToggle::before {
  background: var(--mdtHover);
    transform: rotate(90deg);
}
  }


  .skin-timeless #mw-site-navigation .mdtNavSublist {
body.skin-timeless #mw-site-navigation #p-navigation .mdtNavToggle::before {
    grid-column: 1 / -1;
  content: '\25B8';
    list-style: none;
  display: block;
    margin: 0.15rem 0 0.4rem;
  font-size: 18px;
    padding: 0 0 0 0.85rem;
  line-height: 1;
    border-left: 1px solid rgba(0, 0, 0, 0.08);
  transition: transform 0.15s ease;
    display: none;
}
  }


  .skin-timeless #mw-site-navigation li.mdtNavOpen >
body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavOpen > .mdtNavToggle::before {
  .mdtNavSublist {
  transform: rotate(90deg);
    display: block;
}
  }


  .skin-timeless #mw-site-navigation .mdtNavSublist a {
body.skin-timeless #mw-site-navigation #p-navigation .mdtNavSublist {
    font-size: 0.92em;
  grid-column: 1 / -1;
    padding: 0.32rem 0.85rem;
  list-style: none;
   }
  margin: 0.15rem 0 0.4rem;
  padding: 0 0 0 0.85rem;
  border-left: 1px solid rgba(0, 0, 0, 0.08);
   display: none;
}


  .skin-timeless #mw-site-navigation a.mdtNavActive {
body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavOpen > .mdtNavSublist {
    color: var(--mdtBrand) !important;
  display: block;
    background: rgba(0, 175, 137, 0.12) !important;
}
    box-shadow: inset 3px 0 0 var(--mdtBrand) !important;
  }


  /* Page title underline */
body.skin-timeless #mw-site-navigation #p-navigation .mdtNavSublist a {
  .skin-timeless .mw-body h1.firstHeading {
  font-size: 0.92em;
    border-bottom-color: var(--mdtBrand) !important;
   padding: 0.32rem 0.85rem;
   }
}


  /* Mobile */
body.skin-timeless #mw-site-navigation #p-navigation a.mdtNavActive {
  @media (max-width: 720px) {
  color: var(--mdtBrand) !important;
    .skin-timeless #mw-header {
  background: rgba(0, 175, 137, 0.12) !important;
      flex-wrap: wrap;
  box-shadow: inset 3px 0 0 var(--mdtBrand) !important;
    }
}


    .skin-timeless #p-search {
/* Page title underline -> green */
      flex: 1 1 100%;
body.skin-timeless .mw-body h1.firstHeading {
      max-width: none;
  border-bottom-color: var(--mdtBrand) !important;
      margin-left: 0;
}
    }
  }
/* Fix header: prevent title wrapping + keep logo size */
  .skin-timeless #p-logo-text{
    max-width:none !important;
  }


   .skin-timeless #p-logo-text #p-banner{
/* Small screens: search wraps */
     white-space:nowrap;
@media (max-width: 720px) {
   body.skin-timeless #mw-header {
     flex-wrap: wrap;
   }
   }


   .skin-timeless #p-logo-text #p-banner::before{
   body.skin-timeless #p-search {
     display:block;
    flex: 1 1 100%;
     flex:0 0 32px;
     max-width: none;
     margin-left: 0;
   }
   }
}


  /* 手机端允许换行 */
/* ===== Homepage (mdtHome): pure color Mindustry-style panels ===== */
  @media (max-width:720px){
body.skin-timeless .mdtHome {
    .skin-timeless #p-logo-text #p-banner{ white-space:normal; }
  --mdtHomePanel: #252a2e;
  }
   --mdtHomeCard: #2d343a;
/* ===== Home hero (Mindustry Encyclopedia-ish) ===== */
   --mdtHomeBorder: rgba(255, 255, 255, 0.12);
  .skin-timeless{
  --mdtHomeText: rgba(255, 255, 255, 0.92);
    --mdtGold:#d6b06a;
   --mdtHomeMut: rgba(255, 255, 255, 0.68);
   }
}
 
  .skin-timeless .mdtHomeHeroBg{
    padding:1.75rem 1.25rem;
    margin:0 0 1.25rem;
    border-radius:14px;
    background:
      linear-gradient(rgba(0,0,0,.55),rgba(0,0,0,.55)),
      url(/index.php?title=Special:FilePath/home.jpg) center/cover no-
   repeat;
  }
 
  .skin-timeless .mdtHomeHero{
    max-width:74rem;
    margin:0 auto;
    padding:2rem 1.5rem 1.5rem;
    text-align:center;
    color:rgba(255,255,255,.9);
    background:rgba(0,0,0,.82);
    border:4px solid var(--mdtGold);
    border-radius:14px;
    box-shadow:0 18px 40px rgba(0,0,0,.35), inset 0 0 0 2px
  rgba(214,176,106,.25);
   }
 
  .skin-timeless .mdtHomeHeroLogoBox{
    display:inline-block;
    padding:1.25rem 1.5rem;
    background:rgba(0,0,0,.88);
    border:4px solid var(--mdtGold);
    border-radius:12px;
    box-shadow:inset 0 0 0 2px rgba(214,176,106,.25);
  }
 
  .skin-timeless .mdtHomeHeroWelcome{
    font-size:2rem;
    font-weight:900;
    letter-spacing:.06em;
    margin:0 0 .9rem;
  }
 
  .skin-timeless .mdtHomeHeroBrandRow{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:1rem;
  }
 
  .skin-timeless .mdtHomeHeroLogo{
    width:76px;
    height:76px;
    border-radius:16px;
    display:block;
  }
 
  .skin-timeless .mdtHomeHeroBrandText{
    text-align:left;
  }


  .skin-timeless .mdtHomeHeroBrandText .en{
body.skin-timeless .mdtHome .mdtPanel {
    font-size:1.15rem;
   background: var(--mdtHomePanel) !important;
    font-weight:900;
   border: 1px solid var(--mdtHomeBorder);
    letter-spacing:.12em;
   color: var(--mdtHomeText);
    text-transform:uppercase;
    white-space:nowrap;
  }
 
   .skin-timeless .mdtHomeHeroBrandText .sub{
    margin-top:.25rem;
    color:rgba(255,255,255,.72);
  }
 
  .skin-timeless .mdtHomeHeroDesc{
    margin:1.1rem auto 0;
    max-width:54rem;
    color:rgba(255,255,255,.78);
   }
 
  .skin-timeless .mdtHomeHeroDesc a{
    color:var(--mdtGold);
    text-decoration:none;
  }
  .skin-timeless .mdtHomeHeroDesc a:hover{
    text-decoration:underline;
  }
 
  /* 可选:让首页更像“定制主页”(隐藏默认标题/页签) */
  .skin-timeless.page-首页 #firstHeading,
  .skin-timeless.page-首页 #siteSub{
    display:none;
  }
 
/* ===== Homepage: Mindustry UI panels ===== */
body.skin-timeless {
  --mdtUiBg: rgba(17, 20, 22, 0.92);
  --mdtUiBorder: rgba(255, 255, 255, 0.10);
   --mdtUiText: rgba(255, 255, 255, 0.92);
  --mdtUiTextMut: rgba(255, 255, 255, 0.68);
}
}


body.skin-timeless .mdtPanel {
/* Kill any older texture overlays you may have pasted before */
  background: var(--mdtUiBg);
body.skin-timeless .mdtHome .mdtPanel::before,
  border: 1px solid var(--mdtUiBorder);
body.skin-timeless .mdtHome .mdtCard::before {
  border-radius: 14px;
   content: none !important;
   box-shadow: 0 12px 28px rgba(0, 0, 0, 0.28);
}
}


body.skin-timeless .mdtHomeHero {
/* Hero */
body.skin-timeless .mdtHome .mdtHomeHero {
   padding: 1rem 1.1rem;
   padding: 1rem 1.1rem;
   display: grid;
   display: grid;
第452行: 第349行:
   gap: 1rem;
   gap: 1rem;
   align-items: center;
   align-items: center;
   background-image: url(/resources/assets/ui/alpha-bg.png);
   background-image: none !important;
  background-repeat: repeat;
  background-size: 64px 64px;
}
}


body.skin-timeless .mdtHomeHeroLogo {
body.skin-timeless .mdtHome .mdtHomeHeroLogo {
   width: 72px;
   width: 72px;
   height: 72px;
   height: 72px;
第466行: 第361行:
}
}


body.skin-timeless .mdtHomeHeroTitle {
body.skin-timeless .mdtHome .mdtHomeHeroTitle {
   color: var(--mdtUiText);
   color: var(--mdtHomeText);
   font-weight: 800;
   font-weight: 850;
   font-size: 1.4rem;
   font-size: 1.45rem;
   line-height: 1.1;
   line-height: 1.1;
   margin: 0;
   margin: 0;
}
}


body.skin-timeless .mdtHomeHeroSubtitle {
body.skin-timeless .mdtHome .mdtHomeHeroSubtitle {
   color: var(--mdtUiTextMut);
   color: var(--mdtHomeMut);
   margin-top: 0.35rem;
   margin-top: 0.35rem;
}
}


body.skin-timeless .mdtHomeHeroLinks {
body.skin-timeless .mdtHome .mdtHomeHeroLinks {
   margin-top: 0.75rem;
   margin-top: 0.75rem;
   display: flex;
   display: flex;
第486行: 第381行:
}
}


body.skin-timeless .mdtHomeHeroLinks a {
body.skin-timeless .mdtHome .mdtHomeHeroLinks a {
   display: inline-block;
   display: inline-block;
   padding: 0.45rem 0.8rem;
   padding: 0.42rem 0.85rem;
   border-radius: 10px;
   border-radius: 999px;
   border: 1px solid rgba(255, 255, 255, 0.14);
   border: 1px solid rgba(255, 255, 255, 0.14);
   background: rgba(0, 0, 0, 0.18);
   background: rgba(0, 0, 0, 0.18);
   color: var(--mdtUiText);
   color: var(--mdtHomeText) !important;
   text-decoration: none;
   text-decoration: none !important;
}
}


body.skin-timeless .mdtHomeHeroLinks a:hover {
body.skin-timeless .mdtHome .mdtHomeHeroLinks a:hover {
   border-color: rgba(0, 207, 160, 0.85);
   border-color: rgba(0, 207, 160, 0.85);
   background: rgba(0, 0, 0, 0.28);
   background: rgba(0, 0, 0, 0.28);
}
/* Sections */
body.skin-timeless .mdtHome .mdtHomeSection {
  padding: 1rem 1.1rem;
  margin-top: 1rem;
}
body.skin-timeless .mdtHome .mdtHomeSection h2 {
  margin-top: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
  color: var(--mdtHomeText);
}
body.skin-timeless .mdtHome .mdtHomeSection a {
  color: var(--mdtBrand2);
}
body.skin-timeless .mdtHome .mdtHomeSection a:visited {
  color: var(--mdtBrand);
}
/* Card grid */
body.skin-timeless .mdtHome .mdtHomeGrid {
  margin-top: 0.75rem;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 1rem;
}
/* Card: style the wiki-generated <a> (use [[Page|...]] in wikitext) */
body.skin-timeless .mdtHome .mdtCard > a {
  display: block;
  padding: 0.95rem 1rem;
  border: 1px solid var(--mdtHomeBorder);
  border-radius: 14px;
  background: var(--mdtHomeCard);
  color: var(--mdtHomeText) !important;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.22);
  transition: transform 0.12s ease, border-color 0.12s ease,
    background 0.12s ease;
}
body.skin-timeless .mdtHome .mdtCard > a:visited {
  color: var(--mdtHomeText) !important;
}
body.skin-timeless .mdtHome .mdtCard > a:hover {
  transform: translateY(-1px);
  border-color: rgba(0, 207, 160, 0.85);
  background: #353d44;
}
body.skin-timeless .mdtHome .mdtCardTitle {
  display: block;
  font-weight: 800;
  font-size: 1.05rem;
  line-height: 1.1;
}
body.skin-timeless .mdtHome .mdtCardDesc {
  display: block;
  margin-top: 0.35rem;
  color: var(--mdtHomeMut);
  font-size: 0.93rem;
}
}


@media (max-width: 720px) {
@media (max-width: 720px) {
   body.skin-timeless .mdtHomeHero {
   body.skin-timeless .mdtHome .mdtHomeHero {
     grid-template-columns: 1fr;
     grid-template-columns: 1fr;
     justify-items: start;
     justify-items: start;
   }
   }
}
}
/* ===== MDT Home v2:把棋盘格换成暗色面板纹理 ===== */
  body.skin-timeless .mdtHome .mdtPanel{
    position: relative;
    overflow: hidden;
    color: rgba(255,255,255,.92);
    background: linear-gradient(180deg, rgba(56,62,66,.96),
  rgba(17,20,22,.96)) !important;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    box-shadow: 0 12px 28px rgba(0,0,0,.28);
  }
  body.skin-timeless .mdtHome .mdtPanel::before{
    content:"";
    position:absolute;
    inset:0;
    background: url(/resources/assets/ui/block-dark-panel-3-ui.png) 0
  0 / 96px 96px repeat;
    opacity: .12;
    pointer-events:none;
  }
  body.skin-timeless .mdtHome .mdtPanel > *{ position: relative; }


  /* 强制移除旧的棋盘格背景 */
/* 可选:防止站点标题换行导致顶部栏变高、搜索下移 */
  body.skin-timeless .mdtHome .mdtHomeHero{
body.skin-timeless #p-logo-text {
    background-image: none !important;
  max-width: 42vw;
  }
}
body.skin-timeless .mdtHome .mdtHomeSection{
 
    padding: 1rem 1.1rem;
body.skin-timeless #p-logo-text #p-banner {
    margin-top: 1rem;
  max-width: 42vw;
   }
   overflow: hidden;
  body.skin-timeless .mdtHome .mdtHomeSection h2{
  white-space: nowrap;
    color: rgba(255,255,255,.92);
   text-overflow: ellipsis;
    border-bottom: 1px solid rgba(255,255,255,.14);
}
   }
  body.skin-timeless .mdtHome .mdtHomeSection a{ color:
  rgba(0,207,160,.95); }
  body.skin-timeless .mdtHome .mdtHomeSection a:visited{ color:
  rgba(0,175,137,.95); }


   body.skin-timeless .mdtHome .mdtHomeGrid{
@media (max-width: 720px) {
     margin-top: .75rem;
   body.skin-timeless #p-logo-text,
     display: grid;
  body.skin-timeless #p-logo-text #p-banner {
     grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
     max-width: none;
    gap: 1rem;
     overflow: visible;
     text-overflow: clip;
   }
   }
  body.skin-timeless .mdtHome .mdtCard{
}
    display:block;
    text-decoration:none !important;
    color: rgba(255,255,255,.92) !important;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    padding: .95rem 1rem;
    background: rgba(0,0,0,.18);
    box-shadow: 0 10px 22px rgba(0,0,0,.22);
    position: relative;
    overflow:hidden;
    transition: transform .12s ease, border-color .12s ease,
  background .12s ease;
  }
  body.skin-timeless .mdtHome .mdtCard::before{
    content:"";
    position:absolute;
    inset:0;
    background: url(/resources/assets/ui/block-dark-panel-3-ui.png) 0
  0 / 96px 96px repeat;
    opacity: .10;
    pointer-events:none;
  }
  body.skin-timeless .mdtHome .mdtCard > *{ position: relative; }
  body.skin-timeless .mdtHome .mdtCard:hover{
    transform: translateY(-1px);
    border-color: rgba(0,207,160,.85);
    background: rgba(0,0,0,.26);
  }
  body.skin-timeless .mdtHome .mdtCardTitle{ font-weight: 800; font-
  size: 1.05rem; line-height: 1.1; }
  body.skin-timeless .mdtHome .mdtCardDesc{ margin-top: .35rem; color:
  rgba(255,255,255,.68); font-size: .93rem; }

2026年1月9日 (五) 00:27的版本

/* MediaWiki:Timeless.css - Mindustry green header + MkDocs-ish sidebars */

body.skin-timeless {
  --mdtBrand: #00af89;
  --mdtBrand2: #00cfa0;
  --mdtHeaderFg: #ffffff;

  --mdtText: rgba(0, 0, 0, 0.87);
  --mdtTextMut: rgba(0, 0, 0, 0.55);
  --mdtHover: rgba(0, 0, 0, 0.06);

  --mdtSidebarW: 16rem;
  --mdtShadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.08),
    0 0 0.05rem rgba(0, 0, 0, 0.12);
}

/* ===== Header (Mindustry green) ===== */
body.skin-timeless #mw-header-container {
  background: var(--mdtBrand) !important;
  color: var(--mdtHeaderFg);
  box-shadow: var(--mdtShadow);
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

body.skin-timeless #mw-header {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: nowrap;
}

body.skin-timeless #mw-header .visualClear {
  display: none;
}

/* Site title (left) */
body.skin-timeless #p-logo-text {
  order: 1;
  flex: 0 0 auto;
  min-width: 0;
  max-width: none;
  position: static !important;
  text-align: left !important;
}

body.skin-timeless #p-logo-text #p-banner {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: inherit;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.1;
}

/* Hide sidebar logo; show a small icon next to title */
body.skin-timeless #mw-site-navigation #p-logo {
  display: none !important;
}

body.skin-timeless #p-logo-text #p-banner::before {
  content: '';
  width: 32px;
  height: 32px;
  background: url(/resources/assets/logo.jpg) center / cover no-repeat;
  border-radius: 8px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.22);
}

/* Search (right, smaller, dark like external wiki) */
body.skin-timeless #p-search {
  order: 2;
  margin-left: auto;
  flex: 0 1 13rem;
  min-width: 11rem;
  max-width: 22vw;
}

body.skin-timeless #p-search h3 {
  display: none;
}

body.skin-timeless #p-search form {
  margin: 0;
}

body.skin-timeless #mw-header-container #simpleSearch {
  display: flex;
  align-items: stretch;
  height: 2.2rem;
  width: 100%;
  background: rgba(0, 0, 0, 0.28) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 0.35rem !important;
  box-shadow: none !important;
  overflow: hidden;
}

body.skin-timeless #mw-header-container #simpleSearch:focus-within {
  background: rgba(0, 0, 0, 0.36) !important;
  border-color: rgba(255, 255, 255, 0.25) !important;
}

body.skin-timeless #mw-header-container #searchInput-container {
  flex: 1 1 auto;
}

body.skin-timeless #mw-header-container #searchInput {
  height: 100% !important;
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--mdtHeaderFg) !important;
  padding: 0.25rem 0.55rem !important;
}

body.skin-timeless #mw-header-container #searchInput::placeholder {
  color: rgba(255, 255, 255, 0.75) !important;
}

/* Hide both submit buttons (press Enter to search) */
body.skin-timeless #mw-header-container #mw-searchButton,
body.skin-timeless #mw-header-container #searchButton {
  display: none !important;
}

/* Account area on far right */
body.skin-timeless #user-tools {
  order: 3;
  flex: 0 0 auto;
  white-space: nowrap;
}

body.skin-timeless #mw-header a,
body.skin-timeless #mw-header a:visited {
  color: var(--mdtHeaderFg);
}

body.skin-timeless #mw-header .dropdown {
  color: rgba(0, 0, 0, 0.87);
}

body.skin-timeless #mw-header .dropdown a,
body.skin-timeless #mw-header .dropdown a:visited {
  color: #0645ad;
}

/* Header color bar -> solid Mindustry green */
body.skin-timeless #mw-header-hack {
  background: var(--mdtBrand) !important;
}

body.skin-timeless #mw-header-hack .color-left,
body.skin-timeless #mw-header-hack .color-middle,
body.skin-timeless #mw-header-hack .color-right {
  background: var(--mdtBrand) !important;
}

/* ===== Sidebars (left + right consistent) ===== */
body.skin-timeless #mw-site-navigation,
body.skin-timeless #mw-related-navigation {
  width: var(--mdtSidebarW) !important;
  flex: 0 0 var(--mdtSidebarW) !important;
}

body.skin-timeless #mw-site-navigation .sidebar-chunk,
body.skin-timeless #mw-related-navigation .sidebar-chunk {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0.25rem 0;
  margin: 0 0 1rem;
}

body.skin-timeless #mw-site-navigation .sidebar-chunk > h2,
body.skin-timeless #mw-related-navigation .sidebar-chunk > h2 {
  margin: 0.25rem 0.75rem 0.5rem;
  font-size: 0.8rem;
  letter-spacing: 0.06em;
  color: var(--mdtTextMut);
}

body.skin-timeless #mw-site-navigation .mw-portlet-body ul,
body.skin-timeless #mw-related-navigation .mw-portlet-body ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

body.skin-timeless #mw-site-navigation .mw-portlet-body a,
body.skin-timeless #mw-related-navigation .mw-portlet-body a {
  display: block;
  padding: 0.38rem 0.85rem;
  border-radius: 10px;
  text-decoration: none;
  color: var(--mdtText);
  box-shadow: inset 3px 0 0 transparent;
}

body.skin-timeless #mw-site-navigation .mw-portlet-body a:hover,
body.skin-timeless #mw-related-navigation .mw-portlet-body a:hover {
  background: var(--mdtHover);
  box-shadow: inset 3px 0 0 var(--mdtBrand2);
}

/* Desktop: sticky and scrollable sidebars */
@media (min-width: 1000px) {
  body.skin-timeless #mw-site-navigation,
  body.skin-timeless #mw-related-navigation {
    position: sticky;
    top: 4rem;
    align-self: flex-start;
    max-height: calc(100vh - 4rem);
    overflow-y: auto;
  }
}

/* Thin scrollbar like MkDocs */
body.skin-timeless #mw-site-navigation,
body.skin-timeless #mw-related-navigation {
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 207, 160, 0.85) transparent;
}

body.skin-timeless #mw-site-navigation::-webkit-scrollbar,
body.skin-timeless #mw-related-navigation::-webkit-scrollbar {
  width: 6px;
}

body.skin-timeless #mw-site-navigation::-webkit-scrollbar-track,
body.skin-timeless #mw-related-navigation::-webkit-scrollbar-track {
  background: transparent;
}

body.skin-timeless #mw-site-navigation::-webkit-scrollbar-thumb,
body.skin-timeless #mw-related-navigation::-webkit-scrollbar-thumb {
  background: rgba(0, 207, 160, 0.85);
  border-radius: 999px;
}

/* ===== Collapsible navigation (left) ===== */
body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavGroup {
  display: grid;
  grid-template-columns: 1fr 2rem;
  align-items: center;
  min-width: 0;
}

body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavGroup > a {
  min-width: 0;
}

body.skin-timeless #mw-site-navigation #p-navigation .mdtNavToggle {
  width: 2rem;
  height: 2rem;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: var(--mdtTextMut);
  border-radius: 10px;
}

body.skin-timeless #mw-site-navigation #p-navigation .mdtNavToggle:hover {
  background: var(--mdtHover);
}

body.skin-timeless #mw-site-navigation #p-navigation .mdtNavToggle::before {
  content: '\25B8';
  display: block;
  font-size: 18px;
  line-height: 1;
  transition: transform 0.15s ease;
}

body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavOpen > .mdtNavToggle::before {
  transform: rotate(90deg);
}

body.skin-timeless #mw-site-navigation #p-navigation .mdtNavSublist {
  grid-column: 1 / -1;
  list-style: none;
  margin: 0.15rem 0 0.4rem;
  padding: 0 0 0 0.85rem;
  border-left: 1px solid rgba(0, 0, 0, 0.08);
  display: none;
}

body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavOpen > .mdtNavSublist {
  display: block;
}

body.skin-timeless #mw-site-navigation #p-navigation .mdtNavSublist a {
  font-size: 0.92em;
  padding: 0.32rem 0.85rem;
}

body.skin-timeless #mw-site-navigation #p-navigation a.mdtNavActive {
  color: var(--mdtBrand) !important;
  background: rgba(0, 175, 137, 0.12) !important;
  box-shadow: inset 3px 0 0 var(--mdtBrand) !important;
}

/* Page title underline -> green */
body.skin-timeless .mw-body h1.firstHeading {
  border-bottom-color: var(--mdtBrand) !important;
}

/* Small screens: search wraps */
@media (max-width: 720px) {
  body.skin-timeless #mw-header {
    flex-wrap: wrap;
  }

  body.skin-timeless #p-search {
    flex: 1 1 100%;
    max-width: none;
    margin-left: 0;
  }
}

/* ===== Homepage (mdtHome): pure color Mindustry-style panels ===== */
body.skin-timeless .mdtHome {
  --mdtHomePanel: #252a2e;
  --mdtHomeCard: #2d343a;
  --mdtHomeBorder: rgba(255, 255, 255, 0.12);
  --mdtHomeText: rgba(255, 255, 255, 0.92);
  --mdtHomeMut: rgba(255, 255, 255, 0.68);
}

body.skin-timeless .mdtHome .mdtPanel {
  background: var(--mdtHomePanel) !important;
  border: 1px solid var(--mdtHomeBorder);
  color: var(--mdtHomeText);
}

/* Kill any older texture overlays you may have pasted before */
body.skin-timeless .mdtHome .mdtPanel::before,
body.skin-timeless .mdtHome .mdtCard::before {
  content: none !important;
}

/* Hero */
body.skin-timeless .mdtHome .mdtHomeHero {
  padding: 1rem 1.1rem;
  display: grid;
  grid-template-columns: 4.75rem 1fr;
  gap: 1rem;
  align-items: center;
  background-image: none !important;
}

body.skin-timeless .mdtHome .mdtHomeHeroLogo {
  width: 72px;
  height: 72px;
  border-radius: 12px;
  background: url(/resources/assets/ui/alphaaaa.png) center / contain no-repeat;
  image-rendering: pixelated;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.16);
}

body.skin-timeless .mdtHome .mdtHomeHeroTitle {
  color: var(--mdtHomeText);
  font-weight: 850;
  font-size: 1.45rem;
  line-height: 1.1;
  margin: 0;
}

body.skin-timeless .mdtHome .mdtHomeHeroSubtitle {
  color: var(--mdtHomeMut);
  margin-top: 0.35rem;
}

body.skin-timeless .mdtHome .mdtHomeHeroLinks {
  margin-top: 0.75rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

body.skin-timeless .mdtHome .mdtHomeHeroLinks a {
  display: inline-block;
  padding: 0.42rem 0.85rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(0, 0, 0, 0.18);
  color: var(--mdtHomeText) !important;
  text-decoration: none !important;
}

body.skin-timeless .mdtHome .mdtHomeHeroLinks a:hover {
  border-color: rgba(0, 207, 160, 0.85);
  background: rgba(0, 0, 0, 0.28);
}

/* Sections */
body.skin-timeless .mdtHome .mdtHomeSection {
  padding: 1rem 1.1rem;
  margin-top: 1rem;
}

body.skin-timeless .mdtHome .mdtHomeSection h2 {
  margin-top: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
  color: var(--mdtHomeText);
}

body.skin-timeless .mdtHome .mdtHomeSection a {
  color: var(--mdtBrand2);
}

body.skin-timeless .mdtHome .mdtHomeSection a:visited {
  color: var(--mdtBrand);
}

/* Card grid */
body.skin-timeless .mdtHome .mdtHomeGrid {
  margin-top: 0.75rem;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 1rem;
}

/* Card: style the wiki-generated <a> (use [[Page|...]] in wikitext) */
body.skin-timeless .mdtHome .mdtCard > a {
  display: block;
  padding: 0.95rem 1rem;
  border: 1px solid var(--mdtHomeBorder);
  border-radius: 14px;
  background: var(--mdtHomeCard);
  color: var(--mdtHomeText) !important;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.22);
  transition: transform 0.12s ease, border-color 0.12s ease,
    background 0.12s ease;
}

body.skin-timeless .mdtHome .mdtCard > a:visited {
  color: var(--mdtHomeText) !important;
}

body.skin-timeless .mdtHome .mdtCard > a:hover {
  transform: translateY(-1px);
  border-color: rgba(0, 207, 160, 0.85);
  background: #353d44;
}

body.skin-timeless .mdtHome .mdtCardTitle {
  display: block;
  font-weight: 800;
  font-size: 1.05rem;
  line-height: 1.1;
}

body.skin-timeless .mdtHome .mdtCardDesc {
  display: block;
  margin-top: 0.35rem;
  color: var(--mdtHomeMut);
  font-size: 0.93rem;
}

@media (max-width: 720px) {
  body.skin-timeless .mdtHome .mdtHomeHero {
    grid-template-columns: 1fr;
    justify-items: start;
  }
}

/* 可选:防止站点标题换行导致顶部栏变高、搜索下移 */
body.skin-timeless #p-logo-text {
  max-width: 42vw;
}

body.skin-timeless #p-logo-text #p-banner {
  max-width: 42vw;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

@media (max-width: 720px) {
  body.skin-timeless #p-logo-text,
  body.skin-timeless #p-logo-text #p-banner {
    max-width: none;
    overflow: visible;
    text-overflow: clip;
  }
}