MediaWiki:Timeless.css:修订间差异

来自Mindustry中文wiki
无编辑摘要
无编辑摘要
第1行: 第1行:
  /* MediaWiki:Timeless.css - Mindustry green header + clean sidebars */
/* MediaWiki:Timeless.css - Mindustry green header + MkDocs-ish
   body.skin-timeless{
  sidebars */
     --mdt-brand:#00af89;       /* Mindustry 风格绿 */
 
     --mdt-brand-fg:#fff;
   body.skin-timeless {
     --mdt-accent:#00cfa0;
     --mdtBrand: #00af89;
     --mdt-shadow:0 .2rem .5rem rgba(0,0,0,.08),0 0 .05rem
     --mdtBrand2: #00cfa0;
  rgba(0,0,0,.12);
    --mdtHeaderFg: #ffffff;
    --mdt-sidebar-w:16rem;
 
    --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{
   body.skin-timeless #mw-header-container {
     background:var(--mdt-brand) !important;
     background: var(--mdtBrand) !important;
     color:var(--mdt-brand-fg);
     color: var(--mdtHeaderFg);
     box-shadow:var(--mdt-shadow);
     box-shadow: var(--mdtShadow);
     border-bottom:1px solid rgba(0,0,0,.12);
     border-bottom: 1px solid rgba(0, 0, 0, 0.12);
   }
   }
  body.skin-timeless #mw-header-hack,
  body.skin-timeless #mw-header-nav-hack{display:none !important;}


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


  /* 左侧站点标题参与 flex(避免错位) */
   body.skin-timeless #mw-header .visualClear {
   body.skin-timeless #p-logo-text{
     display: none;
     position:static !important;
    min-width:0 !important;
    max-width:none !important;
    order:1;
    flex:0 0 auto;
    text-align:left !important;
   }
   }
   body.skin-timeless #p-logo-text #p-banner{
 
     display:flex;
  /* Site title (left) */
     align-items:center;
   body.skin-timeless #p-logo-text {
     gap:.5rem;
     order: 1;
    color:inherit;
     flex: 0 0 auto;
     text-decoration:none;
     min-width: 0;
     font-weight:700;
     max-width: none;
     letter-spacing:.02em;
     position: static !important;
    line-height:1;
     text-align: left !important;
   }
   }


  /* ===== 左侧大图标挪到顶部:隐藏侧栏 logo,用标题前图标代替 ===== */
   body.skin-timeless #p-logo-text #p-banner {
   body.skin-timeless #mw-site-navigation #p-logo{display:none !
    display: flex;
  important;}
    align-items: center;
  body.skin-timeless #p-logo-text #p-banner::before{
     gap: 0.5rem;
     content:'';
     color: inherit;
     width:32px;
     text-decoration: none;
     height:32px;
     font-weight: 700;
     background:url(/resources/assets/logo.jpg) center/cover no-repeat;
     letter-spacing: 0.02em;
     border-radius:8px;
     line-height: 1.1;
     box-shadow:0 0 0 1px rgba(255,255,255,.22);
   }
   }


   /* ===== 搜索框:宽度减半 + 输入框深色 ===== */
   /* Hide sidebar logo; show a small icon next to title */
   body.skin-timeless #p-search{
   body.skin-timeless #mw-site-navigation #p-logo {
    order:2;
     display: none !important;
    margin-left:auto;
    flex:0 1 13rem;    /* 26rem -> 13rem(约减半) */
    min-width:12rem;
    max-width:22vw;
  }
  body.skin-timeless #p-search h3{display:none;}
  body.skin-timeless #simpleSearch{
     display:flex;
    align-items:center;
    gap:.5rem;
  }
  body.skin-timeless #searchInput{
    width:100%;
    border:0;
    border-radius:999px;
    padding:.35rem .75rem;
    background:rgba(0,0,0,.28); /* 外网那种“深色”质感 */
    color:var(--mdt-brand-fg);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);
  }
  body.skin-timeless
  #searchInput::placeholder{color:rgba(255,255,255,.75);}
  body.skin-timeless #searchInput:focus{
    outline:none;
    background:rgba(0,0,0,.36);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);
   }
   }
  body.skin-timeless #mw-searchButton,
  body.skin-timeless #searchButton{
    border:0;
    background:transparent;
    color:var(--mdt-brand-fg);
    padding:.25rem .5rem;
    border-radius:8px;
  }
  body.skin-timeless #mw-searchButton:hover,
  body.skin-timeless #searchButton:hover{background:rgba(0,0,0,.12);}


  /* 账号区贴右侧 */
   body.skin-timeless #p-logo-text #p-banner::before {
   body.skin-timeless #user-tools{
     content: '';
     order:3;
     width: 32px;
     flex:0 0 auto;
    height: 32px;
     white-space:nowrap;
    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 #mw-header a,
   body.skin-timeless #p-search {
  body.skin-timeless #mw-header a:visited{color:var(--mdt-brand-fg);}
    order: 2;
  body.skin-timeless #mw-header .dropdown{color:rgba(0,0,0,.87);}
    margin-left: auto;
  body.skin-timeless #mw-header .dropdown a,
    flex: 0 1 13rem;
  body.skin-timeless #mw-header .dropdown a:visited{color:#0645ad;}
    min-width: 11rem;
 
     max-width: 22vw;
  /* ===== 左/右侧导航统一风格(右侧变得和左侧一样“干净”) ===== */
  body.skin-timeless #mw-site-navigation,
  body.skin-timeless #mw-related-navigation{
    width:var(--mdt-sidebar-w) !important;
     flex:0 0 var(--mdt-sidebar-w) !important;
   }
   }


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


   body.skin-timeless #mw-site-navigation .sidebar-chunk>h2,
   body.skin-timeless #p-search form {
  body.skin-timeless #mw-related-navigation .sidebar-chunk>h2{
     margin: 0;
     margin:.25rem .75rem .5rem;
    font-size:.8rem;
    letter-spacing:.06em;
    color:rgba(0,0,0,.55);
   }
   }


   body.skin-timeless #mw-site-navigation .mw-portlet-body ul,
   body.skin-timeless #mw-header-container #simpleSearch {
  body.skin-timeless #mw-related-navigation .mw-portlet-body ul{
    display: flex;
     list-style:none;
    align-items: stretch;
     margin:0;
    height: 2.2rem;
     padding:0;
    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-site-navigation .mw-portlet-body a,
   body.skin-timeless #mw-header-container #simpleSearch:focus-within {
  body.skin-timeless #mw-related-navigation .mw-portlet-body a{
     background: rgba(0, 0, 0, 0.36) !important;
     display:block;
     border-color: rgba(255, 255, 255, 0.25) !important;
    padding:.38rem .85rem;
    border-radius:10px;
    text-decoration:none;
    color:rgba(0,0,0,.87);
     box-shadow:inset 3px 0 0 transparent;
   }
   }


   body.skin-timeless #mw-site-navigation .mw-portlet-body a:hover,
   body.skin-timeless #mw-header-container #searchInput-container {
  body.skin-timeless #mw-related-navigation .mw-portlet-body a:hover{
     flex: 1 1 auto;
     background:rgba(0,0,0,.06);
    box-shadow:inset 3px 0 0 var(--mdt-accent);
   }
   }


   /* 桌面端:两侧栏都可滚动/跟随 */
   body.skin-timeless #mw-header-container #searchInput {
  @media (min-width:1000px){
    height: 100% !important;
    body.skin-timeless #mw-site-navigation,
     width: 100% !important;
     body.skin-timeless #mw-related-navigation{
    background: transparent !important;
      position:sticky;
    border: 0 !important;
      top:4rem;
    box-shadow: none !important;
      align-self:flex-start;
    color: var(--mdtHeaderFg) !important;
      max-height:calc(100vh - 4rem);
    padding: 0.25rem 0.55rem !important;
      overflow-y:auto;
    }
   }
   }


  /* 你截图里“首页”下面那条蓝线 -> 绿 */
   body.skin-timeless #mw-header-container #searchInput::placeholder {
   body.skin-timeless .mw-body h1.firstHeading{
     color: rgba(255, 255, 255, 0.75) !important;
     border-bottom-color:var(--mdt-brand) !important;
   }
   }


   /* 小屏:搜索换行 */
   /* Hide both submit buttons (press Enter to search) */
   @media (max-width:720px){
   body.skin-timeless #mw-header-container #mw-searchButton,
    body.skin-timeless #mw-header{flex-wrap:wrap;}
  body.skin-timeless #mw-header-container #searchButton {
    body.skin-timeless #p-search{
    display: none !important;
      flex:1 1 100%;
      max-width:none;
      margin-left:0;
    }
   }
   }
/* ===== 顶部搜索:外网那种深色 + 填充满(改的是 #simpleSearch 不是
  #searchInput) ===== */
  body.skin-timeless #user-tools{ margin-left:auto; } /* 账号贴最右 */


   body.skin-timeless #p-search{
  /* Account area on far right */
     flex:0 1 13rem;     /* 宽度约减半:想更小就改 11rem/12rem */
   body.skin-timeless #user-tools {
     min-width:12rem;
     order: 3;
     max-width:22vw;
     flex: 0 0 auto;
    margin:0 1rem;
     white-space: nowrap;
   }
   }


   body.skin-timeless #mw-header-container #simpleSearch{
   body.skin-timeless #mw-header a,
     background:rgba(0,0,0,.28) !important;  /* 外网那种深色半透明 */
  body.skin-timeless #mw-header a:visited {
    border:1px solid rgba(255,255,255,.14) !important;
     color: var(--mdtHeaderFg);
    box-shadow:none !important;
    border-radius:.35rem !important;        /* 外网是小圆角,不是大胶
  囊 */
    height:2.4em;
    width:100%;
   }
   }


   body.skin-timeless #mw-header-container #searchInput{
   body.skin-timeless #mw-header .dropdown {
    height:100% !important;
     color: rgba(0, 0, 0, 0.87);
    width:100% !important;
    background:transparent !important;      /* 关键:让深色“填充满”容
  器 */
     color:#fff !important;
    box-shadow:none !important;
    border-radius:0 !important;
    padding:.25em .75em .25em 2.25em !important; /* 给左侧放放大镜留空
  间 */
   }
   }


   body.skin-timeless #mw-header-container #searchInput::placeholder{
   body.skin-timeless #mw-header .dropdown a,
     color:rgba(255,255,255,.75) !important;
  body.skin-timeless #mw-header .dropdown a:visited {
     color: #0645ad;
   }
   }


   /* 放大镜移到左侧,并变成白色(Timeless 默认在右侧且是深色图标) */
   /* Header color bar -> solid Mindustry green */
   body.skin-timeless #mw-header-container #mw-searchButton{
   body.skin-timeless #mw-header-hack {
     left:.15em !important;
     background: var(--mdtBrand) !important;
    right:auto !important;
    top:0 !important;
    height:100% !important;
    width:2.25em !important;
    background-position:center !important;
    filter:invert(1) brightness(1.2);
    opacity:.9;
   }
   }
  body.skin-timeless #mw-header-container #searchButton{ display:none !
  important; } /* 避免两个按钮叠一起 */
/* === FIX: 搜索回到右侧 + 减少左侧空白 === */
  body.skin-timeless #user-tools{ margin-left:0 !important; }


   @media (min-width:721px){
   body.skin-timeless #mw-header-hack .color-left,
    body.skin-timeless #mw-header #p-search{
  body.skin-timeless #mw-header-hack .color-middle,
      margin:0 1rem 0 auto !important; /* 右对齐 */
  body.skin-timeless #mw-header-hack .color-right {
      flex:0 1 13rem !important;
    background: var(--mdtBrand) !important;
      max-width:22vw !important;
    }
   }
   }


   body.skin-timeless #mw-header-container #mw-searchButton{
  /* ===== Sidebars (left + right consistent) ===== */
     left:.35em !important;
   body.skin-timeless #mw-site-navigation,
     right:auto !important;
  body.skin-timeless #mw-related-navigation {
    width:1.8em !important; /* 缩小图标占位 */
     width: var(--mdtSidebarW) !important;
     flex: 0 0 var(--mdtSidebarW) !important;
   }
   }


   body.skin-timeless #mw-header-container #searchInput{
   body.skin-timeless #mw-site-navigation .sidebar-chunk,
    padding-left:1.9em !important; /* 文字更靠左 */
   body.skin-timeless #mw-related-navigation .sidebar-chunk {
  }
     background: transparent;
* ===== Sidebar tree (MkDocs-ish) ===== */
    border: 0;
   body.skin-timeless
    box-shadow: none;
  #mw-site-navigation
     padding: 0.25rem 0;
  #p-navigation
    margin: 0 0 1rem;
  .mw-portlet-body > ul{
     margin:0;
     padding:0;
   }
   }


   body.skin-timeless
   body.skin-timeless #mw-site-navigation .sidebar-chunk > h2,
  #mw-site-navigation
   body.skin-timeless #mw-related-navigation .sidebar-chunk > h2 {
   #p-navigation
     margin: 0.25rem 0.75rem 0.5rem;
  li.mdt-nav__group{
     font-size: 0.8rem;
     display:grid;
     letter-spacing: 0.06em;
     grid-template-columns:1fr auto;
     color: var(--mdtTextMut);
     align-items:center;
     min-width:0;
   }
   }


   body.skin-timeless
   body.skin-timeless #mw-site-navigation .mw-portlet-body ul,
  #mw-site-navigation
   body.skin-timeless #mw-related-navigation .mw-portlet-body ul {
   #p-navigation
     list-style: none;
  .mdt-nav__toggle{
     margin: 0;
     width:2rem;
     padding: 0;
    height:2rem;
     margin-right:.25rem;
    border:0;
     background:transparent;
    color:rgba(0,0,0,.55);
    cursor:pointer;
    border-radius:10px;
   }
   }


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


   body.skin-timeless
   body.skin-timeless #mw-site-navigation .mw-portlet-body a:hover,
  #mw-site-navigation
   body.skin-timeless #mw-related-navigation .mw-portlet-body a:hover {
   #p-navigation
     background: var(--mdtHover);
  .mdt-nav__toggle::before{
     box-shadow: inset 3px 0 0 var(--mdtBrand2);
     content:'›';
     display:block;
    font-size:20px;
    line-height:2rem;
    transition:transform .15s ease;
   }
   }


   body.skin-timeless
   /* Desktop: sticky and scrollable sidebars */
  #mw-site-navigation
  @media (min-width: 1000px) {
  #p-navigation
    body.skin-timeless #mw-site-navigation,
  li.mdt-nav__group.mdt-nav__group--open
    body.skin-timeless #mw-related-navigation {
  > .mdt-nav__toggle::before{
      position: sticky;
     transform:rotate(90deg);
      top: 4rem;
      align-self: flex-start;
      max-height: calc(100vh - 4rem);
      overflow-y: auto;
     }
   }
   }


   body.skin-timeless
  /* Thin scrollbar like MkDocs */
  #mw-site-navigation
   body.skin-timeless #mw-site-navigation,
   #p-navigation
   body.skin-timeless #mw-related-navigation {
  .mdt-nav__sublist{
     scrollbar-width: thin;
     grid-column:1/-1;
     scrollbar-color: rgba(0, 207, 160, 0.85) transparent;
     list-style:none;
    margin:.15rem 0 .35rem;
    padding:0 0 0 .75rem;
    border-left:1px solid rgba(0,0,0,.08);
    display:none;
   }
   }


   body.skin-timeless
   body.skin-timeless #mw-site-navigation::-webkit-scrollbar,
  #mw-site-navigation
   body.skin-timeless #mw-related-navigation::-webkit-scrollbar {
  #p-navigation
     width: 6px;
   li.mdt-nav__group.mdt-nav__group--open
  > .mdt-nav__sublist{
     display:block;
   }
   }


   body.skin-timeless
   body.skin-timeless #mw-site-navigation::-webkit-scrollbar-track,
  #mw-site-navigation
   body.skin-timeless #mw-related-navigation::-webkit-scrollbar-track {
  #p-navigation
     background: transparent;
   a.mdt-nav__link--active{
    color:var(--mdt-brand) !important;
     background:rgba(0,175,137,.10) !important;
    box-shadow:inset 3px 0 0 var(--mdt-brand) !important;
   }
   }


  /* 右侧细滚动条(有溢出才会出现) */
   body.skin-timeless #mw-site-navigation::-webkit-scrollbar-thumb,
   body.skin-timeless
   body.skin-timeless #mw-related-navigation::-webkit-scrollbar-thumb {
  #mw-site-navigation{
     background: rgba(0, 207, 160, 0.85);
    scrollbar-width:thin;
     border-radius: 999px;
    scrollbar-color:rgba(0,207,160,.85) transparent;
  }
  body.skin-timeless
  #mw-site-navigation::-webkit-scrollbar{width:6px}
  body.skin-timeless
  #mw-site-navigation::-webkit-scrollbar-track{background:transparent}
   body.skin-timeless
  #mw-site-navigation::-webkit-scrollbar-thumb{
     background:rgba(0,207,160,.85);
     border-radius:999px;
   }
   }
/* ===== Sidebar tree (mdtNav*) ===== */


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


   body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavGroup{
   body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavGroup >
    display:grid;
  a {
    grid-template-columns:1fr 2rem;
     min-width: 0;
    align-items:center;
     min-width:0;
   }
   }


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


  body.skin-timeless #mw-site-navigation #p-navigation .mdtNavToggle{
    width:2rem;
    height:2rem;
    border:0;
    background:transparent;
    cursor:pointer;
    color:rgba(0,0,0,.55);
    border-radius:10px;
  }
   body.skin-timeless #mw-site-navigation #p-
   body.skin-timeless #mw-site-navigation #p-
   navigation .mdtNavToggle:hover{
   navigation .mdtNavToggle:hover {
     background:rgba(0,0,0,.06);
     background: var(--mdtHover);
   }
   }
   body.skin-timeless #mw-site-navigation #p-
   body.skin-timeless #mw-site-navigation #p-
   navigation .mdtNavToggle::before{
   navigation .mdtNavToggle::before {
     content:'';
     content: '\25B8';
     display:block;
     display: block;
     font-size:20px;
     font-size: 18px;
     line-height:1;
     line-height: 1;
     transition:transform .15s ease;
     transition: transform 0.15s ease;
   }
   }
   body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavOpen
   body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavOpen
   > .mdtNavToggle::before{
   > .mdtNavToggle::before {
     transform:rotate(90deg);
     transform: rotate(90deg);
   }
   }


   body.skin-timeless #mw-site-navigation #p-navigation .mdtNavSublist{
   body.skin-timeless #mw-site-navigation #p-navigation .mdtNavSublist {
     grid-column:1 / -1;
     grid-column: 1 / -1;
     list-style:none;
     list-style: none;
     margin:.15rem 0 .4rem;
     margin: 0.15rem 0 0.4rem;
     padding:0 0 0 .8rem;
     padding: 0 0 0 0.85rem;
     border-left:1px solid rgba(0,0,0,.08);
     border-left: 1px solid rgba(0, 0, 0, 0.08);
     display:none;
     display: none;
   }
   }
   body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavOpen
   body.skin-timeless #mw-site-navigation #p-navigation li.mdtNavOpen
   > .mdtNavSublist{
   > .mdtNavSublist {
     display:block;
     display: block;
   }
   }
   body.skin-timeless #mw-site-navigation #p-navigation .mdtNavSublist a{
 
     font-size:.92em;
   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{
   body.skin-timeless #mw-site-navigation #p-navigation a.mdtNavActive {
     color:var(--mdt-brand) !important;
     color: var(--mdtBrand) !important;
     background:rgba(0,175,137,.12) !important;
     background: rgba(0, 175, 137, 0.12) !important;
     box-shadow:inset 3px 0 0 var(--mdt-brand) !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;
    }
   }
   }

2026年1月8日 (四) 15:32的版本

 /* 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;
    }
  }