MediaWiki:Common.css:修订间差异

来自Age Of History 2 Chinese Wiki
跳转至:导航、​搜索
无编辑摘要
无编辑摘要
 
(未显示同一用户的60个中间版本)
第1行: 第1行:
/* 基础变量和字体设置 */
/* 这里放置的CSS将应用于所有皮肤 */
@import url("https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap");
@import url("https://fastly.jsdelivr.net/gh/hoah2333/Fonts@main/Typeface-VonwaonBitmap-16px.css");
@import url("https://fastly.jsdelivr.net/gh/hoah2333/Fonts@main/Typeface-VonwaonBitmap-12px.css");
@import url("https://fonts.googleapis.com/css2?family=Microsoft+Sans+Serif&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap");
@import url("https://fastly.jsdelivr.net/gh/hoah2333/Fonts@main/Typeface-VonwaonBitmap-16px.css");
@import url("https://fastly.jsdelivr.net/gh/hoah2333/Fonts@main/Typeface-VonwaonBitmap-12px.css");
@import url('https://fonts.googleapis.com/css2?family=VT323&display=swap');
 
 
:root {
:root {
    /* 从Wikidot Database New主题迁移的变量 */
--link-color: #0645ad;
    --fade-in-delay: 0.1s;
--link-color-active: #faa700;
    --theme-base: "black-highlighter";
--custom-background-blue: #ccf;
    --theme-id: "windows-xp";
--custom-background-cyan: #cef;
    --theme-name: "Windows XP";
--custom-background-green: #cfc;
--custom-background-gray: #d2d2d2;
--custom-background-grey: var(--custom-background-gray);
--custom-background-magenta: #fdf;
--custom-background-orange: #fdb;
--custom-background-purple: #ecf;
--custom-background-red: #fcc;
--custom-background-yellow: #ffc;
--custom-border-blue: #36e;
--custom-border-cyan: #9df;
--custom-border-green: #5d5;
--custom-border-gray: #bbb;
--custom-border-grey: var(--custom-border-gray);
--custom-border-magenta: #f9f;
--custom-border-orange: #f90;
--custom-border-purple: #96c;
--custom-border-red: #e44;
--custom-border-yellow: #fc3;
--custom-closed-topic-neutral: #eef;
--custom-closed-topic-no: #fee;
--custom-closed-topic-yes: #efe;
--custom-code-background: #f8f9fa;
--custom-load-page-button-color: #fff8;
--custom-main-page-background: #fcfcfc;
--custom-main-page-border: var(--custom-border-gray);
--custom-main-page-edition-subheader: #333;
--custom-mcwiki-header-color: #bcd4f5;
--custom-navbox-background: #fff;
--custom-navbox-top: #ccc;
--custom-navbox-middle: #ddd;
--custom-navbox-thru: #eee;
--custom-nbt-inherit-color: #e6e6fa;
--custom-table-background: #f8f9fa;
--custom-table-alternate-background: #f0f1f2;
--custom-table-choice-always: #003600;
--custom-table-choice-always-background: #80d080;
--custom-table-choice-default: #fff;
--custom-table-choice-in-off-background: #060;
--custom-table-choice-in-on-background: #0c0;
--custom-table-choice-na: #000;
--custom-table-choice-na-background: #fff;
--custom-table-choice-neutral: #634800;
--custom-table-choice-neutral-background: #ffeb9c;
--custom-table-choice-never: #3c0404;
--custom-table-choice-never-background: #ff8080;
--custom-table-choice-no: #840606;
--custom-table-choice-no-background: #ffc7ce;
--custom-table-choice-out-off-background: #900;
--custom-table-choice-out-on-background: #f00;
--custom-table-choice-partial: #665400;
--custom-table-choice-partial-background: #ffd;
--custom-table-choice-planned: #0131b7;
--custom-table-choice-planned-background: #dfdfff;
--custom-table-choice-rarely: #533400;
--custom-table-choice-rarely-background: #fdce5e;
--custom-table-choice-unknown: #222;
--custom-table-choice-unknown-background: #ccc;
--custom-table-choice-yes: #005600;
--custom-table-choice-yes-background: #c6efce;
--custom-table-header-background: #eaecf0;
--custom-topic-30-days: #bbb;
--custom-topic-7-days: #ddd;
      
      
     /* 字体设置 - 使用Database主题的字体和Windows XP字体 */
 
     /* 字体设置 - 保持原有字体 */
     --body-font: "VonwaonBitmap 16px", VT323, monospace;
     --body-font: "VonwaonBitmap 16px", VT323, monospace;
     --header-font: "VonwaonBitmap 16px", VT323, monospace;
     --header-font: "VonwaonBitmap 16px", VT323, monospace;
第14行: 第86行:
     --pixel-font-16: 'VonwaonBitmap 16px', VT323, monospace;
     --pixel-font-16: 'VonwaonBitmap 16px', VT323, monospace;
     --pixel-font-12: 'VonwaonBitmap 12px', VT323, monospace;
     --pixel-font-12: 'VonwaonBitmap 12px', VT323, monospace;
     --base-font-size: 14px; /* 从1.2rem改为14px */
     --base-font-size: 14px;
    --text-shadow: 2px 2px #C9781E;
 
   
    /* 颜色方案 - Windows XP主题颜色 */
    --white-monochrome: 255, 255, 255;
    --pale-gray-monochrome: 240, 240, 240;
    --light-gray-monochrome: 192, 192, 192;
    --gray-monochrome: 128, 128, 128;
    --black-monochrome: 0, 0, 0;
   
    /* XP系统蓝色 */
    --xp-blue: 53, 165, 225;
    --xp-darker-blue: 0, 85, 170;
   
    /* XP系统绿色 */
    --xp-green: 48, 131, 51;
    --xp-bright-green: 76, 169, 28;
   
    /* XP系统橙色 - 保留原主题色 */
    --bright-accent: 229, 140, 36;
    --medium-accent: 180, 110, 28;
    --dark-accent: 140, 85, 22;
    --pale-accent: 229, 170, 112;
   
    /* 主题颜色 */
    --swatch-background: var(--black-monochrome);
    --swatch-primary: var(--bright-accent);
    --swatch-primary-darker: var(--medium-accent);
    --swatch-primary-darkest: var(--black-monochrome);
    --swatch-text-dark: var(--bright-accent);
    --swatch-text-light: var(--white-monochrome);
    --swatch-important-text: var(--bright-accent);
    --swatch-menubg-color: var(--black-monochrome);
    --swatch-menubg-light-color: var(--dark-gray-monochrome);
    --swatch-menubg-medium-color: var(--medium-accent);
    --swatch-menubg-medium-dark-color: var(--gray-monochrome);
    --swatch-menubg-dark-color: var(--dark-gray-monochrome);
    --swatch-menubg-black-color: var(--black-monochrome);
    --swatch-menubg-hover-color: var(--black-monochrome);
    --swatch-menutxt-dark-color: var(--white-monochrome);
    --swatch-menutxt-light-color: var(--white-monochrome);
    --swatch-border-color: var(--bright-accent);
    --swatch-headerh1-color: var(--white-monochrome);
    --swatch-headerh2-color: var(--white-monochrome);
    --swatch-topmenu-border-color: var(--bright-accent);
    --swatch-topmenu-bg-color: var(--black-monochrome);
   
    /* 链接颜色 */
    --link-color: rgb(var(--xp-blue));
    --visited-link-color: rgb(var(--xp-darker-blue));
    --hover-link-color: rgb(var(--bright-accent));
    --sidebar-links-text: var(--swatch-menutxt-dark-color);
    --link-color-bright: var(--medium-accent);
   
    /* 评分模块颜色 */
    --rating-module-button-color: var(--bright-accent);
    --rating-module-text-color: var(--white-monochrome);
    --rating-module-text-hover-color: var(--swatch-menutxt-light-color);
   
    /* XP风格窗口属性 */
    --xp-window-border: 1px solid rgb(var(--bright-accent));
    --xp-window-header: linear-gradient(to bottom, rgb(0, 132, 198), rgb(0, 102, 170));
    --xp-window-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
   
    /* 其他 */
    --gradient-header: var(--xp-window-header);
    --diagonal-stripes: none;
}
}
 
/* 应用全局字体 */
/* 应用全局字体和背景 */
body {
body {
     font-family: var(--body-font) !important;
     font-family: var(--body-font) !important;
     font-size: var(--base-font-size) !important;
     font-size: var(--base-font-size) !important;
     line-height: 1.5 !important;
     line-height: 1.5 !important;
    background-color: rgb(var(--black-monochrome));
 
    color: rgb(var(--swatch-text-dark));
     background-image: url("/aoh2wiki/images/b/be/Microsoft_Nostalgic_Windows_Wallpaper_4k.jpg");
     background-image: url("");
     background-size: cover;
     background-size: cover;
     background-position: center;
     background-position: center;
     background-repeat: no-repeat;
     background-repeat: no-repeat;
     background-attachment: fixed !important;
     background-attachment: fixed;
    color: rgb(var(--xp-text));
}
 
  .notaninfobox {
position: relative;
clear: right;
margin: 0 0 1em 1em;
width: 350px;
font-size: 90%;
background-color: var(--custom-table-background);
float: right;
border: 1px solid var(--custom-border-gray);
padding: 2px;
overflow: auto;
z-index: 1;
overflow-wrap: anywhere;
}
@media all and (max-width: 511px) {
.notaninfobox {
float: none;
margin-left: 0;
width: auto;
}
}
}


/* 标题字体 */
.infobox tr:not(:first-child) td {
h1, h2, h3, h4, h5, h6, #firstHeading {
     border-bottom: 1px solid #ddd;
     font-family: var(--title-font);
}
    color: rgb(var(--swatch-headerh1-color));
@media all and (max-width: 337px) {
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
.notaninfobox {
margin-left: -16px;
margin-right: -16px;
border-left: none;
border-right: none;
}
}
}


/* 链接样式 - 保留 > 符号 */
.notaninfobox > .infobox-title {
a {
font-weight: bold;
    color: rgb(var(--xp-blue));
text-align: center;
    text-decoration: none;
font-size: 120%;
background-color: #BCD4F5;
}
.infobox-imagearea {
text-align: center;
padding: 4px;
}
.infobox-imagearea > div:not(:first-child) {
padding-top: 1em;
}
/* Horizontally centre animated images */
.infobox-imagearea .animated {
display: inline-flex;
align-items: center;
}
}


a:visited {
.notaninfobox .infobox-rows {
    color: rgb(var(--xp-darker-blue));
display: grid;
grid-template-columns: max-content 1fr;
gap: 1px;
}
}
 
.infobox .plainlinks a {
a:hover {
     color: #0000EE !important;
     color: rgb(var(--bright-accent));
     text-decoration: underline;
     text-decoration: underline;
}
.infobox .plainlinks a:visited {
    color: #551A8B !important;
}
.notaninfobox .infobox-rows .infobox-row {
display: contents;
}
}


a:hover::before {
.notaninfobox .infobox-row .infobox-row-label,
    content: "> ";
.notaninfobox .infobox-row .infobox-row-field {
padding: 4px;
}
}


/* 主内容区背景 */
.notaninfobox .infobox-row .infobox-row-label {
#content {
font-weight: bold;
    background-color: rgba(var(--white-monochrome), 0.9);
display: flex;
    position: relative;
align-items: center;
    border-radius: 8px;
}
    border: var(--xp-window-border);
.community-updates {
    box-shadow: var(--xp-window-shadow);
  background: #fff0e6;
    margin: 10px;
  padding: 15px;
    padding: 20px;
  border-radius: 10px;
  margin-top: 20px;
}
}
 
.community-updates ul li {
/* 修改扫描线动画 - 改为半透明灰色 */
  list-style: none;
.scan-animation {
  padding: 10px;
    position: absolute;
  background: #fff;
    width: 100%;
  margin: 5px 0;
    height: 100%;
  border-radius: 5px;
    top: 0;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    left: 0;
    pointer-events: none;
}
}
 
.community-updates ul li a {
/* 主扫描线 - 较宽较慢 - 修改为半透明灰色 */
  color: #337ab7;
.scan-animation::before {
  text-decoration: none;
    content: "";
  font-weight: bold;
    position: absolute;
    width: 100%;
    height: 6px;
    top: 0;
    background: linear-gradient(
        to bottom,
        rgba(128, 128, 128, 0) 0%,
        rgba(128, 128, 128, 0.1) 20%,
        rgba(128, 128, 128, 0.2) 50%,
        rgba(128, 128, 128, 0.1) 80%,
        rgba(128, 128, 128, 0) 100%
    );
    box-shadow:
        0 0 8px rgba(128, 128, 128, 0.15),
        0 0 15px rgba(128, 128, 128, 0.1);
    animation: scanMain 12s linear infinite;
    opacity: 0.4;
}
}
 
.notaninfobox .infobox-rows .infobox-row:nth-child(2n) .infobox-row-label,
/* 副扫描线 - 中等速度 - 修改为半透明灰色 */
.notaninfobox .infobox-rows .infobox-row:nth-child(2n) .infobox-row-field {
.scan-animation::after {
background-color: var(--custom-table-alternate-background);
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    top: 0;
    background: linear-gradient(
        to bottom,
        rgba(128, 128, 128, 0) 0%,
        rgba(128, 128, 128, 0.3) 50%,
        rgba(128, 128, 128, 0) 100%
    );
    box-shadow: 0 0 6px rgba(128, 128, 128, 0.2);
    animation: scanSecondary 7s linear infinite;
    animation-delay: -3s;
    opacity: 0.25;
}
}


/* 快速扫描线 - 细小快速 - 修改为半透明灰色 */
/* Infoboxes with tabber */
.scan-animation .fast-scan {
.tabber-container-infobox .tabber .tabbertab,
    position: absolute;
.tabber-container-infobox ul.tabbernav li a,
    width: 100%;
.tabber-container-infobox ul.tabbernav li.tabberactive a {
    height: 1px;
background: none;
    top: 0;
border: none;
    background: rgba(128, 128, 128, 0.6);
    box-shadow: 0 0 3px rgba(128, 128, 128, 0.3);
    animation: scanFast 3s linear infinite;
    animation-delay: -1.5s;
    opacity: 0.15;
}
}


/* 各个扫描线的动画 - 保持不变 */
.tabber-container-infobox .tabber .tabbertab {
@keyframes scanMain {
padding: 0;
    0% {
        top: -2rem;
        opacity: 0.6;
    }
    50% {
        opacity: 0.3;
    }
    100% {  
        top: 100vh;
        opacity: 0.6;
    }
}
}


@keyframes scanSecondary {
.tabber-container-infobox ul.tabbernav {
    0% {
font: inherit;
        top: -1rem;
font-size: 100%;
        opacity: 0.4;
    }
    35% {
        opacity: 0.2;
    }
    70% {
        opacity: 0.5;
    }
    100% {
        top: 100vh;
        opacity: 0.4;
    }
}
}


@keyframes scanFast {
.tabber-container-infobox ul.tabbernav li a:hover {
    0% {
color: #000;
        top: -0.3rem;
        opacity: 0.3;
    }
    50% {
        opacity: 0.6;
    }
    100% {
        top: 100vh;
        opacity: 0.3;
    }
}
}
/* Windows XP风格窗口和控件 */


/* XP风格窗口标题栏通用样式 */
.tabber-container-infobox ul.tabbernav > li {
.xp-window {
margin-bottom: 5px;
    border: 1px solid #0055AA;
padding: 0;
    border-radius: 8px 8px 0 0;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    margin-bottom: 15px;
    overflow: hidden;
    position: relative;
}
}
 
.announcement-content span {
/* XP风格窗口标题栏 */
  display: inline-block;
.xp-window-title {
  white-space: nowrap;
    background: linear-gradient(to bottom, #0084C6, #0066AA);
  animation: marquee 15s linear infinite;
    color: white;
    padding: 5px 10px;
    font-weight: bold;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #0044AA;
}
}
 
.mw-mainpage-header {
/* XP风格窗口标题文本 */
     background: linear-gradient(to bottom right, #B9A3FF, #8C47E7);
.xp-window-title-text {
     box-shadow: grey 0px 0px 5px;
     margin: 0;
     border-radius: 20px;
     padding: 0;
     color: #000;
     font-family: var(--title-font);
     font-size: 1.5em;
     font-size: 12px;
     text-shadow: white 0px 0px 10px, white 0px 0px 10px;
     overflow: hidden;
     padding: 20px;
     text-overflow: ellipsis;
     text-align: center;
     white-space: nowrap;
     flex-grow: 1;
}
}


/* XP风格窗口内容 */
.mw-mainpage-header h1 {
.xp-window-content {
     font-size: 2.5em;
     background-color: #F1F1F1;
     margin-bottom: 10px;
     padding: 10px;
    color: #000000;
    font-family: var(--body-font);
}
}


/* XP风格窗口控制按钮容器 */
.mw-mainpage-header p {
.xp-window-controls {
     font-size: 1.2em;
     display: flex;
     margin: 5px 0;
     gap: 4px;
}
}
 
.tabber-container-infobox ul.tabbernav > li > a {
/* XP风格窗口按钮基础样式 */
color: #595959;
.xp-window-button {
padding-bottom: 1px;
    width: 21px;
display: block;
    height: 21px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 3px;
    cursor: pointer;
    transition: background-color 0.1s;
}
}


/* XP风格窗口按钮 - 悬停状态 */
/* To prevent the tabs from jumping around when they become active or inactive
.xp-window-button:hover {
* due to the font-weight changing from normal to bold and vice versa, add an
    background-color: rgba(255, 255, 255, 0.2);
* invisible ::before which contains the same text as the tab's text, but
* bolded. This way the element in which unbolded text sits is sized according
* to the bolded text, preventing it from resizing upon being selected.
*/
.tabber-container-infobox ul.tabbernav > li > a::before {
display: block;
content: attr(alt);
font-weight: bold;
height: 0;
color: transparent;
overflow: hidden;
visibility: hidden;
}
}


/* XP风格窗口按钮 - 按下状态 */
.tabber-container-infobox ul.tabbernav > li.tabberactive {
.xp-window-button:active {
border: none;
    background-color: rgba(0, 0, 0, 0.2);
}
}


/* XP风格窗口按钮图标 */
.modulebox {
.xp-minimize::before,
  border: 1px solid #ccc;
.xp-maximize::before,
  padding: 10px;
.xp-close::before {
  margin: 10px 0;
    content: "";
  background-color: #f9f9f9;
    display: block;
    width: 11px;
    height: 2px;
    background-color: white;
}
}


/* XP风格最小化按钮 */
.tabber-container-infobox ul.tabbernav > li.tabberactive > a {
.xp-minimize::before {
font-weight: bold;
    transform: translateY(5px);
color: var(--link-color);
border-bottom: 2px solid var(--custom-mcwiki-header-color);
}
}


/* XP风格最大化按钮 */
.infobox-rows p {
.xp-maximize::before {
margin: 0;
    width: 9px;
    height: 9px;
    border: 1px solid white;
    background-color: transparent;
}
}


/* XP风格关闭按钮 */
/* Merge adjacent dls in the infobox, since they're usually supposed to be one,
.xp-close {
* but the wiki screws up sometimes.
    margin-left: 2px;
*/
.infobox-rows dl + dl {
margin-top: -0.4em;
}
}


.xp-close::before {
.infobox-rows dl:last-child {
    content: "×";
margin-bottom: 0.2em;
    font-size: 16px;
    line-height: 1;
    font-weight: bold;
    width: auto;
    height: auto;
    background-color: transparent;
}
}


.xp-close:hover {
.infobox-footer {
    background-color: #E81123;
text-align: center;
}
}


/* 应用XP窗口样式到各种内容容器 */
/* 页面底部导航框(2011年8月16日引自中文维基)(所谓大家族模板) */
/* 信息框样式 */
table.navbox{
.infobox,
     border:1px solid #aaa;
.notaninfobox {
     clear:both;
    background-color: #F1F1F1 !important;
     margin:auto;
    color: #000000 !important;
     padding:1px;
     border: 1px solid #0055AA !important;
     text-align:center;
     border-radius: 8px 8px 0 0 !important;
     width:100%;
     box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important;
     padding: 0 !important;
     margin: 1em 0 !important;
    font-family: var(--body-font) !important;
    overflow: hidden !important;
     position: relative !important;
}
}
 
.infobox th,
table.navbox + table.navbox{
.notaninfobox .infobox-title {
     margin-top:-1px;
     background: linear-gradient(to bottom, #0084C6, #0066AA) !important;
    color: white !important;
    padding: 5px 10px !important;
    text-align: left !important;
    font-weight: bold !important;
    height: 25px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border-bottom: 1px solid #0044AA !important;
}
}
 
/* 信息框标题文本 */
.navbox-title,
.infobox th span,
.navbox-abovebelow,
.notaninfobox .infobox-title span {
table.navbox th{
     flex-grow: 1 !important;
    padding-left:1em;
    padding-right:1em;
     text-align:center;
}
}
 
/* 添加XP窗口控制按钮到信息框 */
.navbox-group{
.infobox th::after,
     font-weight:700;
.notaninfobox .infobox-title::after {
     white-space:nowrap;
     content: "";
    display: flex;
    gap: 4px;
     align-items: center;
}
}
 
/* 信息框内容区域 */
.navbox,
.infobox td,
.navbox-subgroup{
.notaninfobox .infobox-content {
     background:none repeat scroll 0 0 var(--theme-card-background-color, #fdfdfd);
     background-color: #F1F1F1 !important;
    padding: 8px !important;
    color: #000000 !important;
}
}
 
/* 信息框内部行分隔 */
.navbox-list{
.infobox tr:not(:first-child) td {
     border-color:#fdfdfd;
     border-top: 1px solid #D1D1D1 !important;
}
}
 
/* 信息框内链接 */
.navbox-title,
.infobox a,
table.navbox th{
.notaninfobox a {
     background:none repeat scroll 0 0 #a5e4a5;
     color: rgb(var(--xp-blue)) !important;
}
}
 
.infobox a:hover,
.navbox-abovebelow,
.notaninfobox a:hover {
.navbox-group,
     color: rgb(var(--bright-accent)) !important;
.navbox-subgroup .navbox-title{
     background:none repeat scroll 0 0 #c0ecc0;
}
}
 
 
.navbox-subgroup .navbox-group,
/* 信息框的最小化和最大化状态 */
.navbox-subgroup .navbox-abovebelow{
.infobox.minimized td,
     background:none repeat scroll 0 0 #e6f6e6;
.notaninfobox.minimized .infobox-content,
.infobox.minimized tbody,
.notaninfobox.minimized .infobox-rows {
     display: none !important;
}
}
 
.infobox.maximized,
.navbox-even{
.notaninfobox.maximized {
     background:none repeat scroll 0 0 #f5fcf5;
     position: fixed !important;
    top: 10% !important;
    left: 10% !important;
    width: 80% !important;
    height: 80% !important;
    z-index: 1000 !important;
}
}
 
/* 表格样式 - Windows XP风格 */
.navbox-odd{
table.wiki-content-table {
     background:none repeat scroll 0 0 #fdfdfd;
    border-collapse: collapse !important;
    border: 1px solid #003C74 !important;
    margin: 1em 0 !important;
     background-color: #FFFFFF !important;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important;
}
}
 
.collapseButton {
table.wiki-content-table th {
     float: right;
     background: linear-gradient(to bottom, #E3EFFF, #CDE2FE) !important;
     font-weight: 400;
    color: #000000 !important;
     text-align: right;
    border: 1px solid #97B9E8 !important;
    width: auto;
    padding: 5px 8px !important;
     font-weight: bold !important;
     text-align: left !important;
}
}
 
.navbox .collapseButton {
table.wiki-content-table td {
     width: 6em;
     border: 1px solid #D3DCE3 !important;
    padding: 5px 8px !important;
    background-color: #FFFFFF !important;
}
}
 
.navbar {
table.wiki-content-table tr:nth-child(even) td {
    position: relative;
     background-color: #F0F6FF !important;
    min-height: 23px !important;
     margin-bottom: 0px !important;
    border: 1px solid transparent;
}
}
 
.navbox-title .Wikiplus-Edit-EveryWhereBtn {
table.wiki-content-table tr:hover td {
display: none;
    background-color: #E8F1FF !important;
}
}


/* 按钮样式 - Windows XP风格 */
@media only screen and (max-width:759px){
.button,
.infotable {
button,
    width: 90%;
input[type="button"],
    float: none;
input[type="submit"],
    margin: 0 auto;
input[type="reset"] {
}
    background: linear-gradient(to bottom, #F5F5F5, #E5E5E5) !important;
    border: 1px solid #999999 !important;
/*.navbox {*/
    border-radius: 3px !important;
/* display:none;*/
     padding: 4px 10px !important;
/*}*/
     color: #000000 !important;
/*“查·论·编”在小屏幕时基本用不到(也很难点到)*/
     font-family: var(--body-font) !important;
.navbox-title>div{
    font-size: 12px !important;
        display: none;
    cursor: pointer !important;
     }
     box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1) !important;
     /*把内边距去掉*/
     .navbox-group,
    .navbox-group >div{
        padding-left: 0 !important;
        padding-right: 0 !important;
        text-align: center;
     }
}
}


.button:hover,
/* h1标题字体 */
button:hover,
body h1 {
input[type="button"]:hover,
    font-family: "Microsoft YaHei", "微软雅黑", sans-serif !important;
input[type="submit"]:hover,
input[type="reset"]:hover {
    background: linear-gradient(to bottom, #FEFEFE, #ECECEC) !important;
    border-color: #666666 !important;
}
}


.button:active,
/* 本段内容来自萌娘百科 https://zh.moegirl.org.cn/MediaWiki:Gadget-site-styles.css 感谢贡献!*/
button:active,
/* 版权协定:知识共享 署名-非商业性使用-相同方式共享 3.0 */
input[type="button"]:active,
input[type="submit"]:active,
input[type="reset"]:active {
    background: #E0E0E0 !important;
    box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.2) !important;
}
/* 导航框(查论编)样式迁移 - Windows XP风格 */
.navbox {
    background-color: #F1F1F1 !important;
    border: 1px solid #0055AA !important;
    border-radius: 8px 8px 0 0 !important;
    font-family: var(--body-font) !important;
    margin: 1em 0 !important;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important;
    overflow: hidden !important;
    position: relative !important;
}


.navbox-title,
.heimu,
.navbox th {
.heimu rt{
     background: linear-gradient(to bottom, #0084C6, #0066AA) !important;
     --heimu-color:#252525;
     color: white !important;
     --heimu-text-color:#fff;
     padding: 5px 10px !important;
     --heimu-link-color:#add8e6;
     text-align: center !important;
     --heimu-visited-link-color:#c5cae9;
     height: 25px !important;
     --heimu-new-link-color:#fcc;
     display: flex !important;
     --heimu-new-visited-link-color:#ef9a9a;
     align-items: center !important;
     --heimu-extiw-visited-link-color:#d1c4e9;
    justify-content: space-between !important;
    border-bottom: 1px solid #0044AA !important;
}


/* 导航框标题文本 */
     background-color:var(--heimu-color);
.navbox-title span {
     flex-grow: 1 !important;
    text-align: center !important;
}
}


/* 添加XP窗口控制按钮占位 */
.heimu,
.navbox-title::after {
.heimu a,
     content: "";
a .heimu,
     display: inline-block;
a.new .heimu,
     width: 63px; /* 3个按钮的宽度 */
span.heimu a:visited,
span.heimu a.new,
span.heimu a.external,
span.heimu a.external:visited,
span.heimu a.extiw,
span.heimu a.extiw:visited,
span.heimu a.mw-disambig,
span.heimu a.mw-redirect{
     transition:color 0.13s linear;
     color:var(--heimu-color);
     text-shadow:none;
}
}


.navbox-group {
span.heimu:hover,
    background: linear-gradient(to bottom, #E3EFFF, #CDE2FE) !important;
span.heimu:active{
     color: #000000 !important;
     color:var(--heimu-text-color);
    font-weight: bold !important;
    padding: 4px 8px !important;
    border-right: 1px solid #97B9E8 !important;
    border-bottom: 1px solid #97B9E8 !important;
    text-align: right !important;
}
}


.navbox-list {
span.heimu:hover a,
    background-color: #FFFFFF !important;
a:hover span.heimu{
     color: #000000 !important;
     color:var(--heimu-link-color);
    padding: 4px 8px !important;
}
    border-bottom: 1px solid #D3DCE3 !important;
}


.navbox-even {
span.heimu:hover a:visited,
     background-color: #F0F6FF !important;
a:visited:hover span.heimu{
     color:var(--heimu-visited-link-color);
}
}


.navbox a {
span.heimu:hover a.new,
     color: rgb(var(--xp-blue)) !important;
a.new:hover span.heimu{
    text-decoration: none !important;
     color:var(--heimu-new-link-color);
}
}


.navbox a:hover {
span.heimu a.new:hover:visited,
     color: rgb(var(--bright-accent)) !important;
a.new:hover:visited span.heimu{
    text-decoration: underline !important;
     color:var(--heimu-new-visited-link-color);
}
}


.navbox a:hover::before {
span.heimu:hover a.extiw:visited,
     content: "> " !important;
a.extiw:visited:hover span.heimu{
     color:var(--heimu-extiw-visited-link-color);
}
}
 
[color-mode="dark"] .heimu,
/* 导航栏样式 - Windows XP风格 */
[color-mode="dark"] .heimu rt{
.navbar,  
     --heimu-color:#5e6272;
.navbar.navbar-default,
.navbar-light {
     background: linear-gradient(to bottom, #1F69DE, #015EEB) !important;
    border-bottom: 1px solid #123AA0 !important;
    padding: 0 !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
}
}


.navbar .navbar-brand,
/*
.navbar .nav-link,
该文档为一个hover特效库,由一些常用的效果以及GitHub上的开源项目“Hover.css”的一些部分构成。
.navbar-light .navbar-nav .nav-link {
请使用hovers在页面中进行载入。
    color: white !important;
*/
    font-family: var(--header-font) !important;
    padding: 8px 15px !important;
    position: relative !important;
}


.navbar .nav-link:hover,
/* hover状态切换 */
.navbar-light .navbar-nav .nav-link:hover {
.hover-change,
    background-color: rgba(255, 255, 255, 0.2) !important;
.hover-remote {
    color: white !important;
  position: relative;
    text-decoration: none !important;
  display: inline-block;
  transition: opacity 0.5s linear;
}
}


/* 下拉菜单 */
.hover-change-before,
.dropdown-menu {
.hover-change-after,
    background-color: #FFFFFF !important;
.hover-remote-target {
    border: 1px solid #7B9EBD !important;
  transition: inherit;
    border-radius: 3px !important;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important;
    padding: 2px !important;
}
}


.dropdown-item {
.hover-change-after,
    color: #000000 !important;
.hover-remote-target {
    font-family: var(--body-font) !important;
  opacity: 0;
    padding: 4px 8px !important;
  position: absolute;
    border-radius: 2px !important;
  top: 0;
  left: 0;
}
}
 
.hover-remote-target {
.dropdown-item:hover {
  left: 100%;
    background-color: #316AC5 !important;
    color: white !important;
}
}


/* 搜索框样式 - Windows XP风格 */
.hover-change-after[style^='right:'],
#searchInput,  
.hover-change-after[style*=' right:'],
.form-control {
.hover-remote-after[style^='right:'],
    background-color: white !important;
.hover-remote-after[style*=' right:'] {
    border: 1px solid #7B9EBD !important;
  left: initial;
    color: #000000 !important;
    font-family: var(--body-font) !important;
    padding: 4px 8px !important;
    border-radius: 2px !important;
}
}


#searchInput:focus,  
.hover-change-after[style^='bottom:'],
.form-control:focus {
.hover-change-after[style*=' bottom:'],
    border-color: #5690D2 !important;
.hover-remote-after[style^='bottom:'],
    box-shadow: 0 0 4px rgba(86, 144, 210, 0.5) !important;
.hover-remote-after[style*=' bottom:'] {
  top: initial;
}
}


/* 搜索按钮 */
.hover-change-after:hover,
#searchButton,
.hover-remote-target {
.searchButton,
  opacity: 0;
input[type="submit"],
  margin-left: -9999px;
input[type="button"],
.mw-ui-button,
button[name="go"],
button[name="fulltext"],
.mw-ui-button.mw-ui-progressive {
    background: linear-gradient(to bottom, #F5F5F5, #E5E5E5) !important;
    border: 1px solid #999999 !important;
    color: #000000 !important;
    font-family: var(--body-font) !important;
    padding: 4px 10px !important;
    cursor: pointer !important;
    border-radius: 3px !important;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1) !important;
}
}


#searchButton:hover,
/* 主要用于制作hover形式的标签页(tab)切换 */
.searchButton:hover,
.hover-tab-mode {
input[type="submit"]:hover,
  position: relative;
input[type="button"]:hover,
  transition: none;
.mw-ui-button:hover,
button[name="go"]:hover,
button[name="fulltext"]:hover,
.mw-ui-button.mw-ui-progressive:hover {
    background: linear-gradient(to bottom, #FEFEFE, #ECECEC) !important;
    border-color: #666666 !important;
    color: #000000 !important;
}
}
 
.hover-tab-mode .hover-remote {
#searchButton:active,
  transition: inherit;
.searchButton:active,
  position: static;
input[type="submit"]:active,
input[type="button"]:active,
.mw-ui-button:active,
button[name="go"]:active,
button[name="fulltext"]:active,
.mw-ui-button.mw-ui-progressive:active {
    background: #E0E0E0 !important;
    box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.2) !important;
}
}


/* 目录框样式 - Windows XP风格 */
/* 闪烁效果 */
#toc, .toc {
.hover-change.flash:hover .hover-change-before {
    background-color: #F1F1F1 !important;
  margin-left: -9999px;
    border: 1px solid #0055AA !important;
    border-radius: 8px 8px 0 0 !important;
    padding: 0 !important;
    font-family: var(--body-font) !important;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important;
    margin: 1em 0 !important;
    position: relative !important;
    overflow: hidden !important;
}
}


.toc .toctitle, #toc .toctitle {
.hover-change:hover > .hover-change-before,
    background: linear-gradient(to bottom, #0084C6, #0066AA) !important;
.hover-remote > .hover-remote-target,
    color: white !important;
.hover-change:hover > a > .hover-change-before,
    text-align: left !important;
.hover-remote > a > .hover-remote-target {
    padding: 5px 10px !important;
  opacity: 0;
    margin: 0 !important;
    font-weight: bold !important;
    height: 25px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border-bottom: 1px solid #0044AA !important;
}
}


.toc .toctitle h2, #toc .toctitle h2 {
.hover-change:hover > .hover-change-after,
    color: white !important;
.hover-remote:hover > .hover-remote-target,
    font-size: 12px !important;
.hover-change:hover > a > .hover-change-after,
    margin: 0 !important;
.hover-remote:hover > a > .hover-remote-target {
    padding: 0 !important;
  opacity: 1;
    text-shadow: none !important;
  margin-left: initial;
    flex-grow: 1 !important;
}
}


/* 添加XP窗口控制按钮占位 */
/* 基类 */
.toc .toctitle::after, #toc .toctitle::after {
[class*='hovers-'] {
    content: "";
  display: inline-block;
    display: inline-block;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    width: 63px; /* 3个按钮的宽度 */
  transform: perspective(1px) translateZ(0);
  vertical-align: middle;
  transition-duration: 0.25s;
  transition-property: all;
}
}


.toc ul, #toc ul {
/* 旋转放大 */
    margin: 0 !important;
.hovers-rotate-shrink {
    padding: 10px 10px 10px 30px !important;
  transition-duration: 0.5s;
  transform: rotate(0) scale(0.75);
}
}
 
.hovers-rotate-shrink:hover {
.toc a, #toc a {
  transform: rotate(360deg) scale(1);
    color: rgb(var(--xp-blue)) !important;
    text-decoration: none !important;
}
}


.toc a:hover, #toc a:hover {
.hovers-rotate-shrink-reverse {
    color: rgb(var(--bright-accent)) !important;
  transition-duration: 0.5s;
    text-decoration: underline !important;
  transform: rotate(360deg) scale(0.75);
}
}


.tocnumber {
.hovers-rotate-shrink-reverse:hover {
    color: #666666 !important;
  transform: rotate(0) scale(1);
}
}


/* 主页样式修改 - Windows XP风格 */
/* 旋转 */
/* 主页横幅样式 */
.hovers-rotate,
.main-page-banner {
.hovers-rotate-reverse:hover {
    position: relative;
  transition-duration: 0.5s;
    display: grid;
  transform: rotate(0);
    grid-template-areas:  
        "welcome welcome welcome"
        "discord faq join";
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 3%;
    margin-bottom: 4rem;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #0055AA;
    border-radius: 8px 8px 0 0;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    background-color: #F1F1F1;
    overflow: hidden;
}
}


/* 欢迎文本区域 */
.hovers-rotate-reverse,
.main-page-banner .welcome-text {
.hovers-rotate:hover {
    grid-area: welcome;
  transition-duration: 0.5s;
    background: linear-gradient(to bottom, #0084C6, #0066AA);
  transform: rotate(360deg);
    color: white;
    padding: 1.5rem 2rem;
    margin: 0;
    width: 100%;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid #0044AA;
    z-index: 2;
}
}


/* 背景图片支持 */
/* 正常 => 浅 */
.main-page-banner .welcome-text::before {
.hovers-fade-deep,
    content: "";
.hovers-fade,
    position: absolute;
.hovers-fade-shallow {
    top: 0;
  opacity: 1;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    opacity: 0.15;
    z-index: 1;
}
}
 
.hovers-fade-deep:hover,
/* 添加水平扫描线 */
.hovers-fade-deep.active {
.main-page-banner .welcome-text .scan-line {
  opacity: 0.35;
    position: absolute;
    width: 100%;
    height: 3px;
    background: linear-gradient(
        to right,
        transparent 0%,
        rgba(255, 255, 255, 0.08) 30%,
        rgba(255, 255, 255, 0.15) 50%,
        rgba(255, 255, 255, 0.08) 70%,
        transparent 100%
    );
    z-index: 4;
    animation: horizScanLine 7s linear infinite;
    opacity: 0.3;
    pointer-events: none;
    box-shadow: 0 0 5px rgba(255, 255, 255, 0.1);
}
}
 
.hovers-fade:hover,
/* 欢迎文本 */
.hovers-fade.active {
.main-page-banner .welcome-text p {
  opacity: 0.5;
    position: relative;
    z-index: 2;
    margin: 0;
    font-size: 1.1em;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
}
}
 
.hovers-fade-shallow:hover,
/* 水平扫描线动画 */
.hovers-fade-shallow.active {
@keyframes horizScanLine {
  opacity: 0.75;
    0% { top: -10px; }
    100% { top: 100%; }
}
}


/* 导航按钮美化 */
/* 浅 => 正常 */
.main-page-banner .navigation-links {
.hovers-bloom-deep {
    display: grid;
  opacity: 0.35;
    grid-template-columns: 1fr 1fr 1fr;
    grid-column-gap: 3%;
    grid-area: discord / discord / join / join;
    width: 100%;
    padding: 1rem;
    background-color: #F1F1F1;
}
}
 
.hovers-bloom {
.main-page-banner .nav-button {
  opacity: 0.5;
    background: linear-gradient(to bottom, #F5F5F5, #E5E5E5);
    border: 1px solid #999999;
    border-radius: 3px;
    margin: 0;
    transition: all 0.3s ease;
    height: min-content;
    position: relative;
    overflow: hidden;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}
}
 
.hovers-bloom-shallow {
/* 按钮光效 */
  opacity: 0.75;
.main-page-banner .nav-button::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.5),
        transparent
    );
    transition: left 0.5s;
}
}


.main-page-banner .nav-button:hover::before {
.hovers-bloom-deep:hover,
    left: 100%;
.hovers-bloom-deep.active,
.hovers-bloom:hover,
.hovers-bloom.active,
.hovers-bloom-shallow:hover,
.hovers-bloom-shallow.active {
  opacity: 1;
}
}


.main-page-banner .nav-button:hover {
/* 正常 => 大 */
    transform: translateY(-5px);
.hovers-grow-deep,
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
.hovers-grow,
    background: linear-gradient(to bottom, #FEFEFE, #ECECEC);
.hovers-grow-shallow {
    border-color: #666666;
  transform: scale(1);
}
}
 
.hovers-grow-deep:hover,
.main-page-banner .nav-button a {
.hovers-grow-deep.active {
    display: block;
  transform: scale(1.5);
    padding: 10px 15px;
    width: 100%;
    text-align: center;
    color: #000000;
    font-size: 1rem;
    font-weight: bold;
    text-decoration: none !important;
    font-family: var(--body-font);
    position: relative;
    z-index: 1;
}
}
 
.hovers-grow:hover,
.main-page-banner .nav-button:hover a {
.hovers-grow.active {
    color: #000000;
  transform: scale(1.25);
}
}
 
.hovers-grow-shallow:hover,
.main-page-banner .nav-button:active {
.hovers-grow-shallow.active {
    background: #E0E0E0;
  transform: scale(1.1);
    box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.2);
}
}


/* 公告容器 */
/* 正常 => 小 */
.announcement-container {
.hovers-shrink-deep:hover,
    background-color: #F1F1F1;
.hovers-shrink-deep.active,
    border: 1px solid #0055AA;
.hovers-shrink:hover,
    border-radius: 8px 8px 0 0;
.hovers-shrink.active,
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
.hovers-shrink-shallow:hover,
    margin-bottom: 2rem;
.hovers-shrink-shallow.active {
    display: flex;
  transform: scale(1);
    flex-wrap: wrap;
    align-content: space-between;
    overflow: hidden;
    position: relative;
}
}
 
.hovers-shrink-deep {
.announcement-container .section-title {
  transform: scale(0.5);
    background: linear-gradient(to bottom, #0084C6, #0066AA);
    color: white;
    padding: 5px 10px;
    font-family: var(--title-font);
    font-size: 1rem;
    font-weight: bold;
    text-align: left;
    width: 100%;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #0044AA;
}
}
 
.hovers-shrink {
/* 标题文本 */
  transform: scale(0.75);
.announcement-container .section-title span {
    flex-grow: 1;
}
}
 
.hovers-shrink-shallow {
/* 添加XP窗口控制按钮占位 */
  transform: scale(0.9);
.announcement-container .section-title::after {
    content: "";
    display: inline-block;
    width: 63px; /* 3个按钮的宽度 */
}
}


.announcement-container .announcement-content {
/* 左右抖动 */
    background-color: #FFFFFF;
@keyframes shake-flexible {
    color: #000000;
  25% {
    padding: 10px;
     transform: translateX(-0.0625em);
     font-family: var(--body-font);
  }
    width: 100%;
    border-bottom: 1px solid #D3DCE3;
}


.announcement-content span {
  50% {
     display: inline-block;
     transform: translateX(0.0625em);
    white-space: nowrap;
  }
    animation: marquee 15s linear infinite;
}


@keyframes marquee {
  75% {
    0% { transform: translate(100%, 0); }
     transform: translateX(-0.0625em);
     100% { transform: translate(-100%, 0); }
  }
}
/* 近期页面容器 */
.recent-pages-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 1rem;
}
}


.recent-pages-container .page-section {
.hovers-shake-flexible:hover,
    flex-basis: 48%;
.hovers-shake-flexible.active {
    background-color: #F1F1F1;
  animation: shake-flexible 0.5s ease-out;
    border: 1px solid #0055AA;
    border-radius: 8px 8px 0 0;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    margin-bottom: 1rem;
    overflow: hidden;
    position: relative;
}
}


.recent-pages-container .section-title {
@keyframes shake {
    background: linear-gradient(to bottom, #0084C6, #0066AA);
  25% {
    color: white;
     transform: translateX(-8px);
     padding: 5px 10px;
  }
    font-family: var(--title-font);
    font-size: 1rem;
    font-weight: bold;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #0044AA;
}


/* 标题文本 */
  50% {
.recent-pages-container .section-title span {
     transform: translateX(8px);
     flex-grow: 1;
  }
}


/* 添加XP窗口控制按钮占位 */
  75% {
.recent-pages-container .section-title::after {
     transform: translateX(-8px);
     content: "";
  }
    display: inline-block;
    width: 63px; /* 3个按钮的宽度 */
}
}


.recent-pages-container .page-list {
.hovers-shake:hover,
    background-color: #FFFFFF;
.hovers-shake.active {
    padding: 8px;
  animation: shake 0.5s ease-out;
    max-height: 15rem;
    overflow-y: auto;
    border: 1px solid #D1D1D1;
    margin: 5px;
}
}


.recent-pages-container .page-list a {
/* 上下抖动 */
     color: #0055AA;
@keyframes bounce-flexible {
    display: block;
  25% {
    padding: 4px;
     transform: translateY(-0.0625em);
    border-bottom: 1px solid #EFEFEF;
  }
     font-family: var(--body-font);
 
     transition: all 0.2s ease;
  50% {
     transform: translateY(0.0625em);
  }
 
  75% {
     transform: translateY(-0.0625em);
  }
}
}


.recent-pages-container .page-list a:hover {
.hovers-bounce-flexible:hover,
    color: #CC6600;
.hovers-bounce-flexible.active {
    background-color: #E8F1FF;
  animation: bounce-flexible 0.5s ease-out;
    padding-left: 8px;
}
}


.recent-pages-container .see-more {
@keyframes bounce {
     background-color: #F0F0F0;
  25% {
    border-top: 1px solid #CCCCCC;
     transform: translateY(-8px);
    padding: 4px 8px;
  }
    text-align: right;
    font-size: 0.9em;
}


.recent-pages-container .see-more a {
  50% {
     color: #0055AA;
     transform: translateY(8px);
    font-family: var(--body-font);
  }
}


.recent-pages-container .see-more a:hover {
  75% {
     color: #CC6600;
     transform: translateY(-8px);
  }
}
}


/* 特色内容容器 */
.hovers-bounce:hover,
.featured-content-container {
.hovers-bounce.active {
    display: flex;
  position: relative;
    flex-wrap: wrap;
  left: 0;
    justify-content: space-between;
  animation: bounce 0.5s ease-out;
    width: 100%;
}
}


.featured-content-container .feature-item {
/* 绕顶端中点抖动 */
    flex-basis: 48%;
@keyframes swing {
     background-color: #F1F1F1;
  20% {
    border: 1px solid #0055AA;
     transform: rotate3d(0, 0, 1, 10deg);
    border-radius: 8px 8px 0 0;
  }
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    margin-bottom: 1rem;
    overflow: hidden;
    position: relative;
}


.featured-content-container .section-title {
  40% {
     background: linear-gradient(to bottom, #0084C6, #0066AA);
     transform: rotate3d(0, 0, 1, -10deg);
    color: white;
  }
    padding: 5px 10px;
    font-family: var(--title-font);
    font-size: 1rem;
    font-weight: bold;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #0044AA;
}


/* 标题文本 */
  60% {
.featured-content-container .section-title span {
     transform: rotate3d(0, 0, 1, 5deg);
     flex-grow: 1;
  }
}


/* 添加XP窗口控制按钮占位 */
  80% {
.featured-content-container .section-title::after {
     transform: rotate3d(0, 0, 1, -5deg);
     content: "";
  }
    display: inline-block;
    width: 63px; /* 3个按钮的宽度 */
}


.featured-content-container .feature-content {
  to {
     background-color: #FFFFFF;
     transform: rotate3d(0, 0, 1, 0deg);
    color: #000000;
  }
    padding: 10px;
    font-family: var(--body-font);
    border: 1px solid #D1D1D1;
    margin: 5px;
}
}


.featured-content-container .feature-content .featured-title {
.hovers-swing {
    color: #0055AA;
  transform-origin: top center;
    font-size: 1.1rem;
    font-weight: bold;
    margin-bottom: 0.5rem;
    font-family: var(--title-font);
}
}
 
.hovers-swing:hover,
.featured-content-container .feature-content .featured-author {
.hovers-swing.active {
    font-size: 0.9rem;
  animation: swing 0.75s ease-out;
    color: #666666;
    margin-bottom: 0.5rem;
}
}


.featured-content-container .feature-content .featured-description {
/* 正常 => 大 */
     font-style: italic;
@keyframes pulse-grow {
    color: #333333;
  to {
     transform: scale(1.1);
  }
}
}


.featured-content-container .see-more {
.hovers-pulse-grow:hover,
    background-color: #F0F0F0;
.hovers-pulse-grow.active {
    border-top: 1px solid #CCCCCC;
  animation: pulse-grow 0.5s linear infinite alternate;
    padding: 4px 8px;
    text-align: right;
    font-size: 0.9em;
}
}


/* 工具和资源容器 */
/* 正常 => 小 */
.tools-and-resources {
@keyframes pulse-shrink {
     margin-bottom: 2rem;
  to {
     transform: scale(0.9);
  }
}
}


.tools-container {
.hovers-pulse-shrink:hover,
    display: grid;
.hovers-pulse-shrink.active {
    grid-template-columns: 1fr 1fr;
  animation: pulse-shrink 0.5s linear infinite alternate;
    grid-gap: 1rem;
}
}


.tools-container .tool-item {
/* 正常 => 小 */
    background-color: #F1F1F1;
@keyframes push {
    color: #000000;
  50% {
    padding: 10px;
     transform: scale(0.8);
    border: 1px solid #0055AA;
  }
    border-radius: 8px 8px 0 0;
     box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    font-family: var(--body-font);
    transition: all 0.3s ease;
    display: grid;
    grid-template-areas:
        "icon content"
        "title content";
    grid-template-columns: max-content 1fr;
    grid-template-rows: 0.6fr 0.4fr;
    grid-gap: 0.5rem 1rem;
    position: relative;
    overflow: hidden;
}
}


.tools-container .tool-item::before {
.hovers-push:hover,
    content: "";
.hovers-push.active {
    position: absolute;
  animation: push 0.3s linear;
    top: 0;
    left: 0;
    right: 0;
    height: 25px;
    background: linear-gradient(to bottom, #0084C6, #0066AA);
    z-index: 0;
}
}


.tools-container .tool-item:hover {
/* 正常 => 大 */
     transform: translateY(-5px);
@keyframes pop {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
  50% {
     transform: scale(1.2);
  }
}
}


.tools-container .tool-item .tool-icon {
.hovers-pop:hover,
    grid-area: icon;
.hovers-pop.active {
    justify-self: center;
  animation: pop 0.3s linear;
    align-self: end;
    position: relative;
    z-index: 1;
    width: 32px;
    height: 32px;
    margin-top: 30px;
}
}


.tools-container .tool-item .tool-title {
/* 正常 => 大 => 正常 => 大 */
    grid-area: title;
.hovers-bounce-in:hover,
    text-align: center;
.hovers-bounce-in.active {
    position: relative;
  transform: scale(1.2);
    z-index: 1;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}
}


.tools-container .tool-item .tool-title a {
/* 正常 => 小 => 正常 => 小 */
    color: #0055AA;
.hovers-bounce-out:hover,
    font-weight: bold;
.hovers-bounce-out.active {
    font-family: var(--title-font);
  transform: scale(0.8);
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}
}


.tools-container .tool-item .tool-title a:hover {
/* 倾斜 */
    color: #CC6600;
.hovers-tilt:hover,
.hovers-tilt.active {
  transition-duration: 0.3s;
  transform: rotate(4deg);
}
}


.tools-container .tool-item .tool-description {
/* 倾斜 + 放大 */
    grid-area: content;
.hovers-grow-rotate:hover,
    align-self: center;
.hovers-grow-rotate.active {
    position: relative;
  transition-duration: 0.3s;
    z-index: 1;
  transform: scale(1.1) rotate(4deg);
    padding: 5px;
    background-color: #FFFFFF;
    border: 1px solid #D1D1D1;
    border-radius: 3px;
    margin-top: 30px;
}
}


/* 页码样式 */
/* 升起 */
.mw-page-numbers,  
.hovers-float:hover,
.pageNumbers,
.hovers-float.active {
.pagination {
  transition-duration: 0.3s;
    display: flex;
  transition-timing-function: ease-out;
    justify-content: center;
  transform: translateY(-8px);
    margin: 1rem 0;
    font-family: var(--body-font);
}
 
.mw-page-numbers li,
.pageNumbers li,
.pagination li {
    margin: 0 2px;
    list-style: none;
}
}


.mw-page-numbers a,  
/* 下沉 */
.pageNumbers a,
.hovers-sink:hover,
.pagination a {
.hovers-sink.active {
    display: inline-block;
  transition-duration: 0.3s;
    padding: 5px 10px;
  transition-timing-function: ease-out;
    background: linear-gradient(to bottom, #F5F5F5, #E5E5E5);
  transform: translateY(8px);
    border: 1px solid #999999;
    color: #000000;
    border-radius: 3px;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}
}


.mw-page-numbers a:hover,
/* 飘浮 */
.pageNumbers a:hover,
@keyframes bob {
.pagination a:hover {
  0% {
     background: linear-gradient(to bottom, #FEFEFE, #ECECEC);
    transform: translateY(-10px);
     border-color: #666666;
  }
  50% {
     transform: translateY(-5px);
  }
  100% {
     transform: translateY(-10px);
  }
}
}
 
@keyframes bob-float {
.mw-page-numbers .current,
  100% {
.pageNumbers .current,
     transform: translateY(-10px);
.pagination .current {
  }
     display: inline-block;
    padding: 5px 10px;
    background: linear-gradient(to bottom, #D1E5FE, #BBD8FB);
    border: 1px solid #4A8BF5;
    color: #000000;
    border-radius: 3px;
    font-weight: bold;
}
}


/* 侧边栏样式 */
.hovers-bob:hover,
#mw-navigation,  
.hovers-bob.active {
#mw-panel,
  animation-name: bob-float, bob;
.sidebar {
  animation-duration: 0.3s, 1.5s;
    background-color: #F1F1F1 !important;
  animation-delay: 0s, 0.3s;
}
  animation-timing-function: ease-out, ease-in-out;
 
  animation-iteration-count: 1, infinite;
#mw-navigation h2,  
  animation-fill-mode: forwards;
#mw-panel h3,  
  animation-direction: normal, alternate;
.sidebar h3 {
    background: linear-gradient(to bottom, #0084C6, #0066AA) !important;
    color: white !important;
    padding: 5px 10px !important;
    font-family: var(--header-font) !important;
    font-size: 1rem !important;
    font-weight: bold !important;
    border-bottom: 1px solid #0044AA !important;
    margin: 0 !important;
}
}


/* 引用样式 */
/* 悬挂 */
div.blockquote, blockquote {
@keyframes hang {
    border: 1px solid #7B9EBD;
  0% {
     background-color: #ECF4FD;
     transform: translateY(10px);
    color: #000000;
  }
    border-radius: 3px;
  50% {
     padding: 8px 12px;
     transform: translateY(5px);
    margin: 1em 1.5em;
  }
    position: relative;
  100% {
     box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
     transform: translateY(10px);
  }
}
}
 
@keyframes hang-sink {
/* 底部工具栏 */
  100% {
#footer, .footer {
     transform: translateY(10px);
     background-color: #F1F1F1 !important;
  }
    border-top: 1px solid #0055AA !important;
    color: #000000 !important;
    padding: 1em 0 !important;
    font-family: var(--body-font) !important;
}
}


#footer a, .footer a {
.hovers-hang:hover,
    color: #0055AA !important;
.hovers-hang.active {
}
  animation-name: hang-sink, hang;
 
  animation-duration: 0.3s, 1.5s;
#footer a:hover, .footer a:hover {
  animation-delay: 0s, 0.3s;
    color: #CC6600 !important;
  animation-timing-function: ease-out, ease-in-out;
  animation-iteration-count: 1, infinite;
  animation-fill-mode: forwards;
  animation-direction: normal, alternate;
}
}


/* 轮播图 */
/* 非对称 */
.mw-carousel {
.hovers-skew:hover,
    position: relative;
.hovers-skew.active {
    width: 100%;
  transform: skew(-10deg);
    max-width: 960px;
    margin: 2em auto;
    overflow: hidden;
    border: 1px solid #0055AA;
    border-radius: 8px 8px 0 0;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    aspect-ratio: 16 / 9;
    background-color: #F1F1F1;
}
}


.mw-carousel::before {
/* 非对称-左 */
    content: "照片查看器";
.hovers-skew-forward {
    position: absolute;
  transform-origin: 0 100%;
    top: 0;
    left: 0;
    right: 0;
    height: 25px;
    background: linear-gradient(to bottom, #0084C6, #0066AA);
    color: white;
    display: flex;
    align-items: center;
    padding: 0 10px;
    font-weight: bold;
    font-family: var(--title-font);
    z-index: 5;
}
}
 
.hovers-skew-forward:hover,
.mw-carousel .carousel-image {
.hovers-skew-forward.active {
    width: 100%;
  transform: skew(-10deg);
    height: 100%;
    position: relative;
    margin-top: 25px; /* 为标题栏留出空间 */
}
}


.mw-carousel .carousel-image img {
/* 非对称-右 */
    width: 100%;
.hovers-skew-backward {
    height: 100%;
  transform-origin: 0 100%;
    object-fit: cover;
    display: block;
}
}
 
.hovers-skew-backward:hover,
.mw-carousel .carousel-caption {
.hovers-skew-backward.active {
    position: absolute;
  transform: skew(10deg);
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 10px;
    text-align: left;
    z-index: 2;
}
}


.mw-carousel .carousel-navigation {
/* 垂直抖动 */
     position: absolute;
@keyframes wobble-vertical {
    top: 50%;
  16.65% {
    left: 0;
     transform: translateY(8px);
    width: 100%;
  }
    display: flex;
  33.3% {
    justify-content: space-between;
     transform: translateY(-6px);
     transform: translateY(-50%);
  }
    z-index: 3;
  49.95% {
    padding: 0 10px;
     transform: translateY(4px);
}
  }
 
  66.6% {
.mw-carousel .carousel-prev,
     transform: translateY(-2px);
.mw-carousel .carousel-next {
  }
     background: linear-gradient(to bottom, #F5F5F5, #E5E5E5);
  83.25% {
    border: 1px solid #999999;
     transform: translateY(1px);
    border-radius: 50%;
  }
     width: 32px;
  100% {
    height: 32px;
     transform: translateY(0);
    cursor: pointer;
  }
     display: flex;
    justify-content: center;
    align-items: center;
     transition: all 0.3s;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
    color: #000000;
}
}


.mw-carousel .carousel-prev:hover,
.hovers-wobble-vertical:hover,
.mw-carousel .carousel-next:hover {
.hovers-wobble-vertical.active {
    background: linear-gradient(to bottom, #FEFEFE, #ECECEC);
  animation-name: wobble-vertical;
    border-color: #666666;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
}


.mw-carousel .carousel-indicators {
/* 水平抖动 */
     position: absolute;
@keyframes wobble-horizontal {
    bottom: 40px;
  16.65% {
    left: 50%;
     transform: translateX(8px);
     transform: translateX(-50%);
  }
    display: flex;
  33.3% {
    gap: 5px;
     transform: translateX(-6px);
     z-index: 4;
  }
}
  49.95% {
 
     transform: translateX(4px);
.mw-carousel .carousel-indicators .indicator {
  }
     width: 10px;
  66.6% {
    height: 10px;
     transform: translateX(-2px);
    background-color: #CCCCCC;
  }
     border: 1px solid #999999;
  83.25% {
    border-radius: 50%;
     transform: translateX(1px);
     cursor: pointer;
  }
    transition: all 0.3s;
  100% {
     transform: translateX(0);
  }
}
}
 
.hovers-wobble-horizontal:hover,
.mw-carousel .carousel-indicators .indicator.active {
.hovers-wobble-horizontal.active {
    background-color: #0084C6;
  animation-name: wobble-horizontal;
    border-color: #0055AA;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
}


/* 黑幕效果改为橙色半透明(符合XP主题) */
/* 右下弹回 */
.heimu,
@keyframes wobble-to-bottom-right {
.heimu rt,
  16.65% {
.blackmu,
    transform: translate(8px, 8px);
.blackmu rt {
  }
     --blackmu-color: 229, 140, 36;
  33.3% {
     --blackmu-text-color: 0, 0, 0;
     transform: translate(-6px, -6px);
     --blackmu-link-color: 0, 85, 170;
  }
    --blackmu-visited-link-color: 0, 64, 128;
  49.95% {
     --blackmu-new-link-color: 204, 102, 0;
     transform: translate(4px, 4px);
    --blackmu-new-visited-link-color: 153, 76, 0;
  }
   
  66.6% {
     background-color: rgba(var(--blackmu-color), 0.8);
     transform: translate(-2px, -2px);
  }
  83.25% {
     transform: translate(1px, 1px);
  }
  100% {
     transform: translate(0, 0);
  }
}
}


.heimu,
.hovers-wobble-to-bottom-right:hover,  
.heimu a,
.hovers-wobble-to-bottom-right.active {
a .heimu,
  animation-name: wobble-to-bottom-right;
a.new .heimu,
  animation-duration: 1s;
span.heimu a:visited,
  animation-timing-function: ease-in-out;
span.heimu a.new,
  animation-iteration-count: 1;
span.heimu a.external,
}
span.heimu a.external:visited,
span.heimu a.extiw,
span.heimu a.extiw:visited,
span.heimu a.mw-disambig,
span.heimu a.mw-redirect,
.blackmu,
.blackmu a,
a .blackmu,
a.new .blackmu,
span.blackmu a:visited,
span.blackmu a.new,
span.blackmu a.external,
span.blackmu a.external:visited,
span.blackmu a.extiw,
span.blackmu a.extiw:visited,
span.blackmu a.mw-disambig,
span.blackmu a.mw-redirect {
    transition: color 0.13s linear;
    color: rgba(var(--blackmu-color), 0.8);
    text-shadow: none;
}


span.heimu:hover,
/* 右上弹回 */
span.heimu:active,
@keyframes wobble-to-top-right {
span.blackmu:hover,
  16.65% {
span.blackmu:active {
    transform: translate(8px, -8px)
     color: rgb(var(--blackmu-text-color));
  }
  33.3% {
    transform: translate(-6px, 6px);
  }
  49.95% {
    transform: translate(4px, -4px);
  }
  66.6% {
    transform: translate(-2px, 2px);
  }
  83.25% {
     transform: translate(1px, -1px);
  }
  100% {
    transform: translate(0);
  }
}
}


span.heimu:hover a,
.hovers-wobble-to-top-right:hover,
a:hover span.heimu,
.hovers-wobble-to-top-right.active {
span.blackmu:hover a,
  animation-name: wobble-to-top-right;
a:hover span.blackmu {
  animation-duration: 1s;
    color: rgb(var(--blackmu-link-color));
  animation-timing-function: ease-in-out;
}
  animation-iteration-count: 1;
 
/* 颜色幕 */
.colormu-drk {
    color: #FFFFFF;
}
}


.colormu-bri {
/* 果冻 */
     color: #000000;
@keyframes wobble-top {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
     transform: skew(0);
  }
}
}


.colormu-drk:not(.colormu_toggle_on) a {
/* 赘肉 */
    color: #add8e6;
.hovers-wobble-top {
  transform-origin: 0 100%;
}
}
 
.hovers-wobble-top:hover,
.colormu-drk:not(.colormu_toggle_on) a.new {
.hovers-wobble-top.active {
    color: #FCC;
  animation-name: wobble-top;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
}


.colormu>span,
@keyframes wobble-bottom {
.colormu a,
  16.65% {
.colormu a>span {
    transform: skew(-12deg);
     transition: color 0.2s;
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
     transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}
}


.colormu:not(:hover):not(:active):not(.colormu_toggle_on)>span,
.hovers-wobble-bottom {
.colormu:not(:hover):not(:active):not(.colormu_toggle_on) a {
  transform-origin: 100% 0;
    color: transparent;
}
}
 
.hovers-wobble-bottom:hover,
.colormu:not(:hover):not(:active):not(.colormu_toggle_on) a>span {
.hovers-wobble-bottom.active {
    color: transparent !important;
  animation-name: wobble-bottom;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
}


a .colormu-bri {
/* 颤动 */
     color: inherit;
@keyframes wobble-skew {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
     transform: skew(0);
  }
}
}
 
.hovers-wobble-skew:hover,
a:hover .colormu>span,  
.hovers-wobble-skew.active {
a:active .colormu>span,
  animation-name: wobble-skew;
.colormu-drk.colormu_toggle_on,
  animation-duration: 1s;
.colormu_toggle_on>span,
  animation-timing-function: ease-in-out;
.colormu-drk.colormu_toggle_on a>span {
  animation-iteration-count: 1;
    color: inherit !important;
}
}


/* Windows XP样式的提示框(替代hovertip) */
/* 振动 */
.hovertip {
@keyframes buzz {
    background-color: #FFFFCC !important;
  50% {
     border: 1px solid #999999 !important;
     transform: translateX(3px) rotate(2deg);
    border-radius: 3px !important;
  }
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3) !important;
  100% {
    padding: 6px !important;
     transform: translateX(-3px) rotate(-2deg);
    color: #000000 !important;
  }
     font-family: var(--body-font) !important;
    font-size: 0.9rem !important;
    max-width: 300px !important;
}
}


/* Windows XP风格的选项卡 */
.hovers-buzz:hover,
.yui-navset .yui-nav,
.hovers-buzz.active {
.yui-navset .yui-navset-top .yui-nav {
  animation-name: buzz;
    border-color: #7B9EBD !important;
  animation-duration: 0.15s;
    border-width: 0 0 1px 0 !important;
  animation-timing-function: linear;
    zoom: 1 !important;
  animation-iteration-count: infinite;
    position: relative !important;
}
}


.yui-navset .yui-nav li,
/* 振出 */
.yui-navset .yui-navset-top .yui-nav li {
@keyframes buzz-out {
     margin: 0 0.16em 0 0 !important;
  10% {
     padding: 1px 0 0 !important;
     transform: translateX(3px) rotate(2deg);
    list-style: none !important;
  }
     display: inline-block !important;
  20% {
}
     transform: translateX(-3px) rotate(-2deg);
 
  }
.yui-navset .yui-nav a,
  30% {
.yui-navset .yui-nav a:focus,
     transform: translateX(3px) rotate(2deg);
.yui-navset .yui-nav a:hover,
  }
.yui-navset .yui-navset-top .yui-nav a,
  40% {
.yui-navset .yui-navset-top .yui-nav a:focus,
    transform: translateX(-3px) rotate(-2deg);
.yui-navset .yui-navset-top .yui-nav a:hover {
  }
     background: linear-gradient(to bottom, #F5F5F5, #E5E5E5) !important;
  50% {
    border: 1px solid #7B9EBD !important;
     transform: translateX(2px) rotate(1deg);
    color: #000000 !important;
  }
     cursor: pointer !important;
  60% {
    text-decoration: none !important;
     transform: translateX(-2px) rotate(-1deg);
    padding: 0.25em 0.5em !important;
  }
     border-radius: 2px 2px 0 0 !important;
  70% {
}
     transform: translateX(2px) rotate(1deg);
 
  }
.yui-navset .yui-nav .selected a,
  80% {
.yui-navset .yui-nav .selected a:focus,
     transform: translateX(-2px) rotate(-1deg);
.yui-navset .yui-nav .selected a:hover {
  }
     background: linear-gradient(to bottom, #E3EFFF, #CDE2FE) !important;
  90% {
    color: #000000 !important;
     transform: translateX(1px) rotate(0);
     border-color: #4A8BF5 !important;
  }
}
  100% {
 
     transform: translateX(-1px) rotate(0);
.yui-navset .yui-content {
  }
     background: #FFFFFF !important;
    border: 1px solid #7B9EBD !important;
    border-top: none !important;
    padding: 10px !important;
}
}


/* Windows XP风格的代码块 */
.hovers-buzz-out:hover,
pre, code, .mw-code {
.hovers-buzz-out.active {
    background-color: #FFFFFF !important;
  animation-name: buzz-out;
    border: 1px solid #7B9EBD !important;
  animation-duration: 0.75s;
    color: #000000 !important;
  animation-timing-function: linear;
    font-family: var(--mono-font) !important;
  animation-iteration-count: 1;
    padding: 5px !important;
    border-radius: 3px !important;
}
 
/* Windows XP风格的分隔线 */
hr {
    margin: 1em 2em;
    padding: 0;
    height: 0;
    border: none;
    border-top: 1px solid #7B9EBD;
}
}


/* Windows XP风格块 - 原database主题块 */
/* 右移 */
.lightstyled-quote {
.hovers-forward:hover,
    background-color: #ECF4FD;
.hovers-forward.active {
    color: #000000;
  transform: translateX(8px);
    border-left: 3px solid #0055AA;
    padding: 0.1rem 1rem;
    margin: 0.5rem 0 0.5rem 0.25rem;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
}
}


.darkstyled-quote {
/* 左移 */
    background-color: #D6E9FF;
.hovers-backward:hover,
    border-left: 3px solid #0055AA;
.hovers-backward.active {
    color: #000000;
  transform: translateX(-8px);
    padding: 0.1rem 1rem;
    margin: 0.5rem 0 0.5rem 0.25rem;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
}
}


.lightblock {
/* 自由移动 */
    background-color: #ECF4FD;
.hovers-top,
    color: #000000;
.hovers-left,
    padding: 0.01rem 1rem;
.hovers-bottom,
    margin: 0.5rem 0 0.5rem 0.25rem;
.hovers-right {
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
  transition: all 0.5s;
    border: 1px solid #7B9EBD;
    border-radius: 3px;
}
}


.darkblock {
.hovers-top:hover,
    background-color: #D6E9FF;
.hovers-top.active {
    color: #000000;
  transform: translateY(-0.0625em);
    padding: 0.01rem 1rem;
    margin: 0.5rem 0 0.5rem 0.25rem;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
    border: 1px solid #7B9EBD;
    border-radius: 3px;
}
}


/* Windows XP风格的错误屏幕块 */
.hovers-left:hover,
.bluescreen {
.hovers-left.active {
    background-color: #0000AA;
  transform: translateX(-0.0625em);
    color: #FFFFFF;
    padding: 1.5rem;
    margin: 0.5rem 0 0.5rem 0.25rem;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    font-family: "Courier New", monospace;
    border: 2px solid #FFFFFF;
    position: relative;
}
}


.bluescreen::before {
.hovers-bottom:hover,
    content: "Windows";
.hovers-bottom.active {
    position: absolute;
  transform: translateY(0.0625em);
    top: 0.5rem;
    left: 1rem;
    font-weight: bold;
}
}


/* Windows XP Logo块 */
.hovers-right:hover,
.logoblock {
.hovers-right.active {
    padding: 0.5rem 1rem;
  transform: translateX(0.0625em);
    color: #000000;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    margin: 0.5rem 0 0.5rem 0.25rem;
    display: block;
    position: relative;
    background-color: #FFFFFF;
    border: 1px solid #7B9EBD;
    border-radius: 3px;
    min-height: 80px;
}
}


.logoblock::after {
/* 滤镜 */
    content: "";
.hovers-blur,
    float: center;
.hovers-blur-reverse,
    border: solid 2px transparent;
.hovers-brightness,
    background: url() center/70% no-repeat;
.hovers-brightness-reverse,
    opacity: 0.7;
.hovers-contrast,
    top: 0;
.hovers-contrast-reverse,
    left: 0;
.hovers-grayscale,
    bottom: 0;
.hovers-grayscale-reverse,
    right: 0;
.hovers-invert,
    position: absolute;
.hovers-invert-reverse,
    z-index: 1;
.hovers-saturate,
.hovers-saturate-reverse,
.hovers-sepia,
.hovers-sepia-reverse,
.hovers-hue-rotate,
.hovers-hue-rotate-reverse {
  transition-duration: 0.75s;
}
}


/* Windows XP风格的标题块 */
.hovers-blur:hover,
.titlebox {
.hovers-blur.active,
    color: #FFFFFF;
.hovers-brightness:hover,
    position: relative;
.hovers-brightness.active,
    top: -1.6rem;
.hovers-contrast:hover,
    background: linear-gradient(to bottom, #0084C6, #0066AA);
.hovers-contrast.active,
    padding: 0.5rem 2rem;
.hovers-grayscale:hover,
    line-height: 0.1rem;
.hovers-grayscale.active,
    border-radius: 3px 3px 0 0;
.hovers-invert:hover,
    border: 1px solid #0055AA;
.hovers-invert.active,
    border-bottom: none;
.hovers-saturate:hover,
}
.hovers-saturate.active,
 
.hovers-sepia:hover,
/* Windows XP风格警告消息 */
.hovers-sepia.active,
.mw-warning, .warning {
.hovers-hue-rotate:hover,
    background-color: #FFEFD5;
.hovers-hue-rotate.active {
    color: #000000;
  filter: initial;
    padding: 0.7rem 1rem;
    margin: 1rem 0;
    border: 1px solid #FF8C00;
    border-radius: 3px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
}
}


.mw-warning:before, .warning:before {
.hovers-blur {
    content: "⚠️ ";
  filter: blur(5px);
    font-size: 1.2rem;
    vertical-align: middle;
    margin-right: 0.5rem;
}
}


/* Windows XP风格的提示消息 */
.hovers-blur-reverse:hover,
.mw-info, .info {
.hovers-blur-reverse.active {
    background-color: #E6F3FF;
  filter: blur(5px);
    color: #000000;
    padding: 0.7rem 1rem;
    margin: 1rem 0;
    border: 1px solid #4A8BF5;
    border-radius: 3px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
}
}


.mw-info:before, .info:before {
.hovers-brightness {
    content: "ℹ️ ";
  filter: brightness(50%);
    font-size: 1.2rem;
    vertical-align: middle;
    margin-right: 0.5rem;
}
}


/* 窗口最小化和最大化状态的样式 */
.hovers-brightness-reverse:hover,
.minimized .page-list,
.hovers-brightness-reverse.active {
.minimized .feature-content,
  filter: brightness(50%);
.minimized .tool-description,
.minimized .announcement-content,
.minimized .mw-parser-output,
.minimized .toc {
    display: none !important;
}
}


.maximized {
.hovers-contrast {
    position: fixed !important;
  filter: contrast(50%);
    top: 5% !important;
    left: 5% !important;
    width: 90% !important;
    height: 90% !important;
    z-index: 9999 !important;
}
}


.maximized .page-list,
.hovers-contrast-reverse:hover,
.maximized .feature-content,
.hovers-contrast-reverse.active {
.maximized .tool-description,
  filter: contrast(50%);
.maximized .announcement-content,
.maximized .mw-parser-output {
    max-height: calc(90vh - 40px) !important;
    overflow-y: auto !important;
}
}


/* Windows XP风格的图片浏览器 */
.hovers-grayscale {
.scp-image-block {
  filter: grayscale(100%);
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    border-radius: 3px;
    border: 1px solid #7B9EBD;
    margin: 0 2em 1em;
    background-color: #FFFFFF;
}
}


.scp-image-block.block-right {
.hovers-grayscale-reverse:hover,
    float: right;
.hovers-grayscale-reverse.active {
    margin: 0 0 1em 2em;
  filter: grayscale(100%);
}
}


.scp-image-block .scp-image-caption {
.hovers-invert {
    background: linear-gradient(to bottom, #E3EFFF, #CDE2FE);
  filter: invert(100%);
    color: #000000;
    padding: 5px;
    text-align: center;
    border-top: 1px solid #7B9EBD;
}
}


.scp-image-block img {
.hovers-invert-reverse:hover,
    padding: 5px;
.hovers-invert-reverse.active {
    display: block;
  filter: invert(100%);
    margin: 0 auto;
}
}


/* 响应式布局调整 */
.hovers-saturate {
@media (max-width: 767px) {
  filter: saturate(200%);
    .main-page-banner {
        grid-template-areas:  
            "welcome"
            "navigation";
        grid-template-columns: 1fr;
    }
   
    .main-page-banner .welcome-text {
        width: 100%;
        margin-bottom: 0;
        box-sizing: border-box;
    }
   
    .main-page-banner .navigation-links {
        grid-area: navigation;
        display: flex;
        width: 100%;
        overflow: visible;
    }
   
    .recent-pages-container .page-section,
    .featured-content-container .feature-item {
        flex-basis: 100%;
    }
   
    .tools-container {
        grid-template-columns: 1fr;
    }
   
    .xp-window-controls {
        display: none !important;
    }
}
}


/* 打印样式(续) */
.hovers-saturate-reverse:hover,
@media print {
.hovers-saturate-reverse.active {
    body {
  filter: saturate(200%);
        background: #FFFFFF !important;
        color: #000000 !important;
    }
   
    #content {
        background: #FFFFFF !important;
        border: none !important;
        box-shadow: none !important;
    }
   
    .scan-animation,
    .xp-window-controls,
    .main-page-banner .navigation-links,
    .mw-carousel .carousel-navigation,
    .mw-carousel .carousel-indicators {
        display: none !important;
    }
   
    a {
        color: #000000 !important;
        text-decoration: underline !important;
    }
   
    a::before {
        content: none !important;
    }
   
    .infobox,
    .notaninfobox,
    .navbox,
    #toc,
    .toc,
    .announcement-container,
    .recent-pages-container .page-section,
    .featured-content-container .feature-item,
    .tools-container .tool-item {
        border: 1px solid #000000 !important;
        box-shadow: none !important;
    }
   
    .infobox th,
    .notaninfobox .infobox-title,
    .navbox-title,
    .toc .toctitle,
    #toc .toctitle,
    .announcement-container .section-title,
    .recent-pages-container .section-title,
    .featured-content-container .section-title,
    .tools-container .tool-item::before {
        background: #CCCCCC !important;
        color: #000000 !important;
    }
}
}


/* 滚动条样式 - Windows XP经典风格 */
.hovers-sepia {
::-webkit-scrollbar {
  filter: sepia(100%);
    width: 16px;
    height: 16px;
}
}


::-webkit-scrollbar-track {
.hovers-sepia-reverse:hover,
    background-color: #F1F1F1;
.hovers-sepia-reverse.acitve {
    border-left: 1px solid #DFDFDF;
  filter: sepia(100%);
}
}


::-webkit-scrollbar-thumb {
.hovers-hue-rotate {
    background: #C2D2E3;
  filter: hue-rotate(180deg);
    border: 1px solid #7B9EBD;
    border-radius: 3px;
}
}


::-webkit-scrollbar-thumb:hover {
.hovers-hue-rotate-reverse:hover,
    background: #9CB6D3;
.hovers-hue-rotate-reverse.active {
  filter: hue-rotate(180deg);
}
}


::-webkit-scrollbar-button {
/* 背景滑动 */
    background-color: #F1F1F1;
.hovers-sweep-to-right,
    border: 1px solid #7B9EBD;
.hovers-sweep-to-left,
    height: 16px;
.hovers-sweep-to-bottom,
    width: 16px;
.hovers-sweep-to-top,
}
.hovers-radial-out,
 
.hovers-radial-in {
::-webkit-scrollbar-button:vertical:increment {
  position: relative;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%237B9EBD" d="M4 0l-4 4h8z" transform="translate(0 2)"/></svg>');
  transition-duration: 0.3s;
    background-repeat: no-repeat;
  transition-timing-function: ease-out;
    background-position: center;
  overflow: hidden;
}
}


::-webkit-scrollbar-button:vertical:decrement {
.hovers-sweep-to-right:before,
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%237B9EBD" d="M0 0l4 4 4-4h-8z" transform="translate(0 2)"/></svg>');
.hovers-sweep-to-left:before,
    background-repeat: no-repeat;
.hovers-sweep-to-bottom:before,
    background-position: center;
.hovers-sweep-to-top:before,
.hovers-radial-out:before,
.hovers-radial-in:before {
  content: '';
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: inherit;
  transform: scaleX(0);
  transition: inherit;
}
}
 
.hovers-sweep-to-bottom:before,
::-webkit-scrollbar-button:horizontal:increment {
.hovers-sweep-to-top:before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%237B9EBD" d="M0 0l4 4-4 4v-8z" transform="translate(2 0)"/></svg>');
  transform: scaleY(0);
    background-repeat: no-repeat;
    background-position: center;
}
}
 
.hovers-radial-out:before,
::-webkit-scrollbar-button:horizontal:decrement {
.hovers-radial-in:before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%237B9EBD" d="M4 0l-4 4 4 4v-8z" transform="translate(2 0)"/></svg>');
  border-radius: 50%;
    background-repeat: no-repeat;
  transform: scale(0);
    background-position: center;
}
}
 
.hovers-radial-in:before {
/* 表单元素样式 - Windows XP风格 */
  transform: scale(2);
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="search"],
textarea,
select {
    background-color: #FFFFFF;
    border: 1px solid #7B9EBD;
    color: #000000;
    font-family: var(--body-font);
    padding: 4px 8px;
    border-radius: 2px;
    transition: border-color 0.2s, box-shadow 0.2s;
}
}


input[type="text"]:focus,
.hovers-sweep-to-right:before {
input[type="password"]:focus,
  transform-origin: 0 50%;
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    border-color: #5690D2;
    box-shadow: 0 0 4px rgba(86, 144, 210, 0.5);
    outline: none;
}
}
 
.hovers-sweep-to-left:before {
select {
  transform-origin: 100% 50%;
    padding: 3px 4px;
    background: linear-gradient(to bottom, #FEFEFE, #E5E5E5);
    border: 1px solid #7B9EBD;
}
}
 
.hovers-sweep-to-bottom:before {
input[type="checkbox"],
  transform-origin: 50% 0;
input[type="radio"] {
    accent-color: #316AC5;
}
}
 
.hovers-sweep-to-top:before {
/* 按钮悬停时为Win XP鼠标悬停样式 */
  transform-origin: 50% 100%;
button:hover,
.button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover {
    background-color: #316AC5 !important;
    color: #FFFFFF !important;
    border-color: #215091 !important;
    background-image: none !important;
}
}
 
.hovers-radial-out:hover:before,
/* Windows XP风格窗口的工具栏 */
.hovers-radial-out.active:before {
.xp-window-toolbar {
  transform: scale(2);
    background: linear-gradient(to bottom, #F5F5F5, #E5E5E5);
    border-bottom: 1px solid #CCCCCC;
    padding: 2px 5px;
    display: flex;
    align-items: center;
}
}
 
.hovers-radial-in:hover:before,
.xp-window-toolbar button {
.hovers-radial-in.active:before {
    background: transparent;
  transform: scale(0);
    border: 1px solid transparent;
    border-radius: 2px;
    padding: 2px 5px;
    margin: 0 2px;
    cursor: pointer;
}
}


.xp-window-toolbar button:hover {
.hovers-sweep-to-right .hovers-content.center,
    background-color: #E0E0E0;
.hovers-sweep-to-left .hovers-content.center,
    border-color: #999999;
.hovers-sweep-to-bottom .hovers-content.center,
.hovers-sweep-to-top .hovers-content.center,
.hovers-radial-out .hovers-content.center,
.hovers-radial-in .hovers-content.center {
  display: flex;
  align-items: center;
  justify-content: center;
  word-break: break-all;
}
}


.xp-window-toolbar button:active {
.hovers-sweep-to-right:hover:before,
    background-color: #D0D0D0;
.hovers-sweep-to-left:hover:before,
    border-color: #999999;
.hovers-sweep-to-bottom:hover:before,
    border-style: inset;
.hovers-sweep-to-top:hover:before,
.hovers-sweep-to-right.active:before,
.hovers-sweep-to-left:hover:before,
.hovers-sweep-to-bottom:hover:before,
.hovers-sweep-to-top:hover:before {
  transform: scaleX(1);
}
}


/* Windows XP风格的状态栏 */
.hovers-sweep-to-right .hovers-content,
.xp-window-statusbar {
.hovers-sweep-to-left .hovers-content,
    background-color: #F1F1F1;
.hovers-sweep-to-bottom .hovers-content,
    border-top: 1px solid #CCCCCC;
.hovers-sweep-to-top .hovers-content,
    padding: 2px 8px;
.hovers-radial-out .hovers-content,
    font-size: 0.9em;
.hovers-radial-in .hovers-content {
    color: #666666;
  width: 100%;
    display: flex;
  height: 100%;
    justify-content: space-between;
  position: absolute;
}
  transition-property: all;
 
  transition-duration: inherit;
/* 菜单项 */
  top: 0;
.xp-window-menu {
  left: 0;
    background-color: #F1F1F1;
  z-index: 11;
    border-bottom: 1px solid #CCCCCC;
    display: flex;
    padding: 0 5px;
}
 
.xp-window-menu-item {
    padding: 3px 10px;
    cursor: pointer;
    color: #000000;
    border: 1px solid transparent;
    border-radius: 2px;
    margin-right: 1px;
}
}


.xp-window-menu-item:hover {
.hovers-sweep-to-right .hovers-content {
    background-color: #E0E0E0;
  left: initial;
    border-color: #999999;
  right: 100%;
}
}
 
.hovers-sweep-to-right:hover .hovers-content,
.xp-window-menu-item.active {
.hovers-sweep-to-right.active .hovers-content {
    background-color: #D0D0D0;
  right: 0;
    border-color: #999999;
}
}


/* 页码样式增强 - 确保更符合XP风格 */
.hovers-sweep-to-left .hovers-content {
.mw-pagination {
  left: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 1.5em 0;
    padding: 0;
    list-style: none;
}
}
 
.hovers-sweep-to-left:hover .hovers-content,
.mw-pagination li {
.hovers-sweep-to-left.active .hovers-content {
    margin: 0 2px;
  left: 0;
}
}


.mw-pagination a,
.hovers-sweep-to-bottom .hovers-content {
.mw-pagination span {
  top: initial;
    display: inline-block;
  bottom: 100%;
    min-width: 30px;
    height: 30px;
    line-height: 30px;
    border: 1px solid #7B9EBD;
    background: linear-gradient(to bottom, #F5F5F5, #E5E5E5);
    color: #000000;
    border-radius: 3px;
    text-align: center;
    text-decoration: none;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}
}
 
.hovers-sweep-to-bottom:hover .hovers-content,
.mw-pagination a:hover {
.hovers-sweep-to-bottom.active .hovers-content {
    background: linear-gradient(to bottom, #FEFEFE, #ECECEC);
  bottom: 0;
    border-color: #666666;
}
}


.mw-pagination .active span {
.hovers-sweep-to-top .hovers-content {
    background: linear-gradient(to bottom, #D1E5FE, #BBD8FB);
  top: 100%;
    border-color: #4A8BF5;
    color: #000000;
    font-weight: bold;
}
}
 
.hovers-sweep-to-top:hover .hovers-content,
.mw-pagination .disabled span {
.hovers-sweep-to-top.active .hovers-content {
    color: #AAAAAA;
  top: 0;
    background: #F8F8F8;
    border-color: #DDDDDD;
    cursor: not-allowed;
}
}


/* 进度条样式 - Windows XP风格 */
.hovers-radial-out .hovers-content,
progress {
.hovers-radial-in:hover .hovers-content,
    -webkit-appearance: none;
.hovers-radial-in.active .hovers-content {
    -moz-appearance: none;
  opacity: 0;
    appearance: none;
    height: 20px;
    width: 100%;
    border: 1px solid #7B9EBD;
    border-radius: 2px;
    background-color: #FFFFFF;
}
}


progress::-webkit-progress-bar {
.hovers-radial-in .hovers-content,
    background-color: #FFFFFF;
.hovers-radial-out:hover .hovers-content,
    border-radius: 1px;
.hovers-radial-out.active .hovers-content {
  opacity: 1;
}
}


progress::-webkit-progress-value {
/* 默认em */
    background: linear-gradient(to bottom, #0084C6, #0066AA);
.hovers-border,
    border-radius: 1px;
.hovers-trim,
.hovers-ripple-out,
.hovers-ripple-in,
.hovers-outline-out,
.hovers-outline-in,
.hovers-reveal {
  font-size: 160px;
  line-height: 16px;
}
}


progress::-moz-progress-bar {
/* 内边框滑出 */
    background: linear-gradient(to bottom, #0084C6, #0066AA);
.hovers-border,
    border-radius: 1px;
.hovers-trim {
  position: relative;
  top: 0;
  left: 0;
  transition: all 0.3s;
}
}


/* XP风格的开始菜单(可用于站点导航等) */
.hovers-border:before {
.xp-start-menu {
  content: '';
    position: fixed;
  width: 100%;
    bottom: 30px;
  height: 100%;
    left: 0;
  position: absolute;
    width: 320px;
  top: 0;
    background-color: #F1F1F1;
  left: 0;
    border: 1px solid #0055AA;
  box-sizing: border-box;
    border-radius: 0 8px 8px 0;
  transition: inherit;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
  border-width: calc(0.0625em * 0.6);
    z-index: 10000;
  border-color: inherit;
    display: none;
  border-style: solid;
  border-radius: inherit;
  opacity: 0;
}
}


.xp-start-menu.visible {
.hovers-border:hover:before,
    display: block;
.hovers-border.active:before {
  opacity: 1;
}
}


.xp-start-menu-header {
/* 带边距内边框 */
    background: linear-gradient(to right, #0084C6, #0066AA);
.hovers-trim:before {
    height: 60px;
  content: '';
    padding: 10px;
  position: absolute;
    color: white;
  top: calc(0.0625em * 0.4);
    display: flex;
  left: calc(0.0625em * 0.4);
    align-items: center;
  bottom: calc(0.0625em * 0.4);
    border-radius: 0 8px 0 0;
  right: calc(0.0625em * 0.4);
}
  transition: inherit;
 
  border-width: calc(0.0625em * 0.6);
.xp-start-menu-header img {
  border-color: inherit;
    width: 40px;
  border-style: solid;
    height: 40px;
  opacity: 0;
    margin-right: 10px;
  border-radius: inherit;
}
 
.xp-start-menu-header .user-name {
    font-weight: bold;
    font-size: 1.2em;
}
}


.xp-start-menu-body {
.hovers-trim:hover:before,
    display: flex;
.hovers-trim.active:before {
  opacity: 1;
}
}


.xp-start-menu-left {
/* 边框飞出与飞入 */
    width: 200px;
.hovers-ripple-out,
    padding: 8px;
.hovers-ripple-in,
    background-color: white;
.hovers-outline-out,
    border-right: 1px solid #CCCCCC;
.hovers-outline-in,
.hovers-reveal {
  animation-duration: 0.7s;
  animation-timing-function: ease-out;
  transition: all 0.3s;
}
}


.xp-start-menu-right {
.hovers-ripple-out:before,
    width: 120px;
.hovers-ripple-in:before,
    padding: 8px;
.hovers-outline-out:before,
    background-color: #F1F1F1;
.hovers-outline-in:before,
}
.hovers-reveal:before {
 
  content: '';
.xp-start-menu-item {
  position: absolute;
    padding: 8px;
  top: 0;
    margin: 2px 0;
  right: 0;
    display: flex;
  bottom: 0;
    align-items: center;
  left: 0;
    cursor: pointer;
  animation: inherit;
    border-radius: 2px;
  transition: inherit;
}
  border-width: calc(0.0625em * 0.6);
 
  border-color: inherit;
.xp-start-menu-item:hover {
  border-style: solid;
    background-color: #316AC5;
  border-radius: inherit;
    color: white;
}
}
 
.hovers-ripple-out:before {
.xp-start-menu-item img {
  opacity: 0;
    width: 24px;
    height: 24px;
    margin-right: 8px;
}
}
 
.hovers-ripple-in:before {
.xp-start-menu-footer {
  top: calc(-0.0625em * 1.2);
    height: 30px;
  right: calc(-0.0625em * 1.2);
    background: linear-gradient(to right, #0084C6, #0066AA);
  bottom: calc(-0.0625em * 1.2);
    display: flex;
  left: calc(-0.0625em * 1.2);
    align-items: center;
  opacity: 0;
    justify-content: flex-end;
    padding: 0 10px;
}
}
 
.hovers-outline-out:before {
.xp-start-button {
  opacity: 0;
    background: linear-gradient(to bottom, #63B34C, #4E9C3D);
    color: white;
    border: 1px solid #4E9C3D;
    border-radius: 3px;
    padding: 2px 8px;
    font-weight: bold;
    cursor: pointer;
}
}
 
.hovers-outline-out:before {
.xp-start-button:hover {
  top: calc(-0.0625em * 1.6);
    background: linear-gradient(to bottom, #74C25D, #5FAD4E);
  right: calc(-0.0625em * 1.6);
  bottom: calc(-0.0625em * 1.6);
  left: calc(-0.0625em * 1.6);
  opacity: 0;
}
}
 
.hovers-reveal:before {
/* 任务栏 */
  border-width: 0;
.xp-taskbar {
  opacity: 0;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 30px;
    background: linear-gradient(to top, #0084C6, #0066AA);
    display: flex;
    align-items: center;
    padding: 0 2px;
    z-index: 9999;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.2);
}
}


.xp-start-button-container {
@keyframes ripple-out {
    display: flex;
  50% {
    align-items: center;
     opacity: 1;
     margin-right: 5px;
  }
}


.xp-taskbar-items {
  100% {
     display: flex;
     top: calc(-0.0625em * 1.2);
     flex-grow: 1;
     right: calc(-0.0625em * 1.2);
     height: 100%;
     bottom: calc(-0.0625em * 1.2);
     align-items: center;
     left: calc(-0.0625em * 1.2);
     overflow-x: auto;
     opacity: 0;
  }
}
}
 
.hovers-ripple-out:hover:before,
.xp-taskbar-item {
.hovers-ripple-out.active:before {
    background: linear-gradient(to bottom, #F5F5F5, #E5E5E5);
  animation-name: ripple-out;
    border: 1px solid #999999;
    height: 22px;
    padding: 0 8px;
    margin: 0 2px;
    border-radius: 2px;
    display: flex;
    align-items: center;
    min-width: 100px;
    max-width: 200px;
    cursor: pointer;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}
}


.xp-taskbar-item:hover {
@keyframes ripple-in {
     background: linear-gradient(to bottom, #FEFEFE, #ECECEC);
  50% {
}
     opacity: 1;
  }


.xp-taskbar-item.active {
  100% {
     background: linear-gradient(to bottom, #D1E5FE, #BBD8FB);
     top: 0;
     border-color: #4A8BF5;
    right: 0;
    bottom: 0;
    left: 0;
     opacity: 0;
  }
}
}
 
.hovers-ripple-in:hover:before,
.xp-taskbar-item img {
.hovers-ripple-in.active:before {
    width: 16px;
  animation-name: ripple-in;
    height: 16px;
    margin-right: 5px;
}
}


.xp-taskbar-item span {
.hovers-outline-out:hover:before,
    white-space: nowrap;
.hovers-outline-in:hover:before,
    overflow: hidden;
.hovers-outline-out.active:before,
    text-overflow: ellipsis;
.hovers-outline-in:hover:before {
  top: calc(-0.0625em * 0.8);
  right: calc(-0.0625em * 0.8);
  bottom: calc(-0.0625em * 0.8);
  left: calc(-0.0625em * 0.8);
  opacity: 1;
}
}


.xp-system-tray {
.hovers-reveal:hover:before,
    display: flex;
.hovers-reveal.active:before {
    align-items: center;
  transform: translateY(0);
    height: 100%;
  border-width: calc(0.0625em * 0.4);
    padding: 0 5px;
  opacity: 1;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
}
}


.xp-system-tray-item {
/* 圆角化 */
    width: 16px;
.hovers-round-corners {
    height: 16px;
  overflow: hidden;
    margin: 0 3px;
    cursor: pointer;
}
}
 
.hovers-round-corners:hover,
/* XP风格的系统图标 */
.hovers-round-corners.active {
.xp-icon {
  border-radius: 0.0625em;
    display: inline-block;
    width: 32px;
    height: 32px;
    margin: 0 5px;
    cursor: pointer;
    position: relative;
    text-align: center;
}
}


.xp-icon img {
/* 重叠:翻转切换 */
    width: 32px;
    height: 32px;
    display: block;
    margin: 0 auto;
}


.xp-icon span {
.hover-turn {
    display: block;
  position: relative;
    font-size: 0.8em;
  transform: translateZ(1px);
    margin-top: 2px;
    color: #000000;
    background-color: rgba(255, 255, 255, 0.7);
    border-radius: 2px;
    padding: 0 2px;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
}


.xp-icon:hover span {
.hover-turn-before,
    background-color: #316AC5;
.hover-turn-after {
    color: white;
  position: absolute;
  top: 0;
  left: 0;
}
}


.xp-shortcut::before {
@keyframes hover-turn {
    content: "";
  from {
     position: absolute;
     transform: rotateY(-90deg);
    bottom: 0;
  }
    left: 0;
    width: 8px;
    height: 8px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path fill="%23000000" d="M0 0v6l6-3z" transform="translate(1 1)"/></svg>');
    background-repeat: no-repeat;
}


/* 通用辅助类 */
  50% {
.xp-shadow {
     transform: scale(1.2);
     box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
  }
}


.xp-border {
  to {
     border: 1px solid #7B9EBD;
     transform: rotateY(0);
    border-radius: 3px;
  }
}
}


.xp-header-gradient {
.hover-turn:not(:hover) .hover-turn-before,
    background: linear-gradient(to bottom, #0084C6, #0066AA);
.hover-turn:hover .hover-turn-after {
    color: white;
  animation: hover-turn 0.5s;
}
}


.xp-button-gradient {
.hover-turn:hover .hover-turn-before,
    background: linear-gradient(to bottom, #F5F5F5, #E5E5E5);
.hover-turn:not(:hover) .hover-turn-after {
opacity: 0;
}
}
/* [[Category:在模板名字空间下的CSS页面]] */


.xp-panel-gradient {
/*
    background: linear-gradient(to bottom, #E3EFFF, #CDE2FE);
.colormu_toggle_on是为了黑幕开关(MediaWiki:Gadget-heimu-toggle.js)做适配。
.colormu-drk、.colormu-bri分别是暗色背景和亮色背景,
暗色背景的文字通常是浅色,在半隐背景后,颜色需要变成深色。
*/
.colormu-drk {
color: #FFF;
}
}
 
.colormu-bri {
/* 确保风格一致性 */
color: #000;
* {
    box-sizing: border-box;
}
}
 
.colormu-drk:not(.colormu_toggle_on) a {
/* 淡入动画修改 - 使用XP风格的淡入效果 */
color: #add8e6;
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
}
 
.colormu-drk:not(.colormu_toggle_on) a.new {
.mw-parser-output > * {
color: #FCC;
    animation: fadeIn 0.3s ease-out forwards;
    opacity: 0;
}
}
 
.colormu>span, .colormu a, .colormu a>span {
/* 延迟动画 */
transition: color 0.2s;
.mw-parser-output > *:nth-child(1) { animation-delay: 0.05s; }
.mw-parser-output > *:nth-child(2) { animation-delay: 0.1s; }
.mw-parser-output > *:nth-child(3) { animation-delay: 0.15s; }
.mw-parser-output > *:nth-child(4) { animation-delay: 0.2s; }
.mw-parser-output > *:nth-child(5) { animation-delay: 0.25s; }
.mw-parser-output > *:nth-child(n+6) { animation-delay: 0.3s; }
 
/* Windows XP启动动画 - 仅在页面加载时出现 */
.xp-startup-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000;
    z-index: 10001;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: white;
    animation: fadeOut 3s forwards;
    animation-delay: 2s;
}
}
 
.xp-startup-logo {
.colormu:not(:hover):not(:active):not(.colormu_toggle_on)>span,
    width: 200px;
.colormu:not(:hover):not(:active):not(.colormu_toggle_on) a {
    height: 200px;
color: transparent;
    margin-bottom: 30px;
    background: url() center/contain no-repeat;
}
}
 
.xp-startup-progress {
/* for T:Coloredlink in T:彩幕 */
    width: 300px;
.colormu:not(:hover):not(:active):not(.colormu_toggle_on) a>span {
    height: 20px;
color: transparent !important;
    background-color: #333333;
    border: 1px solid #555555;
    position: relative;
    overflow: hidden;
}
}
 
.xp-startup-progress::after {
/* for T:彩幕 in link */
    content: "";
a .colormu-bri {
    position: absolute;
color: inherit;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right,
        transparent 0%,
        #0084C6 30%,
        #0084C6 70%,
        transparent 100%
    );
    animation: progressMove 1.5s linear infinite;
}
}
 
a:hover .colormu>span, a:active .colormu>span,
@keyframes progressMove {
/* and for MediaWiki:Gadget-heimu-toggle.js */
    0% { left: -100%; }
.colormu-drk.colormu_toggle_on, .colormu_toggle_on>span, .colormu-drk.colormu_toggle_on a>span {
    100% { left: 100%; }
color: inherit !important;
}
}
 
/* === 轮播图容器 === */
@keyframes fadeOut {
.mw-carousel {
    0% { opacity: 1; visibility: visible; }
  position: relative;
    99% { opacity: 0; visibility: visible; }
  width: 100%;
    100% { opacity: 0; visibility: hidden; }
  max-width: 960px;
  margin: 2em auto;
  overflow: hidden;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  aspect-ratio: 16 / 9;
  background-color: #f8f9fa;
}
}


/* 页面错误消息 - 模拟XP错误弹窗 */
/* === 图片区域 === */
.xp-error-dialog {
.mw-carousel .carousel-image {
    position: fixed;
  width: 100%;
    top: 50%;
  height: 100%;
    left: 50%;
  position: relative;
    transform: translate(-50%, -50%);
    width: 300px;
    background-color: #F1F1F1;
    border: 1px solid #0055AA;
    border-radius: 8px 8px 0 0;
    box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.5);
    z-index: 10000;
}
}


.xp-error-dialog-title {
.mw-carousel .carousel-image img {
    background: linear-gradient(to bottom, #0084C6, #0066AA);
  width: 100%;
    color: white;
  height: 100%;
    padding: 5px 10px;
  object-fit: cover;
    font-family: var(--title-font);
  display: block;
    font-size: 1rem;
    font-weight: bold;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #0044AA;
}
}


.xp-error-dialog-title span {
/* === 默认状态下的文字:底部横条,文字靠左 === */
    flex-grow: 1;
.mw-carousel .carousel-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0));
  color: white;
  padding: 2em 1.5em 1.2em;
  text-align: left;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  z-index: 2;
  transform: translateY(0);
}
}


.xp-error-dialog-content {
/* === 悬停时的文字效果:文字全屏覆盖,背景渐变 === */
    padding: 15px;
.mw-carousel:hover .carousel-caption {
    display: flex;
  top: 0;
    align-items: flex-start;
  left: 0;
}
  bottom: 0;
 
  width: 100%;
.xp-error-dialog-icon {
  height: 100%;
    width: 32px;
  transform: translateY(0);
    height: 32px;
  background: rgba(0, 0, 0, 0.6);
    margin-right: 10px;
  display: flex;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"><circle cx="16" cy="16" r="16" fill="%23FF0000"/><text x="16" y="24" text-anchor="middle" font-family="Arial" font-weight="bold" font-size="24" fill="%23FFFFFF">!</text></svg>') no-repeat;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 2em;
  border-radius: 0;
  backdrop-filter: blur(3px);
}
}


.xp-error-dialog-message {
/* === 标题 + 描述样式 === */
    flex-grow: 1;
.mw-carousel .carousel-caption h3 {
    color: #000000;
  margin: 0 0 0.5em;
  font-size: 1.6em;
  font-weight: 600;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
  transform: translateY(0);
  transition: transform 0.4s ease;
}
}


.xp-error-dialog-buttons {
.mw-carousel .carousel-caption p {
    display: flex;
  margin: 0;
    justify-content: flex-end;
  font-size: 1.1em;
    padding: 10px 15px 15px;
  line-height: 1.4;
  max-width: 80%;
  opacity: 1;
  transform: translateY(0);
  transition: all 0.4s ease 0.1s;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}
}


.xp-error-dialog-ok {
.mw-carousel:hover .carousel-caption h3 {
    background: linear-gradient(to bottom, #F5F5F5, #E5E5E5);
  transform: translateY(0);
    border: 1px solid #999999;
    border-radius: 3px;
    padding: 4px 15px;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}
}


.xp-error-dialog-ok:hover {
.mw-carousel:hover .carousel-caption p {
    background: linear-gradient(to bottom, #FEFEFE, #ECECEC);
  opacity: 1;
    border-color: #666666;
  transform: translateY(0);
}
}


.xp-error-dialog-ok:active {
/* === 左右切换按钮(垂直居中) === */
    background: #E0E0E0;
.mw-carousel .carousel-navigation {
    box-shadow: inset 1px 1px 2px rgba(0, 0, 0, 0.2);
  position: absolute;
}
  top: 50%;
/* 搜索框右侧按钮 - 更具体的选择器 */
  left: 0;
#searchButton,
  width: 100%;
#mw-searchButton,
  display: flex;
.searchButton,
  justify-content: space-between;
button[name="go"],
  transform: translateY(-50%);
button[name="fulltext"],
  z-index: 3;
.mw-ui-button.mw-ui-progressive {
  padding: 0 1.5em;
    background-color: rgb(var(--gray-monochrome)) !important;
  opacity: 0;
    border: 1px solid rgb(var(--bright-accent)) !important;
  transition: opacity 0.3s ease;
    color: rgb(var(--bright-accent)) !important;
    font-family: var(--body-font) !important;
    padding: 0.3em 0.6em !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}
}


#searchButton:hover,
.mw-carousel:hover .carousel-navigation {
#mw-searchButton:hover,
  opacity: 1;
.searchButton:hover,
button[name="go"]:hover,
button[name="fulltext"]:hover,
.mw-ui-button.mw-ui-progressive:hover {
    background-color: rgb(var(--bright-accent)) !important;
    color: rgb(var(--black-monochrome)) !important;
    box-shadow: 0 0 10px rgba(var(--bright-accent), 0.3) !important;
}
}


/* 变色龙皮肤特定搜索按钮 */
.mw-carousel .carousel-prev,
.chameleon-search-form .btn {
.mw-carousel .carousel-next {
    background-color: rgb(var(--gray-monochrome)) !important;
  background-color: rgba(255, 255, 255, 0.8);
    border: 1px solid rgb(var(--bright-accent)) !important;
  border: none;
    color: rgb(var(--bright-accent)) !important;
  border-radius: 50%;
    font-family: var(--body-font) !important;
  width: 48px;
  height: 48px;
  font-size: 22px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  color: #333;
}
}


.chameleon-search-form .btn:hover {
.mw-carousel .carousel-prev:hover,
    background-color: rgb(var(--bright-accent)) !important;
.mw-carousel .carousel-next:hover {
    color: rgb(var(--black-monochrome)) !important;
  background-color: rgba(255, 255, 255, 0.95);
}
  transform: scale(1.05);
/* 底部工具栏完整样式 */
#footer,
.footer,
#footer-places,
#footer-info,
#footer-info-lastmod,
#footer-info-viewcount,
#footer-places-privacy,
#footer-places-about,
#footer-places-disclaimer,
#footer-icons,
.footer-info,
.footer-places,
.footer-icons,
.printfooter,
.mw-footer,
.mw-footer li {
    background-color: rgb(var(--black-monochrome)) !important;
    color: rgb(var(--bright-accent)) !important;
    font-family: var(--body-font) !important;
    border: none !important;
}
}


/* 页脚主容器 */
/* === 指示器 - 修改为底部右侧 === */
.mw-footer,
.mw-carousel .carousel-indicators {
#footer,
  position: absolute;
.footer {
  bottom: 15px;
    background-color: rgb(var(--black-monochrome)) !important;
  right: 20px;  /* 改为右对齐 */
    border-top: 2px solid rgb(var(--bright-accent)) !important;
  left: auto;    /* 取消左对齐 */
    margin-top: 1em !important;
  transform: none; /* 取消水平居中变换 */
    padding: 1em 0 !important;
  display: flex;
  gap: 10px;
  z-index: 4;
  padding: 0.5em 1em;
  border-radius: 20px;
  background-color: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(5px);
}
}


/* 页脚链接 */
.mw-carousel .carousel-indicators .indicator {
#footer a,
  width: 10px;
.footer a,
  height: 10px;
.mw-footer a {
  background-color: rgba(255, 255, 255, 0.5);
    color: rgb(var(--bright-accent)) !important;
  border-radius: 50%;
    text-decoration: none !important;
  cursor: pointer;
  transition: all 0.3s;
}
}


#footer a:hover,
.mw-carousel .carousel-indicators .indicator.active {
.footer a:hover,
  background-color: #ffffff;
.mw-footer a:hover {
  transform: scale(1.2);
    color: rgb(var(--white-monochrome)) !important;
  box-shadow: 0 0 8px rgba(255, 255, 255, 0.5);
    text-decoration: underline !important;
}
}


/* 页脚列表项 */
.mw-carousel .carousel-indicators .indicator:hover {
#footer li,
  background-color: rgba(255, 255, 255, 0.8);
.footer li,
.mw-footer li {
    color: rgb(var(--bright-accent)) !important;
    margin: 0.5em 0 !important;
}
}


/* 底部工具栏按钮区域 */
/* === 图片全局统一显示效果 === */
#footer-poweredbyico,
img {
#footer-copyrightico,
  max-width: 100%;
.footer-icons {
  height: auto;
    background-color: transparent !important;
  display: block;
}
}


/* 变色龙皮肤特定的页脚 */
/* === 添加图片过渡效果 === */
.p-tb,
.mw-carousel .carousel-image img {
#p-tb,
  transition: transform 0.5s ease;
.tools-menu,
#t-whatlinkshere,
#t-recentchangeslinked,
#t-specialpages,
#t-print,
#t-permalink,
#t-info {
    background-color: rgb(var(--black-monochrome)) !important;
    color: rgb(var(--bright-accent)) !important;
}
}


/* 页脚的具体区域 */
.mw-carousel:hover .carousel-image img {
.mw-footer-container {
  transform: scale(1.03);
    background-color: rgb(var(--black-monochrome)) !important;
}
}


/* 底部导航区域 */
#footer-navigation {
    background-color: rgb(var(--black-monochrome)) !important;
    border-top: 1px solid rgb(var(--bright-accent)) !important;
}
/* 变色龙皮肤特定修复 */
.chameleon-toc {
    background-color: rgb(var(--gray-monochrome)) !important;
    border: 2px solid rgb(var(--bright-accent)) !important;
}


.chameleon-toc .toctitle {
/* Common styles */
    background-color: rgb(var(--bright-accent)) !important;
.section-title {
    color: rgb(var(--black-monochrome)) !important;
  background-color: #f0f0f0;
  color: #333;
  font-weight: bold;
  padding: 0.5rem 1rem;
  font-size: 1.2rem;
  border-left: 4px solid #3366cc;
}
}


/* 搜索按钮图标 */
.see-more {
.mw-ui-icon:before,
  text-align: right;
.oo-ui-icon-search {
  padding: 0.3rem 1rem;
    filter: brightness(0) saturate(100%) invert(58%) sepia(78%) saturate(481%) hue-rotate(353deg) brightness(101%) contrast(91%);
  font-size: 0.9rem;
}
  background-color: #f5f5f5;
/* 工具条完整修复 */
#mw-panel,
#mw-head,
#mw-head-base,
#mw-page-base,
#left-navigation,
#right-navigation,
#p-personal,
#p-search,
#p-tb,
#p-cactions,
#p-namespaces,
#p-views,
#p-variants,
#p-coll-print_export,
#p-wikibase-otherprojects,
#p-lang {
    background-color: rgb(var(--black-monochrome)) !important;
}
}


/* 工具条容器 */
.see-more a {
.mw-portlet,
  color: #3366cc;
.vector-menu {
    background-color: rgb(var(--black-monochrome)) !important;
}
}


/* 工具条标题 */
/* 主页横幅样式 */
.mw-portlet h3,
.main-page-banner {
.vector-menu h3,
  display: grid;
.vector-menu-heading {
  grid-template-areas:
    background-color: rgb(var(--bright-accent)) !important;
     "welcome welcome welcome"
    color: rgb(var(--black-monochrome)) !important;
     "discord faq join";
     padding: 0.25em 0.5em !important;
  grid-template-columns: 1fr 1fr 1fr;
     border: none !important;
  grid-column-gap: 3%;
}
  margin-bottom: 4rem;
/* Echo扩展通知图标修复 */
  width: 100%;
/* 通知图标基础样式 */
  box-sizing: border-box;
#pt-notifications-alert,
#pt-notifications-notice,
.mw-echo-notifications-badge,
.mw-echo-notification-badge-nojs {
    background-color: transparent !important;
    border: none !important;
}
}


/* 修复图标颜色和可见性 */
/* 欢迎文本区域 */
#pt-notifications-alert .mw-echo-notifications-badge:before,
.main-page-banner .welcome-text {
#pt-notifications-notice .mw-echo-notifications-badge:before,
  grid-area: welcome;
.mw-echo-notifications-badge:before {
  background-color: rgb(var(--gray-monochrome, 66, 66, 72));
    color: rgb(var(--bright-accent)) !important;
  color: rgb(var(--white-monochrome, 252, 252, 252));
    filter: none !important;
  font-style: italic;
    opacity: 1 !important;
  padding: 1.5rem;
  border-radius: 1rem 1rem 0 0;
  margin: 0;
  width: 100%;
}
}


/* 未读通知计数器 */
.main-page-banner .welcome-text p {
.mw-echo-notifications-badge:after,
  margin: 0;
.mw-echo-notification-badge-nojs:after {
  color: rgb(var(--white-monochrome, 252, 252, 252));
    background-color: rgb(var(--bright-accent)) !important;
    color: rgb(var(--black-monochrome)) !important;
    border: 1px solid rgb(var(--black-monochrome)) !important;
    opacity: 1 !important;
}
}


/* 图标悬停效果 */
/* 导航链接区域 */
#pt-notifications-alert:hover .mw-echo-notifications-badge:before,
.main-page-banner .navigation-links {
#pt-notifications-notice:hover .mw-echo-notifications-badge:before {
  display: grid;
    color: rgb(var(--white-monochrome)) !important;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 3%;
  grid-area: discord / discord / join / join;
  width: 100%;
}
}


/* 修复SVG图标 */
.main-page-banner .nav-button {
.mw-echo-notifications-badge svg,
  background-color: rgb(var(--gray-monochrome, 66, 66, 72));
.oo-ui-icon-bell svg,
  border-radius: 0 0 1rem 1rem;
.oo-ui-icon-tray svg {
  margin: 0 0 4rem 0;
    fill: rgb(var(--bright-accent)) !important;
  transition: margin 150ms cubic-bezier(0.4, 0, 0.2, 1);
    stroke: rgb(var(--bright-accent)) !important;
  height: min-content;
}
}


/* 确保图标容器可见 */
.main-page-banner .nav-button:hover {
#pt-notifications-alert,
  margin: 0 0 1rem 0;
#pt-notifications-notice {
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
}
}


/* 通知面板样式 */
.main-page-banner .nav-button a {
.mw-echo-ui-overlay,
  display: block;
.mw-echo-ui-notificationsWidget {
  padding: 0.5rem 0;
    background-color: rgb(var(--black-monochrome)) !important;
  width: 100%;
    border: 2px solid rgb(var(--bright-accent)) !important;
  text-align: center;
    color: rgb(var(--white-monochrome)) !important;
  color: rgb(var(--white-monochrome, 0, 0, 0));
  font-size: 1.25rem;
  transition: padding 150ms cubic-bezier(0.4, 0, 0.2, 1);
  font-weight: bold;
  text-decoration: none;
}
}


/* 通知项目 */
.main-page-banner .nav-button a:hover {
.mw-echo-ui-notificationItemWidget {
  padding: 2rem 0;
    background-color: rgb(var(--gray-monochrome)) !important;
  text-decoration: none;
    border-bottom: 1px solid rgb(var(--bright-accent)) !important;
    color: rgb(var(--white-monochrome)) !important;
}
}


.mw-echo-ui-notificationItemWidget:hover {
/* 针对背景图片的设置 */
    background-color: rgba(var(--bright-accent), 0.1) !important;
.main-page-banner {
  position: relative;
  z-index: 1;
}
}


/* 通知标题和内容 */
.main-page-banner::before {
.mw-echo-ui-notificationItemWidget-content-message-header {
  content: "";
    color: rgb(var(--bright-accent)) !important;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('您的背景图片URL');
  background-size: cover;
  background-position: center;
  opacity: 0.3; /* 调整透明度使文字可读 */
  z-index: -1;
  border-radius: 1rem;
}
}


.mw-echo-ui-notificationItemWidget-content-message-body {
/* 响应式布局 */
     color: rgb(var(--white-monochrome)) !important;
@media (max-width: 767px) {
  .main-page-banner {
    grid-template-areas:
      "welcome"
      "navigation";
    grid-template-columns: 1fr;
  }
 
  .main-page-banner .welcome-text {
    width: 100%;
    margin-bottom: 0;
    box-sizing: border-box;
  }
 
  .main-page-banner .navigation-links {
    grid-area: navigation;
    display: flex;
    width: 100%;
    overflow: visible;
  }
 
  .main-page-banner .nav-button {
     flex: 1;
    margin: 0 0 4rem 0;
  }
 
  .main-page-banner .nav-button:not(:last-child) {
    margin-right: 3%;
  }
 
  .main-page-banner .nav-button a {
    font-size: 1.1rem;
  }
 
  .main-page-banner .nav-button:hover {
    margin: 0 0 1rem 0;
  }
}
/* Announcement styles */
.announcement-container {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #f0f0f0;
  align-content: space-between;
  margin-bottom: 2rem;
}
}


#pt-notifications-alert .oo-ui-iconElement-icon,
.announcement-container .section-title {
#pt-notifications-notice .oo-ui-iconElement-icon,
  width: 100%;
.mw-echo-notification-badge .oo-ui-iconElement-icon {
  text-align: center;
    background-color: transparent !important;
  font-size: 1.5rem;
  border-left: none;
  border-bottom: 2px solid #f0f0f0;
}
}


/* 只修改通知图标的颜色 */
.announcement-container .announcement-content {
#pt-notifications-alert .oo-ui-icon-bell,
  background-color: #fafafa;
#pt-notifications-notice .oo-ui-icon-tray {
  width: 100%;
    filter: invert(58%) sepia(58%) saturate(1008%) hue-rotate(351deg) brightness(97%) contrast(94%);
  padding: 0.75rem;
}
}
/* 强制显示通知图标 - 针对可能被隐藏的情况 */
 
#p-personal .vector-menu-content-list #pt-notifications-alert,
.announcement-container .more-content {
#p-personal .vector-menu-content-list #pt-notifications-notice {
  width: 100%;
    display: list-item !important;
  border-top: 2px solid #f0f0f0;
    visibility: visible !important;
    opacity: 1 !important;
}
}
 
.announcement-container .collapsible-block.active .collapsible-content {
/* 如果使用Font Awesome或其他图标字体 */
  display: block;
.mw-echo-notifications-badge:before,
.oo-ui-icon-bell:before,
.oo-ui-icon-tray:before {
    color: rgb(var(--bright-accent)) !important;
    opacity: 1 !important;
    visibility: visible !important;
}
}
/* 在顶栏显示用户头像 - 针对变色龙皮肤 */
.announcement-container .collapsible-block {
.navbar-userloggedin,
  width: 100%;
#personal-inner,
}
#p-personal .vector-menu-content-list > li:first-child,
/* 更高特异性的选择器 */
.navbar-personaltools > li:first-child {
.announcement-container .more-content .collapsible-block .collapsible-content {
    position: relative;
  display: none !important;
    padding-left: 30px !important;
}
}


.navbar-userloggedin::before,
.announcement-container .more-content .collapsible-block.active .collapsible-content {
#personal-inner::before,
  display: block !important;
#p-personal .vector-menu-content-list > li:first-child > a::before,
}
.navbar-personaltools > li:first-child > a::before {
.announcement-container .collapsible-header {
    content: "";
  padding: 1rem 0;
    position: absolute;
  text-align: center;
    left: 5px;
  background: rgba(240, 240, 240, 0.7);
    top: 50%;
  cursor: pointer;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    border: 1px solid rgb(var(--bright-accent));
    z-index: 100;
}
}


.announcement-container .collapsible-header:hover {
  background: rgba(240, 240, 240, 1);
}


.announcement-container .collapsible-content {
  padding: 1rem;
  background: #f5f5f5;
}
/* 更高特异性的选择器 */
.announcement-container .more-content .collapsible-block .collapsible-content {
  display: none !important;
}


/* 头像悬停效果 */
.announcement-container .more-content .collapsible-block.active .collapsible-content {
.navbar-userloggedin::before,
  display: block !important;
#personal-inner::before,
}
#p-personal .vector-menu-content-list > li:first-child > a::before,
/* Recent pages styles */
.navbar-personaltools > li:first-child > a::before {
.main-page-content {
    transition: all 0.3s ease !important;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 2rem;
}
}


.navbar-userloggedin:hover::before,
.recent-pages-container {
#personal-inner:hover::before,
  display: flex;
#p-personal .vector-menu-content-list > li:first-child > a:hover::before,
  flex-wrap: wrap;
.navbar-personaltools > li:first-child > a:hover::before {
  justify-content: space-between;
    transform: translateY(-50%) scale(1.2) !important;
  width: 100%;
    box-shadow: 0 0 10px rgba(var(--bright-accent), 0.6) !important;
  margin-bottom: 1rem;
    border-color: rgb(var(--white-monochrome)) !important;
}
}
/* 本段内容来自萌娘百科 https://zh.moegirl.org.cn/MediaWiki:Gadget-site-styles.css 感谢贡献!*/
/* 版权协定:知识共享 署名-非商业性使用-相同方式共享 3.0 */


.heimu,
.recent-pages-container .page-section {
.heimu rt{
  flex-basis: 48%;
    --heimu-color:#252525;
  display: grid;
    --heimu-text-color:#fff;
  grid-template-areas: "title" "page" "more";
    --heimu-link-color:#add8e6;
  grid-template-rows: auto 1fr auto;
    --heimu-visited-link-color:#c5cae9;
  border: 1px solid #f0f0f0;
    --heimu-new-link-color:#fcc;
}
    --heimu-new-visited-link-color:#ef9a9a;
    --heimu-extiw-visited-link-color:#d1c4e9;


    background-color:var(--heimu-color);
.recent-pages-container .section-title {
  grid-area: title;
}
}


.heimu,
.recent-pages-container .page-list {
.heimu a,
  grid-area: page;
a .heimu,
  border: solid #f0f0f0;
a.new .heimu,
  border-width: 0 1px;
span.heimu a:visited,
  padding: 0.5rem 1rem;
span.heimu a.new,
  background-color: #fafafa;
span.heimu a.external,
  max-height: 15rem;
span.heimu a.external:visited,
  overflow-y: auto;
span.heimu a.extiw,
span.heimu a.extiw:visited,
span.heimu a.mw-disambig,
span.heimu a.mw-redirect{
    transition:color 0.13s linear;
    color:var(--heimu-color);
    text-shadow:none;
}
}


span.heimu:hover,
.recent-pages-container .page-list a {
span.heimu:active{
  display: block;
    color:var(--heimu-text-color);
  padding: 0.3rem 0;
  border-bottom: 1px solid #f0f0f0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
}


span.heimu:hover a,
.recent-pages-container .page-list a:last-child {
a:hover span.heimu{
  border-bottom: none;
    color:var(--heimu-link-color);
}
}


span.heimu:hover a:visited,
.recent-pages-container .see-more {
a:visited:hover span.heimu{
  grid-area: more;
    color:var(--heimu-visited-link-color);
}
}


span.heimu:hover a.new,
/* Featured content styles */
a.new:hover span.heimu{
.featured-content-container {
    color:var(--heimu-new-link-color);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}
}


span.heimu a.new:hover:visited,
.featured-content-container .feature-item {
a.new:hover:visited span.heimu{
  flex-basis: 48%;
    color:var(--heimu-new-visited-link-color);
  display: grid;
  grid-template-areas: "title" "content" "more";
  grid-template-rows: auto 1fr auto;
  border: 1px solid #f0f0f0;
  margin-bottom: 1rem;
}
}


span.heimu:hover a.extiw:visited,
.featured-content-container .section-title {
a.extiw:visited:hover span.heimu{
  grid-area: title;
    color:var(--heimu-extiw-visited-link-color);
}
}
[color-mode="dark"] .heimu,
 
[color-mode="dark"] .heimu rt{
.featured-content-container .feature-content {
    --heimu-color:#5e6272;
  grid-area: content;
  border: solid #f0f0f0;
  border-width: 0 1px;
  padding: 1rem;
  background-color: #fafafa;
}
}


/*
.featured-content-container .feature-content .featured-title {
该文档为一个hover特效库,由一些常用的效果以及GitHub上的开源项目“Hover.css”的一些部分构成。
  font-size: 1.2rem;
请使用hovers在页面中进行载入。
  font-weight: bold;
*/
  margin-bottom: 0.5rem;
}


/* hover状态切换 */
.featured-content-container .feature-content .featured-author {
.hover-change,
   font-size: 0.9rem;
.hover-remote {
   color: #666;
   position: relative;
   margin-bottom: 0.5rem;
   display: inline-block;
   transition: opacity 0.5s linear;
}
}


.hover-change-before,
.featured-content-container .feature-content .featured-description {
.hover-change-after,
  font-style: italic;
.hover-remote-target {
   color: #444;
   transition: inherit;
}
}


.hover-change-after,
.featured-content-container .see-more {
.hover-remote-target {
   grid-area: more;
   opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}
}
.hover-remote-target {
 
   left: 100%;
/* Tools and resources styles */
.tools-and-resources {
   margin-bottom: 2rem;
}
}


.hover-change-after[style^='right:'],
.tools-container {
.hover-change-after[style*=' right:'],
  display: grid;
.hover-remote-after[style^='right:'],
  grid-template-columns: 1fr 1fr;
.hover-remote-after[style*=' right:'] {
  grid-gap: 1rem;
  left: initial;
}
}


.hover-change-after[style^='bottom:'],
.tools-container .tool-item {
.hover-change-after[style*=' bottom:'],
  background: #f5f5f5;
.hover-remote-after[style^='bottom:'],
  color: #333;
.hover-remote-after[style*=' bottom:'] {
  padding: 1rem;
   top: initial;
  display: grid;
  grid-template-areas:
    "icon content"
    "title content";
  grid-template-columns: max-content 1fr;
  grid-template-rows: 0.6fr 0.4fr;
  grid-gap: 0.5rem 1rem;
   border-left: 4px solid #3366cc;
}
}


.hover-change-after:hover,
.tools-container .tool-item .tool-icon {
.hover-remote-target {
   grid-area: icon;
   opacity: 0;
   justify-self: center;
   margin-left: -9999px;
  align-self: end;
}
}


/* 主要用于制作hover形式的标签页(tab)切换 */
.tools-container .tool-item .tool-title {
.hover-tab-mode {
  grid-area: title;
   position: relative;
  text-align: center;
   transition: none;
}
 
.tools-container .tool-item .tool-title a {
   color: #3366cc;
   font-weight: bold;
}
}
.hover-tab-mode .hover-remote {
 
   transition: inherit;
.tools-container .tool-item .tool-description {
   position: static;
   grid-area: content;
   align-self: center;
}
}


/* 闪烁效果 */
/* News styles */
.hover-change.flash:hover .hover-change-before {
.news-container {
   margin-left: -9999px;
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #f0f0f0;
   align-content: space-between;
}
}


.hover-change:hover > .hover-change-before,
.news-container .section-title {
.hover-remote > .hover-remote-target,
  width: 100%;
.hover-change:hover > a > .hover-change-before,
  text-align: center;
.hover-remote > a > .hover-remote-target {
  font-size: 1.5rem;
   opacity: 0;
  border-left: none;
   border-bottom: 2px solid #f0f0f0;
}
}


.hover-change:hover > .hover-change-after,
.news-container .news-content {
.hover-remote:hover > .hover-remote-target,
  background-color: #fafafa;
.hover-change:hover > a > .hover-change-after,
   width: 100%;
.hover-remote:hover > a > .hover-remote-target {
   padding: 0.75rem;
   opacity: 1;
   margin-left: initial;
}
}


/* 基类 */
.news-container .news-content .news-item {
[class*='hovers-'] {
   border-bottom: 1px solid #f0f0f0;
   display: inline-block;
   padding: 0.5rem 0;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
   transform: perspective(1px) translateZ(0);
  vertical-align: middle;
  transition-duration: 0.25s;
  transition-property: all;
}
}


/* 旋转放大 */
.news-container .news-content .news-item:last-child {
.hovers-rotate-shrink {
   border-bottom: none;
   transition-duration: 0.5s;
  transform: rotate(0) scale(0.75);
}
}
.hovers-rotate-shrink:hover {
 
   transform: rotate(360deg) scale(1);
.news-container .news-content .news-title {
  font-weight: bold;
   margin-bottom: 0.3rem;
}
}


.hovers-rotate-shrink-reverse {
.news-container .news-content .news-date {
   transition-duration: 0.5s;
   font-size: 0.8rem;
   transform: rotate(360deg) scale(0.75);
   color: #666;
  margin-bottom: 0.3rem;
}
}


.hovers-rotate-shrink-reverse:hover {
.news-container .news-archive {
   transform: rotate(0) scale(1);
  background: #f0f0f0;
  text-align: right;
  width: 100%;
   padding: 0.3rem 1rem;
}
}


/* 旋转 */
.news-container .news-archive a {
.hovers-rotate,
   color: #3366cc;
.hovers-rotate-reverse:hover {
   transition-duration: 0.5s;
  transform: rotate(0);
}
}


.hovers-rotate-reverse,
/* Carousel styles */
.hovers-rotate:hover {
/* Import styles from main.scss file */
   transition-duration: 0.5s;
.carousel-container {
   transform: rotate(360deg);
  position: relative;
   overflow: hidden;
   margin-bottom: 1rem;
}
}


/* 正常 => 浅 */
.carousel-container .rolling {
.hovers-fade-deep,
  display: flex;
.hovers-fade,
  flex-direction: column;
.hovers-fade-shallow {
  height: 100%;
   opacity: 1;
  position: relative;
   overflow: hidden;
}
}
.hovers-fade-deep:hover,
 
.hovers-fade-deep.active {
/* Add more carousel styles converted from SCSS */
   opacity: 0.35;
/* These would need to be adapted from the complex SCSS you provided */
 
/* Responsive styles */
@media (max-width: 767px) {
  .announcement-container .section-title {
    font-size: 1.2rem;
  }
 
  .recent-pages-container .page-section,
  .featured-content-container .feature-item {
    flex-basis: 100%;
    margin-bottom: 1.5rem;
   }
 
  .tools-container {
    grid-template-columns: 1fr;
  }
}
}
.hovers-fade:hover,
/* 为主内容区域添加半透明模糊白色效果 - 只针对最外层容器 */
.hovers-fade.active {
.mw-body,
   opacity: 0.5;
#content {
  background-color: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.08) !important;
  border-radius: 12px !important;
  padding: 25px !important;
  margin-bottom: 20px !important;
   border: 1px solid rgba(0, 0, 0, 0.05) !important;
  min-height: 500px !important;
}
}
.hovers-fade-shallow:hover,
 
.hovers-fade-shallow.active {
/* 确保标题与新的背景相协调 */
   opacity: 0.75;
.mw-body h1, .mw-body h2, .mw-body h3, .mw-body h4, .mw-body h5, .mw-body h6 {
   border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
  padding-bottom: 0.3em !important;
}
}
/* ===== 变色龙皮肤顶栏毛玻璃效果 - 修复点击与悬停兼容版 ===== */


/* 浅 => 正常 */
/* 1. 顶栏基础样式 - 半透明毛玻璃效果 */
.hovers-bloom-deep {
html body nav.navbar,
   opacity: 0.35;
html body div.navbar,
html body .navbar-fixed-top,
html body .navbar-default,
html body .navbar-collapse {
   background-color: rgba(255, 255, 255, 0.75) !important;
  backdrop-filter: blur(10px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(10px) saturate(180%) !important;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08) !important;
  border: none !important;
  transition: all 0.3s ease !important;
 
  /* 解决z-index问题 */
  position: relative !important;
  z-index: 9999 !important;
}
}
.hovers-bloom {
 
   opacity: 0.5;
/* 2. 导航链接样式 */
.navbar .nav > li > a,
.navbar-nav > li > a {
   color: rgba(0, 0, 0, 0.75) !important;
  transition: all 0.25s ease !important;
  padding: 15px 20px !important;
  font-weight: 500 !important;
}
}
.hovers-bloom-shallow {
 
   opacity: 0.75;
/* 3. 链接悬停效果 */
.navbar .nav > li > a:hover,
.navbar-nav > li > a:hover {
   color: rgba(0, 0, 0, 0.95) !important;
  background-color: rgba(0, 0, 0, 0.05) !important;
  transform: scale(1.05) !important;
}
}


.hovers-bloom-deep:hover,
/* 4. 下拉菜单样式 */
.hovers-bloom-deep.active,
.dropdown-menu {
.hovers-bloom:hover,
  background-color: rgba(255, 255, 255, 0.9) !important;
.hovers-bloom.active,
  backdrop-filter: blur(10px) !important;
.hovers-bloom-shallow:hover,
  -webkit-backdrop-filter: blur(10px) !important;
.hovers-bloom-shallow.active {
  border-radius: 8px !important;
   opacity: 1;
  border: none !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1) !important;
  padding: 8px 0 !important;
  overflow: hidden !important;
 
  /* z-index修复 */
   z-index: 10000 !important;
}
}


/* 正常 => 大 */
/* 5. 下拉菜单项样式 */
.hovers-grow-deep,
.dropdown-menu > li > a {
.hovers-grow,
  padding: 10px 20px !important;
.hovers-grow-shallow {
  color: rgba(0, 0, 0, 0.75) !important;
   transform: scale(1);
   transition: all 0.2s ease !important;
}
}
.hovers-grow-deep:hover,
 
.hovers-grow-deep.active {
/* 6. 下拉菜单项悬停效果 */
   transform: scale(1.5);
.dropdown-menu > li > a:hover {
  background-color: rgba(0, 0, 0, 0.08) !important;
  color: rgba(0, 0, 0, 0.95) !important;
   transform: translateX(5px) !important;
  font-weight: 500 !important;
}
}
.hovers-grow:hover,
 
.hovers-grow.active {
/* 7. 确保主内容区域不会覆盖导航栏 */
  transform: scale(1.25);
.mw-body,
}
#content,
.hovers-grow-shallow:hover,
#mw-content-text,  
.hovers-grow-shallow.active {
.mw-parser-output {
   transform: scale(1.1);
   z-index: 1 !important;
  position: relative !important;
}
}


/* 正常 => 小 */
/* 8. 移动设备特殊处理 */
.hovers-shrink-deep:hover,
@media (max-width: 767px) {
.hovers-shrink-deep.active,
  .navbar-collapse {
.hovers-shrink:hover,
    background-color: rgba(255, 255, 255, 0.95) !important;
.hovers-shrink.active,
    max-height: 80vh !important;
.hovers-shrink-shallow:hover,
    overflow-y: auto !important;
.hovers-shrink-shallow.active {
    z-index: 10001 !important;
  transform: scale(1);
}
.hovers-shrink-deep {
  transform: scale(0.5);
}
.hovers-shrink {
  transform: scale(0.75);
}
.hovers-shrink-shallow {
  transform: scale(0.9);
}
 
/* 左右抖动 */
@keyframes shake-flexible {
  25% {
    transform: translateX(-0.0625em);
   }
   }
 
 
   50% {
   .navbar-nav .open .dropdown-menu {
     transform: translateX(0.0625em);
     background-color: rgba(245, 245, 245, 0.9) !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
   }
   }
 
 
   75% {
   .dropdown-menu > li > a:hover {
     transform: translateX(-0.0625em);
     transform: translateX(3px) !important;
   }
   }
}
}


.hovers-shake-flexible:hover,
/* 9. 浏览器兼容性处理 */
.hovers-shake-flexible.active {
@supports not (backdrop-filter: blur(10px)) {
  animation: shake-flexible 0.5s ease-out;
   .navbar, .dropdown-menu {
}
     background-color: rgba(255, 255, 255, 0.95) !important;
 
@keyframes shake {
  25% {
    transform: translateX(-8px);
  }
 
  50% {
    transform: translateX(8px);
   }
 
  75% {
     transform: translateX(-8px);
   }
   }
}
}


.hovers-shake:hover,
/* 在顶栏显示用户头像 - 针对变色龙皮肤 */
.hovers-shake.active {
.navbar-userloggedin,
  animation: shake 0.5s ease-out;
#personal-inner,
#p-personal .vector-menu-content-list > li:first-child,
.navbar-personaltools > li:first-child {
    position: relative;
    padding-left: 30px !important;
}
}


/* 上下抖动 */
.navbar-userloggedin::before,
@keyframes bounce-flexible {
#personal-inner::before,
  25% {
#p-personal .vector-menu-content-list > li:first-child > a::before,
     transform: translateY(-0.0625em);
.navbar-personaltools > li:first-child > a::before {
  }
     content: "";
 
    position: absolute;
  50% {
    left: 5px;
     transform: translateY(0.0625em);
    top: 50%;
  }
     transform: translateY(-50%);
 
    width: 24px;
  75% {
    height: 24px;
     transform: translateY(-0.0625em);
    border-radius: 50%;
  }
    background-size: cover;
    background-position: center;
     border: 1px solid rgb(var(--bright-accent));
    z-index: 100;
}
}


.hovers-bounce-flexible:hover,
/* 头像悬停效果 */
.hovers-bounce-flexible.active {
.navbar-userloggedin:hover::before,
   animation: bounce-flexible 0.5s ease-out;
#personal-inner:hover::before,
#p-personal .vector-menu-content-list > li:first-child > a:hover::before,
.navbar-personaltools > li:first-child > a:hover::before {
    transform: translateY(-50%) scale(1.2) !important;
    box-shadow: 0 0 10px rgba(var(--bright-accent), 0.6) !important;
    border-color: rgb(var(--white-monochrome)) !important;
}
/* 主页横幅样式 - 美化版 */
.main-page-banner {
   display: grid !important;
  grid-template-areas:
    "welcome welcome welcome"
    "discord faq join" !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  grid-column-gap: 3% !important;
  margin-bottom: 4rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
  box-shadow: 0 5px 25px rgba(0, 0, 0, 0.1) !important;
  position: relative !important;
  z-index: 1 !important;
  border-radius: 1rem !important;
  overflow: hidden !important;
}
}


@keyframes bounce {
/* 欢迎文本区域 */
   25% {
.main-page-banner .welcome-text {
    transform: translateY(-8px);
   grid-area: welcome !important;
   }
  background: linear-gradient(135deg, rgba(235, 238, 245, 0.95), rgba(210, 225, 240, 0.95)) !important;
  color: #3a4a5a !important;
  font-style: normal !important;
  padding: 2rem !important;
  border-radius: 1rem 1rem 0 0 !important;
  margin: 0 !important;
  width: 100% !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.5s ease !important;
   z-index: 2 !important;
}


   50% {
/* 欢迎文本背景图片 */
    transform: translateY(8px);
.main-page-banner .welcome-text::before {
  }
   content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-image: url('/aoh2wiki/images/b/be/Banner_Default.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
  opacity: 0.15 !important;
  z-index: -1 !important;
  transition: opacity 0.8s ease, transform 1.2s ease !important;
  transform: scale(1.05) !important;
}


   75% {
.main-page-banner .welcome-text p {
    transform: translateY(-8px);
   margin: 0 !important;
   }
  color: #3a4a5a !important;
  font-weight: 500 !important;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.8) !important;
  position: relative !important;
  z-index: 2 !important;
  font-size: 1.1rem !important;
   line-height: 1.6 !important;
}
}


.hovers-bounce:hover,
/* 导航链接区域 */
.hovers-bounce.active {
.main-page-banner .navigation-links {
   position: relative;
  display: grid !important;
   left: 0;
  grid-template-columns: 1fr 1fr 1fr !important;
   animation: bounce 0.5s ease-out;
  grid-column-gap: 3% !important;
  grid-area: discord / discord / join / join !important;
   width: 100% !important;
   background: linear-gradient(to bottom, rgba(225, 235, 245, 0.9), rgba(215, 225, 235, 0.9)) !important;
   padding: 0.5rem !important;
  border-radius: 0 0 1rem 1rem !important;
}
}


/* 绕顶端中点抖动 */
.main-page-banner .nav-button {
@keyframes swing {
  background: linear-gradient(to bottom, #f0f5fa, #e8eef7) !important;
   20% {
  border-radius: 0.7rem !important;
    transform: rotate3d(0, 0, 1, 10deg);
  margin: 0 0.5rem 2.5rem 0.5rem !important;
   }
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  height: min-content !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08) !important;
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid rgba(210, 220, 235, 0.8) !important;
}
 
/* 导航按钮的背景图片 - 初始隐藏 */
.main-page-banner .nav-button::before {
   content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-size: cover !important;
  background-position: center !important;
  opacity: 0 !important;
  z-index: 0 !important;
   transition: opacity 0.6s ease !important;
}


  40% {
/* 为每个按钮设置不同的背景图片 */
    transform: rotate3d(0, 0, 1, -10deg);
.main-page-banner .nav-button.discord::before {
  }
  background-image: url('/aoh2wiki/images/b/be/Discord_Banner.jpg') !important;
}


  60% {
.main-page-banner .nav-button.faq::before {
    transform: rotate3d(0, 0, 1, 5deg);
  background-image: url('/aoh2wiki/images/b/be/FAQ_Banner.jpg') !important;
  }
}


  80% {
.main-page-banner .nav-button.join::before {
    transform: rotate3d(0, 0, 1, -5deg);
  background-image: url('/aoh2wiki/images/b/be/Join_Banner.jpg') !important;
  }
}


   to {
.main-page-banner .nav-button:hover {
    transform: rotate3d(0, 0, 1, 0deg);
   margin: 0 0.5rem 0.8rem 0.5rem !important;
  }
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15) !important;
}
}


.hovers-swing {
/* 鼠标悬停时显示背景图片 */
   transform-origin: top center;
.main-page-banner .nav-button:hover::before {
   opacity: 0.2 !important;
}
}
.hovers-swing:hover,
 
.hovers-swing.active {
/* 鼠标悬停时变更欢迎区域的背景图片 */
   animation: swing 0.75s ease-out;
.main-page-banner .navigation-links:hover ~ .welcome-text::before {
   opacity: 0.1 !important;
}
}


/* 正常 => 大 */
.main-page-banner .nav-button.discord:hover ~ .welcome-text::before,
@keyframes pulse-grow {
.main-page-banner:has(.nav-button.discord:hover) .welcome-text::before {
   to {
   background-image: url('/aoh2wiki/images/b/be/Discord_Banner.jpg') !important;
    transform: scale(1.1);
  opacity: 0.25 !important;
   }
  transform: scale(1) !important;
}
 
.main-page-banner .nav-button.faq:hover ~ .welcome-text::before,
.main-page-banner:has(.nav-button.faq:hover) .welcome-text::before {
  background-image: url('/aoh2wiki/images/b/be/FAQ_Banner.jpg') !important;
   opacity: 0.25 !important;
  transform: scale(1) !important;
}
}


.hovers-pulse-grow:hover,
.main-page-banner .nav-button.join:hover ~ .welcome-text::before,
.hovers-pulse-grow.active {
.main-page-banner:has(.nav-button.join:hover) .welcome-text::before {
   animation: pulse-grow 0.5s linear infinite alternate;
   background-image: url('/aoh2wiki/images/b/be/Join_Banner.jpg') !important;
  opacity: 0.25 !important;
  transform: scale(1) !important;
}
}


/* 正常 => 小 */
.main-page-banner .nav-button a {
@keyframes pulse-shrink {
  display: block !important;
   to {
  padding: 1rem 0 !important;
    transform: scale(0.9);
  width: 100% !important;
   }
  text-align: center !important;
  color: #4a5a6a !important;
   font-size: 1.15rem !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  font-weight: bold !important;
  text-decoration: none !important;
  position: relative !important;
   z-index: 2 !important;
}
}


.hovers-pulse-shrink:hover,
.main-page-banner .nav-button a:hover {
.hovers-pulse-shrink.active {
  padding: 1.5rem 0 !important;
   animation: pulse-shrink 0.5s linear infinite alternate;
  text-decoration: none !important;
   color: #3a4a5a !important;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.5) !important;
}
}


/* 正常 => 小 */
/* 响应式调整 */
@keyframes push {
@media (max-width: 767px) {
   50% {
  .main-page-banner {
     transform: scale(0.8);
    grid-template-areas:
      "welcome"
      "navigation" !important;
    grid-template-columns: 1fr !important;
  }
 
  .main-page-banner .welcome-text {
    border-radius: 1rem 1rem 0 0 !important;
  }
 
  .main-page-banner .navigation-links {
    grid-area: navigation !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-around !important;
    padding: 0.8rem !important;
  }
    
  .main-page-banner .nav-button {
    flex: 1 !important;
    min-width: 30% !important;
    margin: 0 0.3rem 2rem 0.3rem !important;
  }
 
  .main-page-banner .nav-button:hover {
     margin: 0 0.3rem 0.8rem 0.3rem !important;
   }
   }
}
}


.hovers-push:hover,
/* 添加淡入动画效果 */
.hovers-push.active {
@keyframes fadeIn {
   animation: push 0.3s linear;
  from { opacity: 0; transform: translateY(10px); }
   to { opacity: 1; transform: translateY(0); }
}
}


/* 正常 => 大 */
.main-page-banner {
@keyframes pop {
  animation: fadeIn 0.8s ease-out forwards !important;
   50% {
}
    transform: scale(1.2);
/* 公告列表样式 */
   }
.announcement-container .announcement-list {
   list-style: none;
  padding: 0;
   margin: 0;
}
}


.hovers-pop:hover,
.announcement-container .announcement-list li {
.hovers-pop.active {
  padding: 10px 0;
   animation: pop 0.3s linear;
  border-bottom: 1px solid #f0f0f0;
   margin: 0;
  line-height: 1.5;
  color: #333;
}
}


/* 正常 => 大 => 正常 => 大 */
.announcement-container .announcement-list li:last-child {
.hovers-bounce-in:hover,
   border-bottom: none;
.hovers-bounce-in.active {
   transform: scale(1.2);
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}
}


/* 正常 => 小 => 正常 => 小 */
/* 链接样式 */
.hovers-bounce-out:hover,
.announcement-container .announcement-list li a {
.hovers-bounce-out.active {
   color: #3366cc;
   transform: scale(0.8);
   text-decoration: none;
   transition-duration: 0.5s;
   transition: color 0.2s ease;
   transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}
}


/* 倾斜 */
.announcement-container .announcement-list li a:hover {
.hovers-tilt:hover,
   color: #1a3366;
.hovers-tilt.active {
   text-decoration: underline;
   transition-duration: 0.3s;
   transform: rotate(4deg);
}
}


/* 倾斜 + 放大 */
/* 鼠标悬停效果 */
.hovers-grow-rotate:hover,
.announcement-container .announcement-list li:hover {
.hovers-grow-rotate.active {
  background-color: #f9f9f9;
   transition-duration: 0.3s;
}
   transform: scale(1.1) rotate(4deg);
/* 公告容器样式 */
.announcement-container {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #f0f0f0;
  align-content: space-between;
  margin-bottom: 2rem;
}
 
.announcement-container .section-title {
   width: 100%;
  text-align: center;
  font-size: 1.5rem;
  background-color: #f0f0f0;
  color: #333;
  padding: 0.5rem 1rem;
  border-left: none;
  border-bottom: 2px solid #f0f0f0;
}
 
.announcement-container .announcement-content {
  background-color: #fafafa;
  width: 100%;
   padding: 0.75rem;
}
}


/* 升起 */
/* 公告项目样式 */
.hovers-float:hover,
.announcement-container .announcement {
.hovers-float.active {
  padding: 12px;
   transition-duration: 0.3s;
  margin-bottom: 10px;
   transition-timing-function: ease-out;
   background-color: #fff;
   transform: translateY(-8px);
   border-left: 3px solid #3366cc;
  border-radius: 0 3px 3px 0;
   box-shadow: 0 1px 3px rgba(0,0,0,0.1);
  transition: all 0.2s ease;
}
}


/* 下沉 */
.announcement-container .announcement:last-child {
.hovers-sink:hover,
   margin-bottom: 0;
.hovers-sink.active {
   transition-duration: 0.3s;
  transition-timing-function: ease-out;
  transform: translateY(8px);
}
}


/* 飘浮 */
.announcement-container .announcement:hover {
@keyframes bob {
  background-color: #f8f8f8;
   0% {
   border-left-width: 5px;
    transform: translateY(-10px);
  transform: translateX(2px);
  }
}
  50% {
 
    transform: translateY(-5px);
/* 公告中的链接样式 */
   }
.announcement-container .announcement a {
  100% {
  color: #3366cc;
    transform: translateY(-10px);
  text-decoration: none;
   }
   transition: color 0.2s ease;
}
 
.announcement-container .announcement a:hover {
  color: #1a3366;
  text-decoration: underline;
}
 
/* 粗体文字样式 */
.announcement-container .announcement strong,
.announcement-container .announcement b {
   color: #333;
}
}
@keyframes bob-float {
 
   100% {
/* 折叠区域样式 */
    transform: translateY(-10px);
.announcement-container .more-content {
  }
   width: 100%;
  border-top: 2px solid #f0f0f0;
}
}


.hovers-bob:hover,
.announcement-container .collapsible-block .collapsible-header {
.hovers-bob.active {
   padding: 1rem 0;
   animation-name: bob-float, bob;
   text-align: center;
   animation-duration: 0.3s, 1.5s;
   background: rgba(240, 240, 240, 0.7);
   animation-delay: 0s, 0.3s;
   cursor: pointer;
   animation-timing-function: ease-out, ease-in-out;
   transition: background 0.2s ease;
   animation-iteration-count: 1, infinite;
  animation-fill-mode: forwards;
  animation-direction: normal, alternate;
}
}


/* 悬挂 */
.announcement-container .collapsible-block .collapsible-header:hover {
@keyframes hang {
   background: rgba(240, 240, 240, 1);
  0% {
    transform: translateY(10px);
  }
  50% {
    transform: translateY(5px);
  }
   100% {
    transform: translateY(10px);
  }
}
}
@keyframes hang-sink {
 
   100% {
.announcement-container .collapsible-block .collapsible-content {
    transform: translateY(10px);
   padding: 1rem;
   }
   background: #f5f5f5;
}
}


.hovers-hang:hover,
/* 响应式调整 */
.hovers-hang.active {
@media (max-width: 767px) {
  animation-name: hang-sink, hang;
  .announcement-container .section-title {
  animation-duration: 0.3s, 1.5s;
    font-size: 1.2rem;
   animation-delay: 0s, 0.3s;
   }
   animation-timing-function: ease-out, ease-in-out;
    
   animation-iteration-count: 1, infinite;
   .announcement-container .announcement {
  animation-fill-mode: forwards;
    padding: 10px;
   animation-direction: normal, alternate;
   }
}
}
 
.gallery {
/* 非对称 */
   display: flex !important;
.hovers-skew:hover,
   flex-direction: row !important;
.hovers-skew.active {
  flex-wrap: wrap !important;
  transform: skew(-10deg);
}
 
/* 非对称-左 */
.hovers-skew-forward {
  transform-origin: 0 100%;
}
.hovers-skew-forward:hover,
.hovers-skew-forward.active {
  transform: skew(-10deg);
}
 
/* 非对称-右 */
.hovers-skew-backward {
  transform-origin: 0 100%;
}
.hovers-skew-backward:hover,
.hovers-skew-backward.active {
  transform: skew(10deg);
}
 
/* 垂直抖动 */
@keyframes wobble-vertical {
  16.65% {
    transform: translateY(8px);
  }
  33.3% {
    transform: translateY(-6px);
  }
  49.95% {
    transform: translateY(4px);
  }
  66.6% {
    transform: translateY(-2px);
  }
  83.25% {
    transform: translateY(1px);
  }
  100% {
    transform: translateY(0);
  }
}
 
.hovers-wobble-vertical:hover,
.hovers-wobble-vertical.active {
  animation-name: wobble-vertical;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
 
/* 水平抖动 */
@keyframes wobble-horizontal {
  16.65% {
    transform: translateX(8px);
  }
  33.3% {
    transform: translateX(-6px);
  }
  49.95% {
    transform: translateX(4px);
  }
  66.6% {
    transform: translateX(-2px);
  }
  83.25% {
    transform: translateX(1px);
  }
  100% {
    transform: translateX(0);
  }
}
.hovers-wobble-horizontal:hover,
.hovers-wobble-horizontal.active {
  animation-name: wobble-horizontal;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
 
/* 右下弹回 */
@keyframes wobble-to-bottom-right {
  16.65% {
    transform: translate(8px, 8px);
  }
  33.3% {
    transform: translate(-6px, -6px);
  }
  49.95% {
    transform: translate(4px, 4px);
  }
  66.6% {
    transform: translate(-2px, -2px);
  }
  83.25% {
    transform: translate(1px, 1px);
  }
  100% {
    transform: translate(0, 0);
  }
}
 
.hovers-wobble-to-bottom-right:hover,
.hovers-wobble-to-bottom-right.active {
  animation-name: wobble-to-bottom-right;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
 
/* 右上弹回 */
@keyframes wobble-to-top-right {
  16.65% {
    transform: translate(8px, -8px)
  }
  33.3% {
    transform: translate(-6px, 6px);
  }
  49.95% {
    transform: translate(4px, -4px);
  }
  66.6% {
    transform: translate(-2px, 2px);
  }
  83.25% {
    transform: translate(1px, -1px);
  }
  100% {
    transform: translate(0);
  }
}
 
.hovers-wobble-to-top-right:hover,
.hovers-wobble-to-top-right.active {
  animation-name: wobble-to-top-right;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
 
/* 果冻 */
@keyframes wobble-top {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}
 
/* 赘肉 */
.hovers-wobble-top {
  transform-origin: 0 100%;
}
.hovers-wobble-top:hover,
.hovers-wobble-top.active {
  animation-name: wobble-top;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
 
@keyframes wobble-bottom {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}
 
.hovers-wobble-bottom {
  transform-origin: 100% 0;
}
.hovers-wobble-bottom:hover,
.hovers-wobble-bottom.active {
  animation-name: wobble-bottom;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
 
/* 颤动 */
@keyframes wobble-skew {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}
.hovers-wobble-skew:hover,
.hovers-wobble-skew.active {
  animation-name: wobble-skew;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}
 
/* 振动 */
@keyframes buzz {
  50% {
    transform: translateX(3px) rotate(2deg);
  }
  100% {
    transform: translateX(-3px) rotate(-2deg);
  }
}
 
.hovers-buzz:hover,
.hovers-buzz.active {
  animation-name: buzz;
  animation-duration: 0.15s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
 
/* 振出 */
@keyframes buzz-out {
  10% {
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    transform: translateX(1px) rotate(0);
  }
  100% {
    transform: translateX(-1px) rotate(0);
  }
}
 
.hovers-buzz-out:hover,
.hovers-buzz-out.active {
  animation-name: buzz-out;
  animation-duration: 0.75s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}
 
/* 右移 */
.hovers-forward:hover,
.hovers-forward.active {
  transform: translateX(8px);
}
 
/* 左移 */
.hovers-backward:hover,
.hovers-backward.active {
  transform: translateX(-8px);
}
 
/* 自由移动 */
.hovers-top,
.hovers-left,
.hovers-bottom,
.hovers-right {
  transition: all 0.5s;
}
 
.hovers-top:hover,
.hovers-top.active {
  transform: translateY(-0.0625em);
}
 
.hovers-left:hover,
.hovers-left.active {
  transform: translateX(-0.0625em);
}
 
.hovers-bottom:hover,
.hovers-bottom.active {
  transform: translateY(0.0625em);
}
 
.hovers-right:hover,
.hovers-right.active {
  transform: translateX(0.0625em);
}
 
/* 滤镜 */
.hovers-blur,
.hovers-blur-reverse,
.hovers-brightness,
.hovers-brightness-reverse,
.hovers-contrast,
.hovers-contrast-reverse,
.hovers-grayscale,
.hovers-grayscale-reverse,
.hovers-invert,
.hovers-invert-reverse,
.hovers-saturate,
.hovers-saturate-reverse,
.hovers-sepia,
.hovers-sepia-reverse,
.hovers-hue-rotate,
.hovers-hue-rotate-reverse {
  transition-duration: 0.75s;
}
 
.hovers-blur:hover,
.hovers-blur.active,
.hovers-brightness:hover,
.hovers-brightness.active,
.hovers-contrast:hover,
.hovers-contrast.active,
.hovers-grayscale:hover,
.hovers-grayscale.active,
.hovers-invert:hover,
.hovers-invert.active,
.hovers-saturate:hover,
.hovers-saturate.active,
.hovers-sepia:hover,
.hovers-sepia.active,
.hovers-hue-rotate:hover,
.hovers-hue-rotate.active {
  filter: initial;
}
 
.hovers-blur {
  filter: blur(5px);
}
 
.hovers-blur-reverse:hover,
.hovers-blur-reverse.active {
  filter: blur(5px);
}
 
.hovers-brightness {
  filter: brightness(50%);
}
 
.hovers-brightness-reverse:hover,
.hovers-brightness-reverse.active {
  filter: brightness(50%);
}
 
.hovers-contrast {
  filter: contrast(50%);
}
 
.hovers-contrast-reverse:hover,
.hovers-contrast-reverse.active {
  filter: contrast(50%);
}
 
.hovers-grayscale {
  filter: grayscale(100%);
}
 
.hovers-grayscale-reverse:hover,
.hovers-grayscale-reverse.active {
  filter: grayscale(100%);
}
 
.hovers-invert {
  filter: invert(100%);
}
 
.hovers-invert-reverse:hover,
.hovers-invert-reverse.active {
  filter: invert(100%);
}
 
.hovers-saturate {
  filter: saturate(200%);
}
 
.hovers-saturate-reverse:hover,
.hovers-saturate-reverse.active {
  filter: saturate(200%);
}
 
.hovers-sepia {
  filter: sepia(100%);
}
 
.hovers-sepia-reverse:hover,
.hovers-sepia-reverse.acitve {
  filter: sepia(100%);
}
 
.hovers-hue-rotate {
  filter: hue-rotate(180deg);
}
 
.hovers-hue-rotate-reverse:hover,
.hovers-hue-rotate-reverse.active {
  filter: hue-rotate(180deg);
}
 
/* 背景滑动 */
.hovers-sweep-to-right,
.hovers-sweep-to-left,
.hovers-sweep-to-bottom,
.hovers-sweep-to-top,
.hovers-radial-out,
.hovers-radial-in {
  position: relative;
  transition-duration: 0.3s;
  transition-timing-function: ease-out;
  overflow: hidden;
}
 
.hovers-sweep-to-right:before,
.hovers-sweep-to-left:before,
.hovers-sweep-to-bottom:before,
.hovers-sweep-to-top:before,
.hovers-radial-out:before,
.hovers-radial-in:before {
  content: '';
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: inherit;
  transform: scaleX(0);
  transition: inherit;
}
.hovers-sweep-to-bottom:before,
.hovers-sweep-to-top:before {
  transform: scaleY(0);
}
.hovers-radial-out:before,
.hovers-radial-in:before {
  border-radius: 50%;
  transform: scale(0);
}
.hovers-radial-in:before {
  transform: scale(2);
}
 
.hovers-sweep-to-right:before {
  transform-origin: 0 50%;
}
.hovers-sweep-to-left:before {
  transform-origin: 100% 50%;
}
.hovers-sweep-to-bottom:before {
  transform-origin: 50% 0;
}
.hovers-sweep-to-top:before {
  transform-origin: 50% 100%;
}
.hovers-radial-out:hover:before,
.hovers-radial-out.active:before {
  transform: scale(2);
}
.hovers-radial-in:hover:before,
.hovers-radial-in.active:before {
  transform: scale(0);
}
 
.hovers-sweep-to-right .hovers-content.center,
.hovers-sweep-to-left .hovers-content.center,
.hovers-sweep-to-bottom .hovers-content.center,
.hovers-sweep-to-top .hovers-content.center,
.hovers-radial-out .hovers-content.center,
.hovers-radial-in .hovers-content.center {
   display: flex;
   align-items: center;
  justify-content: center;
  word-break: break-all;
}
 
.hovers-sweep-to-right:hover:before,
.hovers-sweep-to-left:hover:before,
.hovers-sweep-to-bottom:hover:before,
.hovers-sweep-to-top:hover:before,
.hovers-sweep-to-right.active:before,
.hovers-sweep-to-left:hover:before,
.hovers-sweep-to-bottom:hover:before,
.hovers-sweep-to-top:hover:before {
  transform: scaleX(1);
}
 
.hovers-sweep-to-right .hovers-content,
.hovers-sweep-to-left .hovers-content,
.hovers-sweep-to-bottom .hovers-content,
.hovers-sweep-to-top .hovers-content,
.hovers-radial-out .hovers-content,
.hovers-radial-in .hovers-content {
  width: 100%;
  height: 100%;
  position: absolute;
  transition-property: all;
  transition-duration: inherit;
  top: 0;
  left: 0;
  z-index: 11;
}
 
.hovers-sweep-to-right .hovers-content {
  left: initial;
  right: 100%;
}
.hovers-sweep-to-right:hover .hovers-content,
.hovers-sweep-to-right.active .hovers-content {
  right: 0;
}
 
.hovers-sweep-to-left .hovers-content {
  left: 100%;
}
.hovers-sweep-to-left:hover .hovers-content,
.hovers-sweep-to-left.active .hovers-content {
  left: 0;
}
 
.hovers-sweep-to-bottom .hovers-content {
  top: initial;
  bottom: 100%;
}
.hovers-sweep-to-bottom:hover .hovers-content,
.hovers-sweep-to-bottom.active .hovers-content {
  bottom: 0;
}
 
.hovers-sweep-to-top .hovers-content {
  top: 100%;
}
.hovers-sweep-to-top:hover .hovers-content,
.hovers-sweep-to-top.active .hovers-content {
  top: 0;
}
 
.hovers-radial-out .hovers-content,
.hovers-radial-in:hover .hovers-content,
.hovers-radial-in.active .hovers-content {
  opacity: 0;
}
 
.hovers-radial-in .hovers-content,
.hovers-radial-out:hover .hovers-content,
.hovers-radial-out.active .hovers-content {
  opacity: 1;
}
 
/* 默认em */
.hovers-border,
.hovers-trim,
.hovers-ripple-out,
.hovers-ripple-in,
.hovers-outline-out,
.hovers-outline-in,
.hovers-reveal {
  font-size: 160px;
  line-height: 16px;
}
 
/* 内边框滑出 */
.hovers-border,
.hovers-trim {
  position: relative;
  top: 0;
  left: 0;
  transition: all 0.3s;
}
 
.hovers-border:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  transition: inherit;
  border-width: calc(0.0625em * 0.6);
  border-color: inherit;
  border-style: solid;
  border-radius: inherit;
  opacity: 0;
}
 
.hovers-border:hover:before,
.hovers-border.active:before {
  opacity: 1;
}
 
/* 带边距内边框 */
.hovers-trim:before {
  content: '';
  position: absolute;
  top: calc(0.0625em * 0.4);
  left: calc(0.0625em * 0.4);
  bottom: calc(0.0625em * 0.4);
  right: calc(0.0625em * 0.4);
  transition: inherit;
  border-width: calc(0.0625em * 0.6);
  border-color: inherit;
  border-style: solid;
  opacity: 0;
  border-radius: inherit;
}
 
.hovers-trim:hover:before,
.hovers-trim.active:before {
  opacity: 1;
}
 
/* 边框飞出与飞入 */
.hovers-ripple-out,
.hovers-ripple-in,
.hovers-outline-out,
.hovers-outline-in,
.hovers-reveal {
  animation-duration: 0.7s;
  animation-timing-function: ease-out;
  transition: all 0.3s;
}
 
.hovers-ripple-out:before,
.hovers-ripple-in:before,
.hovers-outline-out:before,
.hovers-outline-in:before,
.hovers-reveal:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  animation: inherit;
  transition: inherit;
  border-width: calc(0.0625em * 0.6);
  border-color: inherit;
  border-style: solid;
  border-radius: inherit;
}
.hovers-ripple-out:before {
  opacity: 0;
}
.hovers-ripple-in:before {
  top: calc(-0.0625em * 1.2);
  right: calc(-0.0625em * 1.2);
  bottom: calc(-0.0625em * 1.2);
  left: calc(-0.0625em * 1.2);
  opacity: 0;
}
.hovers-outline-out:before {
  opacity: 0;
}
.hovers-outline-out:before {
  top: calc(-0.0625em * 1.6);
  right: calc(-0.0625em * 1.6);
  bottom: calc(-0.0625em * 1.6);
  left: calc(-0.0625em * 1.6);
  opacity: 0;
}
.hovers-reveal:before {
  border-width: 0;
  opacity: 0;
}
 
@keyframes ripple-out {
  50% {
    opacity: 1;
  }
 
  100% {
    top: calc(-0.0625em * 1.2);
    right: calc(-0.0625em * 1.2);
    bottom: calc(-0.0625em * 1.2);
    left: calc(-0.0625em * 1.2);
    opacity: 0;
  }
}
.hovers-ripple-out:hover:before,
.hovers-ripple-out.active:before {
  animation-name: ripple-out;
}
 
@keyframes ripple-in {
  50% {
    opacity: 1;
  }
 
  100% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
  }
}
.hovers-ripple-in:hover:before,
.hovers-ripple-in.active:before {
  animation-name: ripple-in;
}
 
.hovers-outline-out:hover:before,
.hovers-outline-in:hover:before,
.hovers-outline-out.active:before,
.hovers-outline-in:hover:before {
  top: calc(-0.0625em * 0.8);
  right: calc(-0.0625em * 0.8);
  bottom: calc(-0.0625em * 0.8);
  left: calc(-0.0625em * 0.8);
  opacity: 1;
}
 
.hovers-reveal:hover:before,
.hovers-reveal.active:before {
  transform: translateY(0);
  border-width: calc(0.0625em * 0.4);
  opacity: 1;
}
 
/* 圆角化 */
.hovers-round-corners {
  overflow: hidden;
}
.hovers-round-corners:hover,
.hovers-round-corners.active {
  border-radius: 0.0625em;
}
 
/* 重叠:翻转切换 */
 
.hover-turn {
  position: relative;
  transform: translateZ(1px);
}
 
.hover-turn-before,
.hover-turn-after {
  position: absolute;
  top: 0;
  left: 0;
}
 
@keyframes hover-turn {
  from {
    transform: rotateY(-90deg);
  }
 
  50% {
    transform: scale(1.2);
  }
 
  to {
    transform: rotateY(0);
  }
}
 
.hover-turn:not(:hover) .hover-turn-before,
.hover-turn:hover .hover-turn-after {
  animation: hover-turn 0.5s;
}
 
.hover-turn:hover .hover-turn-before,
.hover-turn:not(:hover) .hover-turn-after {
opacity: 0;
}
/* [[Category:在模板名字空间下的CSS页面]] */
 
/*
.colormu_toggle_on是为了黑幕开关(MediaWiki:Gadget-heimu-toggle.js)做适配。
.colormu-drk、.colormu-bri分别是暗色背景和亮色背景,
暗色背景的文字通常是浅色,在半隐背景后,颜色需要变成深色。
*/
.colormu-drk {
color: #FFF;
}
.colormu-bri {
color: #000;
}
.colormu-drk:not(.colormu_toggle_on) a {
color: #add8e6;
}
.colormu-drk:not(.colormu_toggle_on) a.new {
color: #FCC;
}
.colormu>span, .colormu a, .colormu a>span {
transition: color 0.2s;
}
.colormu:not(:hover):not(:active):not(.colormu_toggle_on)>span,
.colormu:not(:hover):not(:active):not(.colormu_toggle_on) a {
color: transparent;
}
/* for T:Coloredlink in T:彩幕 */
.colormu:not(:hover):not(:active):not(.colormu_toggle_on) a>span {
color: transparent !important;
}
/* for T:彩幕 in link */
a .colormu-bri {
color: inherit;
}
a:hover .colormu>span, a:active .colormu>span,
/* and for MediaWiki:Gadget-heimu-toggle.js */
.colormu-drk.colormu_toggle_on, .colormu_toggle_on>span, .colormu-drk.colormu_toggle_on a>span {
color: inherit !important;
}
}
img { 
    display: inline-block !important; 
/* [[Category:在模板名字空间下的CSS页面]] */

2025年6月9日 (一) 20:32的最新版本

/* 这里放置的CSS将应用于所有皮肤 */
@import url("https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap");
@import url("https://fastly.jsdelivr.net/gh/hoah2333/Fonts@main/Typeface-VonwaonBitmap-16px.css");
@import url("https://fastly.jsdelivr.net/gh/hoah2333/Fonts@main/Typeface-VonwaonBitmap-12px.css");
@import url("https://fonts.googleapis.com/css2?family=Microsoft+Sans+Serif&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap");
@import url("https://fastly.jsdelivr.net/gh/hoah2333/Fonts@main/Typeface-VonwaonBitmap-16px.css");
@import url("https://fastly.jsdelivr.net/gh/hoah2333/Fonts@main/Typeface-VonwaonBitmap-12px.css");
@import url('https://fonts.googleapis.com/css2?family=VT323&display=swap');


:root {
	--link-color: #0645ad;
	--link-color-active: #faa700;
	--custom-background-blue: #ccf;
	--custom-background-cyan: #cef;
	--custom-background-green: #cfc;
	--custom-background-gray: #d2d2d2;
	--custom-background-grey: var(--custom-background-gray);
	--custom-background-magenta: #fdf;
	--custom-background-orange: #fdb;
	--custom-background-purple: #ecf;
	--custom-background-red: #fcc;
	--custom-background-yellow: #ffc;
	--custom-border-blue: #36e;
	--custom-border-cyan: #9df;
	--custom-border-green: #5d5;
	--custom-border-gray: #bbb;
	--custom-border-grey: var(--custom-border-gray);
	--custom-border-magenta: #f9f;
	--custom-border-orange: #f90;
	--custom-border-purple: #96c;
	--custom-border-red: #e44;
	--custom-border-yellow: #fc3;
	--custom-closed-topic-neutral: #eef;
	--custom-closed-topic-no: #fee;
	--custom-closed-topic-yes: #efe;
	--custom-code-background: #f8f9fa;
	--custom-load-page-button-color: #fff8;
	--custom-main-page-background: #fcfcfc;
	--custom-main-page-border: var(--custom-border-gray);
	--custom-main-page-edition-subheader: #333;
	--custom-mcwiki-header-color: #bcd4f5;
	--custom-navbox-background: #fff;
	--custom-navbox-top: #ccc;
	--custom-navbox-middle: #ddd;
	--custom-navbox-thru: #eee;
	--custom-nbt-inherit-color: #e6e6fa;
	--custom-table-background: #f8f9fa;
	--custom-table-alternate-background: #f0f1f2;
	--custom-table-choice-always: #003600;
	--custom-table-choice-always-background: #80d080;
	--custom-table-choice-default: #fff;
	--custom-table-choice-in-off-background: #060;
	--custom-table-choice-in-on-background: #0c0;
	--custom-table-choice-na: #000;
	--custom-table-choice-na-background: #fff;
	--custom-table-choice-neutral: #634800;
	--custom-table-choice-neutral-background: #ffeb9c;
	--custom-table-choice-never: #3c0404;
	--custom-table-choice-never-background: #ff8080;
	--custom-table-choice-no: #840606;
	--custom-table-choice-no-background: #ffc7ce;
	--custom-table-choice-out-off-background: #900;
	--custom-table-choice-out-on-background: #f00;
	--custom-table-choice-partial: #665400;
	--custom-table-choice-partial-background: #ffd;
	--custom-table-choice-planned: #0131b7;
	--custom-table-choice-planned-background: #dfdfff;
	--custom-table-choice-rarely: #533400;
	--custom-table-choice-rarely-background: #fdce5e;
	--custom-table-choice-unknown: #222;
	--custom-table-choice-unknown-background: #ccc;
	--custom-table-choice-yes: #005600;
	--custom-table-choice-yes-background: #c6efce;
	--custom-table-header-background: #eaecf0;
	--custom-topic-30-days: #bbb;
	--custom-topic-7-days: #ddd;
    

    /* 字体设置 - 保持原有字体 */
    --body-font: "VonwaonBitmap 16px", VT323, monospace;
    --header-font: "VonwaonBitmap 16px", VT323, monospace;
    --title-font: "VonwaonBitmap 16px", VT323, monospace;
    --mono-font: "VonwaonBitmap 16px", VT323, monospace;
    --pixel-font-16: 'VonwaonBitmap 16px', VT323, monospace;
    --pixel-font-12: 'VonwaonBitmap 12px', VT323, monospace;
    --base-font-size: 14px;

}
/* 应用全局字体 */
body {
    font-family: var(--body-font) !important;
    font-size: var(--base-font-size) !important;
    line-height: 1.5 !important;

    background-image: url("/aoh2wiki/images/b/be/Microsoft_Nostalgic_Windows_Wallpaper_4k.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    color: rgb(var(--xp-text));
}
  
  .notaninfobox {
	position: relative;
	clear: right;
	margin: 0 0 1em 1em;
	width: 350px;
	font-size: 90%;
	background-color: var(--custom-table-background);
	float: right;
	border: 1px solid var(--custom-border-gray);
	padding: 2px;
	overflow: auto;
	z-index: 1;
	overflow-wrap: anywhere;
}
@media all and (max-width: 511px) {
	.notaninfobox {
		float: none;
		margin-left: 0;
		width: auto;
	}
}

.infobox tr:not(:first-child) td {
    border-bottom: 1px solid #ddd;
}
@media all and (max-width: 337px) {
	.notaninfobox {
		margin-left: -16px;
		margin-right: -16px;
		border-left: none;
		border-right: none;
	}
}

.notaninfobox > .infobox-title {
	font-weight: bold;
	text-align: center;
	font-size: 120%;
	background-color: #BCD4F5;
}
.infobox-imagearea {
	text-align: center;
	padding: 4px;
}
.infobox-imagearea > div:not(:first-child) {
	padding-top: 1em;
}
/* Horizontally centre animated images */
.infobox-imagearea .animated {
	display: inline-flex;
	align-items: center;
}

.notaninfobox .infobox-rows {
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: 1px;
}
.infobox .plainlinks a {
    color: #0000EE !important;
    text-decoration: underline;
}
.infobox .plainlinks a:visited {
    color: #551A8B !important;
}
.notaninfobox .infobox-rows .infobox-row {
	display: contents;
}

.notaninfobox .infobox-row .infobox-row-label,
.notaninfobox .infobox-row .infobox-row-field {
	padding: 4px;
}

.notaninfobox .infobox-row .infobox-row-label {
	font-weight: bold;
	display: flex;
	align-items: center;
}
.community-updates {
  background: #fff0e6;
  padding: 15px;
  border-radius: 10px;
  margin-top: 20px;
}
.community-updates ul li {
  list-style: none;
  padding: 10px;
  background: #fff;
  margin: 5px 0;
  border-radius: 5px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
.community-updates ul li a {
  color: #337ab7;
  text-decoration: none;
  font-weight: bold;
}
.notaninfobox .infobox-rows .infobox-row:nth-child(2n) .infobox-row-label,
.notaninfobox .infobox-rows .infobox-row:nth-child(2n) .infobox-row-field {
	background-color: var(--custom-table-alternate-background);
}

/* Infoboxes with tabber */
.tabber-container-infobox .tabber .tabbertab,
.tabber-container-infobox ul.tabbernav li a,
.tabber-container-infobox ul.tabbernav li.tabberactive a {
	background: none;
	border: none;
}

.tabber-container-infobox .tabber .tabbertab {
	padding: 0;
}

.tabber-container-infobox ul.tabbernav {
	font: inherit;
	font-size: 100%;
}

.tabber-container-infobox ul.tabbernav li a:hover {
	color: #000;
}

.tabber-container-infobox ul.tabbernav > li {
	margin-bottom: 5px;
	padding: 0;
}
.announcement-content span {
  display: inline-block;
  white-space: nowrap;
  animation: marquee 15s linear infinite;
}
.mw-mainpage-header {
    background: linear-gradient(to bottom right, #B9A3FF, #8C47E7);
    box-shadow: grey 0px 0px 5px;
    border-radius: 20px;
    color: #000;
    font-size: 1.5em;
    text-shadow: white 0px 0px 10px, white 0px 0px 10px;
    padding: 20px;
    text-align: center;
}

.mw-mainpage-header h1 {
    font-size: 2.5em;
    margin-bottom: 10px;
}

.mw-mainpage-header p {
    font-size: 1.2em;
    margin: 5px 0;
}
.tabber-container-infobox ul.tabbernav > li > a {
	color: #595959;
	padding-bottom: 1px;
	display: block;
}

/* To prevent the tabs from jumping around when they become active or inactive
 * due to the font-weight changing from normal to bold and vice versa, add an
 * invisible ::before which contains the same text as the tab's text, but
 * bolded. This way the element in which unbolded text sits is sized according
 * to the bolded text, preventing it from resizing upon being selected.
 */
.tabber-container-infobox ul.tabbernav > li > a::before {
	display: block;
	content: attr(alt);
	font-weight: bold;
	height: 0;
	color: transparent;
	overflow: hidden;
	visibility: hidden;
}

.tabber-container-infobox ul.tabbernav > li.tabberactive {
	border: none;
}

.modulebox {
  border: 1px solid #ccc;
  padding: 10px;
  margin: 10px 0;
  background-color: #f9f9f9;
}

.tabber-container-infobox ul.tabbernav > li.tabberactive > a {
	font-weight: bold;
	color: var(--link-color);
	border-bottom: 2px solid var(--custom-mcwiki-header-color);
}

.infobox-rows p {
	margin: 0;
}

/* Merge adjacent dls in the infobox, since they're usually supposed to be one,
 * but the wiki screws up sometimes.
 */
.infobox-rows dl + dl {
	margin-top: -0.4em;
}

.infobox-rows dl:last-child {
	margin-bottom: 0.2em;
}

.infobox-footer {
	text-align: center;
}

/* 页面底部导航框(2011年8月16日引自中文维基)(所谓大家族模板) */
table.navbox{
    border:1px solid #aaa;
    clear:both;
    margin:auto;
    padding:1px;
    text-align:center;
    width:100%;
}
 
table.navbox + table.navbox{
    margin-top:-1px;
}
 
.navbox-title,
.navbox-abovebelow,
table.navbox th{
    padding-left:1em;
    padding-right:1em;
    text-align:center;
}
 
.navbox-group{
    font-weight:700;
    white-space:nowrap;
}
 
.navbox,
.navbox-subgroup{
    background:none repeat scroll 0 0 var(--theme-card-background-color, #fdfdfd);
}
 
.navbox-list{
    border-color:#fdfdfd;
}
 
.navbox-title,
table.navbox th{
    background:none repeat scroll 0 0 #a5e4a5;
}
 
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title{
    background:none repeat scroll 0 0 #c0ecc0;
}
 
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow{
    background:none repeat scroll 0 0 #e6f6e6;
}
 
.navbox-even{
    background:none repeat scroll 0 0 #f5fcf5;
}
 
.navbox-odd{
    background:none repeat scroll 0 0 #fdfdfd;
}
.collapseButton {
    float: right;
    font-weight: 400;
    text-align: right;
    width: auto;
}
.navbox .collapseButton {
    width: 6em;
}
.navbar {
    position: relative;
    min-height: 23px !important;
    margin-bottom: 0px !important;
    border: 1px solid transparent;
}
.navbox-title .Wikiplus-Edit-EveryWhereBtn {
	display: none;
}

@media only screen and (max-width:759px){
	.infotable {
	    width: 90%;
	    float: none;
	    margin: 0 auto;
	}
	
	/*.navbox {*/
	/*	display:none;*/
	/*}*/
	/*“查·论·编”在小屏幕时基本用不到(也很难点到)*/
	.navbox-title>div{
        display: none;
    }
    /*把内边距去掉*/
    .navbox-group,
    .navbox-group >div{
        padding-left: 0 !important;
        padding-right: 0 !important;
        text-align: center;
    }
}

/* h1标题字体 */
body h1 {
    font-family: "Microsoft YaHei", "微软雅黑", sans-serif !important;
}

/* 本段内容来自萌娘百科 https://zh.moegirl.org.cn/MediaWiki:Gadget-site-styles.css 感谢贡献!*/
/* 版权协定:知识共享 署名-非商业性使用-相同方式共享 3.0 */

.heimu,
.heimu rt{
    --heimu-color:#252525;
    --heimu-text-color:#fff;
    --heimu-link-color:#add8e6;
    --heimu-visited-link-color:#c5cae9;
    --heimu-new-link-color:#fcc;
    --heimu-new-visited-link-color:#ef9a9a;
    --heimu-extiw-visited-link-color:#d1c4e9;

    background-color:var(--heimu-color);
}

.heimu,
.heimu a,
a .heimu,
a.new .heimu,
span.heimu a:visited,
span.heimu a.new,
span.heimu a.external,
span.heimu a.external:visited,
span.heimu a.extiw,
span.heimu a.extiw:visited,
span.heimu a.mw-disambig,
span.heimu a.mw-redirect{
    transition:color 0.13s linear;
    color:var(--heimu-color);
    text-shadow:none;
}

span.heimu:hover,
span.heimu:active{
    color:var(--heimu-text-color);
}

span.heimu:hover a,
a:hover span.heimu{
    color:var(--heimu-link-color);
}

span.heimu:hover a:visited,
a:visited:hover span.heimu{
    color:var(--heimu-visited-link-color);
}

span.heimu:hover a.new,
a.new:hover span.heimu{
    color:var(--heimu-new-link-color);
}

span.heimu a.new:hover:visited,
a.new:hover:visited span.heimu{
    color:var(--heimu-new-visited-link-color);
}

span.heimu:hover a.extiw:visited,
a.extiw:visited:hover span.heimu{
    color:var(--heimu-extiw-visited-link-color);
}
[color-mode="dark"] .heimu,
[color-mode="dark"] .heimu rt{
    --heimu-color:#5e6272;
}

/*
	该文档为一个hover特效库,由一些常用的效果以及GitHub上的开源项目“Hover.css”的一些部分构成。
	请使用hovers在页面中进行载入。
*/

/* hover状态切换 */
.hover-change,
.hover-remote {
  position: relative;
  display: inline-block;
  transition: opacity 0.5s linear;
}

.hover-change-before,
.hover-change-after,
.hover-remote-target {
  transition: inherit;
}

.hover-change-after,
.hover-remote-target {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}
.hover-remote-target {
  left: 100%;
}

.hover-change-after[style^='right:'],
.hover-change-after[style*=' right:'],
.hover-remote-after[style^='right:'],
.hover-remote-after[style*=' right:'] {
  left: initial;
}

.hover-change-after[style^='bottom:'],
.hover-change-after[style*=' bottom:'],
.hover-remote-after[style^='bottom:'],
.hover-remote-after[style*=' bottom:'] {
  top: initial;
}

.hover-change-after:hover,
.hover-remote-target {
  opacity: 0;
  margin-left: -9999px;
}

/* 主要用于制作hover形式的标签页(tab)切换 */
.hover-tab-mode {
  position: relative;
  transition: none;
}
.hover-tab-mode .hover-remote {
  transition: inherit;
  position: static;
}

/* 闪烁效果 */
.hover-change.flash:hover .hover-change-before {
  margin-left: -9999px;
}

.hover-change:hover > .hover-change-before,
.hover-remote > .hover-remote-target,
.hover-change:hover > a > .hover-change-before,
.hover-remote > a > .hover-remote-target {
  opacity: 0;
}

.hover-change:hover > .hover-change-after,
.hover-remote:hover > .hover-remote-target,
.hover-change:hover > a > .hover-change-after,
.hover-remote:hover > a > .hover-remote-target {
  opacity: 1;
  margin-left: initial;
}

/* 基类 */
[class*='hovers-'] {
  display: inline-block;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  transform: perspective(1px) translateZ(0);
  vertical-align: middle;
  transition-duration: 0.25s;
  transition-property: all;
}

/* 旋转放大 */
.hovers-rotate-shrink {
  transition-duration: 0.5s;
  transform: rotate(0) scale(0.75);
}
.hovers-rotate-shrink:hover {
  transform: rotate(360deg) scale(1);
}

.hovers-rotate-shrink-reverse {
  transition-duration: 0.5s;
  transform: rotate(360deg) scale(0.75);
}

.hovers-rotate-shrink-reverse:hover {
  transform: rotate(0) scale(1);
}

/* 旋转 */
.hovers-rotate,
.hovers-rotate-reverse:hover {
  transition-duration: 0.5s;
  transform: rotate(0);
}

.hovers-rotate-reverse,
.hovers-rotate:hover {
  transition-duration: 0.5s;
  transform: rotate(360deg);
}

/* 正常 => 浅 */
.hovers-fade-deep,
.hovers-fade,
.hovers-fade-shallow {
  opacity: 1;
}
.hovers-fade-deep:hover,
.hovers-fade-deep.active {
  opacity: 0.35;
}
.hovers-fade:hover,
.hovers-fade.active {
  opacity: 0.5;
}
.hovers-fade-shallow:hover,
.hovers-fade-shallow.active {
  opacity: 0.75;
}

/* 浅 => 正常 */
.hovers-bloom-deep {
  opacity: 0.35;
}
.hovers-bloom {
  opacity: 0.5;
}
.hovers-bloom-shallow {
  opacity: 0.75;
}

.hovers-bloom-deep:hover,
.hovers-bloom-deep.active,
.hovers-bloom:hover,
.hovers-bloom.active,
.hovers-bloom-shallow:hover,
.hovers-bloom-shallow.active {
  opacity: 1;
}

/* 正常 => 大 */
.hovers-grow-deep,
.hovers-grow,
.hovers-grow-shallow {
  transform: scale(1);
}
.hovers-grow-deep:hover,
.hovers-grow-deep.active {
  transform: scale(1.5);
}
.hovers-grow:hover,
.hovers-grow.active {
  transform: scale(1.25);
}
.hovers-grow-shallow:hover,
.hovers-grow-shallow.active {
  transform: scale(1.1);
}

/* 正常 => 小 */
.hovers-shrink-deep:hover,
.hovers-shrink-deep.active,
.hovers-shrink:hover,
.hovers-shrink.active,
.hovers-shrink-shallow:hover,
.hovers-shrink-shallow.active {
  transform: scale(1);
}
.hovers-shrink-deep {
  transform: scale(0.5);
}
.hovers-shrink {
  transform: scale(0.75);
}
.hovers-shrink-shallow {
  transform: scale(0.9);
}

/* 左右抖动 */
@keyframes shake-flexible {
  25% {
    transform: translateX(-0.0625em);
  }

  50% {
    transform: translateX(0.0625em);
  }

  75% {
    transform: translateX(-0.0625em);
  }
}

.hovers-shake-flexible:hover,
.hovers-shake-flexible.active {
  animation: shake-flexible 0.5s ease-out;
}

@keyframes shake {
  25% {
    transform: translateX(-8px);
  }

  50% {
    transform: translateX(8px);
  }

  75% {
    transform: translateX(-8px);
  }
}

.hovers-shake:hover,
.hovers-shake.active {
  animation: shake 0.5s ease-out;
}

/* 上下抖动 */
@keyframes bounce-flexible {
  25% {
    transform: translateY(-0.0625em);
  }

  50% {
    transform: translateY(0.0625em);
  }

  75% {
    transform: translateY(-0.0625em);
  }
}

.hovers-bounce-flexible:hover,
.hovers-bounce-flexible.active {
  animation: bounce-flexible 0.5s ease-out;
}

@keyframes bounce {
  25% {
    transform: translateY(-8px);
  }

  50% {
    transform: translateY(8px);
  }

  75% {
    transform: translateY(-8px);
  }
}

.hovers-bounce:hover,
.hovers-bounce.active {
  position: relative;
  left: 0;
  animation: bounce 0.5s ease-out;
}

/* 绕顶端中点抖动 */
@keyframes swing {
  20% {
    transform: rotate3d(0, 0, 1, 10deg);
  }

  40% {
    transform: rotate3d(0, 0, 1, -10deg);
  }

  60% {
    transform: rotate3d(0, 0, 1, 5deg);
  }

  80% {
    transform: rotate3d(0, 0, 1, -5deg);
  }

  to {
    transform: rotate3d(0, 0, 1, 0deg);
  }
}

.hovers-swing {
  transform-origin: top center;
}
.hovers-swing:hover,
.hovers-swing.active {
  animation: swing 0.75s ease-out;
}

/* 正常 => 大 */
@keyframes pulse-grow {
  to {
    transform: scale(1.1);
  }
}

.hovers-pulse-grow:hover,
.hovers-pulse-grow.active {
  animation: pulse-grow 0.5s linear infinite alternate;
}

/* 正常 => 小 */
@keyframes pulse-shrink {
  to {
    transform: scale(0.9);
  }
}

.hovers-pulse-shrink:hover,
.hovers-pulse-shrink.active {
  animation: pulse-shrink 0.5s linear infinite alternate;
}

/* 正常 => 小 */
@keyframes push {
  50% {
    transform: scale(0.8);
  }
}

.hovers-push:hover,
.hovers-push.active {
  animation: push 0.3s linear;
}

/* 正常 => 大 */
@keyframes pop {
  50% {
    transform: scale(1.2);
  }
}

.hovers-pop:hover,
.hovers-pop.active {
  animation: pop 0.3s linear;
}

/* 正常 => 大 => 正常 => 大 */
.hovers-bounce-in:hover,
.hovers-bounce-in.active {
  transform: scale(1.2);
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* 正常 => 小 => 正常 => 小 */
.hovers-bounce-out:hover,
.hovers-bounce-out.active {
  transform: scale(0.8);
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* 倾斜 */
.hovers-tilt:hover,
.hovers-tilt.active {
  transition-duration: 0.3s;
  transform: rotate(4deg);
}

/* 倾斜 + 放大 */
.hovers-grow-rotate:hover,
.hovers-grow-rotate.active {
  transition-duration: 0.3s;
  transform: scale(1.1) rotate(4deg);
}

/* 升起 */
.hovers-float:hover,
.hovers-float.active {
  transition-duration: 0.3s;
  transition-timing-function: ease-out;
  transform: translateY(-8px);
}

/* 下沉 */
.hovers-sink:hover,
.hovers-sink.active {
  transition-duration: 0.3s;
  transition-timing-function: ease-out;
  transform: translateY(8px);
}

/* 飘浮 */
@keyframes bob {
  0% {
    transform: translateY(-10px);
  }
  50% {
    transform: translateY(-5px);
  }
  100% {
    transform: translateY(-10px);
  }
}
@keyframes bob-float {
  100% {
    transform: translateY(-10px);
  }
}

.hovers-bob:hover,
.hovers-bob.active {
  animation-name: bob-float, bob;
  animation-duration: 0.3s, 1.5s;
  animation-delay: 0s, 0.3s;
  animation-timing-function: ease-out, ease-in-out;
  animation-iteration-count: 1, infinite;
  animation-fill-mode: forwards;
  animation-direction: normal, alternate;
}

/* 悬挂 */
@keyframes hang {
  0% {
    transform: translateY(10px);
  }
  50% {
    transform: translateY(5px);
  }
  100% {
    transform: translateY(10px);
  }
}
@keyframes hang-sink {
  100% {
    transform: translateY(10px);
  }
}

.hovers-hang:hover,
.hovers-hang.active {
  animation-name: hang-sink, hang;
  animation-duration: 0.3s, 1.5s;
  animation-delay: 0s, 0.3s;
  animation-timing-function: ease-out, ease-in-out;
  animation-iteration-count: 1, infinite;
  animation-fill-mode: forwards;
  animation-direction: normal, alternate;
}

/* 非对称 */
.hovers-skew:hover,
.hovers-skew.active {
  transform: skew(-10deg);
}

/* 非对称-左 */
.hovers-skew-forward {
  transform-origin: 0 100%;
}
.hovers-skew-forward:hover,
.hovers-skew-forward.active {
  transform: skew(-10deg);
}

/* 非对称-右 */
.hovers-skew-backward {
  transform-origin: 0 100%;
}
.hovers-skew-backward:hover,
.hovers-skew-backward.active {
  transform: skew(10deg);
}

/* 垂直抖动 */
@keyframes wobble-vertical {
  16.65% {
    transform: translateY(8px);
  }
  33.3% {
    transform: translateY(-6px);
  }
  49.95% {
    transform: translateY(4px);
  }
  66.6% {
    transform: translateY(-2px);
  }
  83.25% {
    transform: translateY(1px);
  }
  100% {
    transform: translateY(0);
  }
}

.hovers-wobble-vertical:hover,
.hovers-wobble-vertical.active {
  animation-name: wobble-vertical;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* 水平抖动 */
@keyframes wobble-horizontal {
  16.65% {
    transform: translateX(8px);
  }
  33.3% {
    transform: translateX(-6px);
  }
  49.95% {
    transform: translateX(4px);
  }
  66.6% {
    transform: translateX(-2px);
  }
  83.25% {
    transform: translateX(1px);
  }
  100% {
    transform: translateX(0);
  }
}
.hovers-wobble-horizontal:hover,
.hovers-wobble-horizontal.active {
  animation-name: wobble-horizontal;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* 右下弹回 */
@keyframes wobble-to-bottom-right {
  16.65% {
    transform: translate(8px, 8px);
  }
  33.3% {
    transform: translate(-6px, -6px);
  }
  49.95% {
    transform: translate(4px, 4px);
  }
  66.6% {
    transform: translate(-2px, -2px);
  }
  83.25% {
    transform: translate(1px, 1px);
  }
  100% {
    transform: translate(0, 0);
  }
}

.hovers-wobble-to-bottom-right:hover, 
.hovers-wobble-to-bottom-right.active {
  animation-name: wobble-to-bottom-right;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* 右上弹回 */
@keyframes wobble-to-top-right {
  16.65% {
    transform: translate(8px, -8px)
  }
  33.3% {
    transform: translate(-6px, 6px);
  }
  49.95% {
    transform: translate(4px, -4px);
  }
  66.6% {
    transform: translate(-2px, 2px);
  }
  83.25% {
    transform: translate(1px, -1px);
  }
  100% {
    transform: translate(0);
  }
}

.hovers-wobble-to-top-right:hover,
.hovers-wobble-to-top-right.active {
  animation-name: wobble-to-top-right;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* 果冻 */
@keyframes wobble-top {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}

/* 赘肉 */
.hovers-wobble-top {
  transform-origin: 0 100%;
}
.hovers-wobble-top:hover,
.hovers-wobble-top.active {
  animation-name: wobble-top;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

@keyframes wobble-bottom {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}

.hovers-wobble-bottom {
  transform-origin: 100% 0;
}
.hovers-wobble-bottom:hover,
.hovers-wobble-bottom.active {
  animation-name: wobble-bottom;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* 颤动 */
@keyframes wobble-skew {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}
.hovers-wobble-skew:hover,
.hovers-wobble-skew.active {
  animation-name: wobble-skew;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* 振动 */
@keyframes buzz {
  50% {
    transform: translateX(3px) rotate(2deg);
  }
  100% {
    transform: translateX(-3px) rotate(-2deg);
  }
}

.hovers-buzz:hover,
.hovers-buzz.active {
  animation-name: buzz;
  animation-duration: 0.15s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

/* 振出 */
@keyframes buzz-out {
  10% {
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    transform: translateX(1px) rotate(0);
  }
  100% {
    transform: translateX(-1px) rotate(0);
  }
}

.hovers-buzz-out:hover,
.hovers-buzz-out.active {
  animation-name: buzz-out;
  animation-duration: 0.75s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

/* 右移 */
.hovers-forward:hover,
.hovers-forward.active {
  transform: translateX(8px);
}

/* 左移 */
.hovers-backward:hover,
.hovers-backward.active {
  transform: translateX(-8px);
}

/* 自由移动 */
.hovers-top,
.hovers-left,
.hovers-bottom,
.hovers-right {
  transition: all 0.5s;
}

.hovers-top:hover,
.hovers-top.active {
  transform: translateY(-0.0625em);
}

.hovers-left:hover,
.hovers-left.active {
  transform: translateX(-0.0625em);
}

.hovers-bottom:hover,
.hovers-bottom.active {
  transform: translateY(0.0625em);
}

.hovers-right:hover,
.hovers-right.active {
  transform: translateX(0.0625em);
}

/* 滤镜 */
.hovers-blur,
.hovers-blur-reverse,
.hovers-brightness,
.hovers-brightness-reverse,
.hovers-contrast,
.hovers-contrast-reverse,
.hovers-grayscale,
.hovers-grayscale-reverse,
.hovers-invert,
.hovers-invert-reverse,
.hovers-saturate,
.hovers-saturate-reverse,
.hovers-sepia,
.hovers-sepia-reverse,
.hovers-hue-rotate,
.hovers-hue-rotate-reverse {
  transition-duration: 0.75s;
}

.hovers-blur:hover,
.hovers-blur.active,
.hovers-brightness:hover,
.hovers-brightness.active,
.hovers-contrast:hover,
.hovers-contrast.active,
.hovers-grayscale:hover,
.hovers-grayscale.active,
.hovers-invert:hover,
.hovers-invert.active,
.hovers-saturate:hover,
.hovers-saturate.active,
.hovers-sepia:hover,
.hovers-sepia.active,
.hovers-hue-rotate:hover,
.hovers-hue-rotate.active {
  filter: initial;
}

.hovers-blur {
  filter: blur(5px);
}

.hovers-blur-reverse:hover,
.hovers-blur-reverse.active {
  filter: blur(5px);
}

.hovers-brightness {
  filter: brightness(50%);
}

.hovers-brightness-reverse:hover,
.hovers-brightness-reverse.active {
  filter: brightness(50%);
}

.hovers-contrast {
  filter: contrast(50%);
}

.hovers-contrast-reverse:hover,
.hovers-contrast-reverse.active {
  filter: contrast(50%);
}

.hovers-grayscale {
  filter: grayscale(100%);
}

.hovers-grayscale-reverse:hover, 
.hovers-grayscale-reverse.active {
  filter: grayscale(100%);
}

.hovers-invert {
  filter: invert(100%);
}

.hovers-invert-reverse:hover,
.hovers-invert-reverse.active {
  filter: invert(100%);
}

.hovers-saturate {
  filter: saturate(200%);
}

.hovers-saturate-reverse:hover,
.hovers-saturate-reverse.active {
  filter: saturate(200%);
}

.hovers-sepia {
  filter: sepia(100%);
}

.hovers-sepia-reverse:hover,
.hovers-sepia-reverse.acitve {
  filter: sepia(100%);
}

.hovers-hue-rotate {
  filter: hue-rotate(180deg);
}

.hovers-hue-rotate-reverse:hover,
.hovers-hue-rotate-reverse.active {
  filter: hue-rotate(180deg);
}

/* 背景滑动 */
.hovers-sweep-to-right,
.hovers-sweep-to-left,
.hovers-sweep-to-bottom,
.hovers-sweep-to-top,
.hovers-radial-out,
.hovers-radial-in {
  position: relative;
  transition-duration: 0.3s;
  transition-timing-function: ease-out;
  overflow: hidden;
}

.hovers-sweep-to-right:before,
.hovers-sweep-to-left:before,
.hovers-sweep-to-bottom:before,
.hovers-sweep-to-top:before,
.hovers-radial-out:before,
.hovers-radial-in:before {
  content: '';
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: inherit;
  transform: scaleX(0);
  transition: inherit;
}
.hovers-sweep-to-bottom:before,
.hovers-sweep-to-top:before {
  transform: scaleY(0);
}
.hovers-radial-out:before,
.hovers-radial-in:before {
  border-radius: 50%;
  transform: scale(0);
}
.hovers-radial-in:before {
  transform: scale(2);
}

.hovers-sweep-to-right:before {
  transform-origin: 0 50%;
}
.hovers-sweep-to-left:before {
  transform-origin: 100% 50%;
}
.hovers-sweep-to-bottom:before {
  transform-origin: 50% 0;
}
.hovers-sweep-to-top:before {
  transform-origin: 50% 100%;
}
.hovers-radial-out:hover:before,
.hovers-radial-out.active:before {
  transform: scale(2);
}
.hovers-radial-in:hover:before,
.hovers-radial-in.active:before {
  transform: scale(0);
}

.hovers-sweep-to-right .hovers-content.center,
.hovers-sweep-to-left .hovers-content.center,
.hovers-sweep-to-bottom .hovers-content.center,
.hovers-sweep-to-top .hovers-content.center,
.hovers-radial-out .hovers-content.center,
.hovers-radial-in .hovers-content.center {
  display: flex;
  align-items: center;
  justify-content: center;
  word-break: break-all;
}

.hovers-sweep-to-right:hover:before,
.hovers-sweep-to-left:hover:before,
.hovers-sweep-to-bottom:hover:before,
.hovers-sweep-to-top:hover:before,
.hovers-sweep-to-right.active:before,
.hovers-sweep-to-left:hover:before,
.hovers-sweep-to-bottom:hover:before,
.hovers-sweep-to-top:hover:before {
  transform: scaleX(1);
}

.hovers-sweep-to-right .hovers-content,
.hovers-sweep-to-left .hovers-content,
.hovers-sweep-to-bottom .hovers-content,
.hovers-sweep-to-top .hovers-content,
.hovers-radial-out .hovers-content,
.hovers-radial-in .hovers-content {
  width: 100%;
  height: 100%;
  position: absolute;
  transition-property: all;
  transition-duration: inherit;
  top: 0;
  left: 0;
  z-index: 11;
}

.hovers-sweep-to-right .hovers-content {
  left: initial;
  right: 100%;
}
.hovers-sweep-to-right:hover .hovers-content,
.hovers-sweep-to-right.active .hovers-content {
  right: 0;
}

.hovers-sweep-to-left .hovers-content {
  left: 100%;
}
.hovers-sweep-to-left:hover .hovers-content,
.hovers-sweep-to-left.active .hovers-content {
  left: 0;
}

.hovers-sweep-to-bottom .hovers-content {
  top: initial;
  bottom: 100%;
}
.hovers-sweep-to-bottom:hover .hovers-content,
.hovers-sweep-to-bottom.active .hovers-content {
  bottom: 0;
}

.hovers-sweep-to-top .hovers-content {
  top: 100%;
}
.hovers-sweep-to-top:hover .hovers-content,
.hovers-sweep-to-top.active .hovers-content {
  top: 0;
}

.hovers-radial-out .hovers-content,
.hovers-radial-in:hover .hovers-content,
.hovers-radial-in.active .hovers-content {
  opacity: 0;
}

.hovers-radial-in .hovers-content,
.hovers-radial-out:hover .hovers-content,
.hovers-radial-out.active .hovers-content {
  opacity: 1;
}

/* 默认em */
.hovers-border,
.hovers-trim,
.hovers-ripple-out,
.hovers-ripple-in,
.hovers-outline-out,
.hovers-outline-in,
.hovers-reveal {
  font-size: 160px;
  line-height: 16px;
}

/* 内边框滑出 */
.hovers-border,
.hovers-trim {
  position: relative;
  top: 0;
  left: 0;
  transition: all 0.3s;
}

.hovers-border:before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  box-sizing: border-box;
  transition: inherit;
  border-width: calc(0.0625em * 0.6);
  border-color: inherit;
  border-style: solid;
  border-radius: inherit;
  opacity: 0;
}

.hovers-border:hover:before,
.hovers-border.active:before {
  opacity: 1;
}

/* 带边距内边框 */
.hovers-trim:before {
  content: '';
  position: absolute;
  top: calc(0.0625em * 0.4);
  left: calc(0.0625em * 0.4);
  bottom: calc(0.0625em * 0.4);
  right: calc(0.0625em * 0.4);
  transition: inherit;
  border-width: calc(0.0625em * 0.6);
  border-color: inherit;
  border-style: solid;
  opacity: 0;
  border-radius: inherit;
}

.hovers-trim:hover:before,
.hovers-trim.active:before {
  opacity: 1;
}

/* 边框飞出与飞入 */
.hovers-ripple-out,
.hovers-ripple-in,
.hovers-outline-out,
.hovers-outline-in,
.hovers-reveal {
  animation-duration: 0.7s;
  animation-timing-function: ease-out;
  transition: all 0.3s;
}

.hovers-ripple-out:before,
.hovers-ripple-in:before,
.hovers-outline-out:before,
.hovers-outline-in:before,
.hovers-reveal:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  animation: inherit;
  transition: inherit;
  border-width: calc(0.0625em * 0.6);
  border-color: inherit;
  border-style: solid;
  border-radius: inherit;
}
.hovers-ripple-out:before {
  opacity: 0;
}
.hovers-ripple-in:before {
  top: calc(-0.0625em * 1.2);
  right: calc(-0.0625em * 1.2);
  bottom: calc(-0.0625em * 1.2);
  left: calc(-0.0625em * 1.2);
  opacity: 0;
}
.hovers-outline-out:before {
  opacity: 0;
}
.hovers-outline-out:before {
  top: calc(-0.0625em * 1.6);
  right: calc(-0.0625em * 1.6);
  bottom: calc(-0.0625em * 1.6);
  left: calc(-0.0625em * 1.6);
  opacity: 0;
}
.hovers-reveal:before {
  border-width: 0;
  opacity: 0;
}

@keyframes ripple-out {
  50% {
    opacity: 1;
  }

  100% {
    top: calc(-0.0625em * 1.2);
    right: calc(-0.0625em * 1.2);
    bottom: calc(-0.0625em * 1.2);
    left: calc(-0.0625em * 1.2);
    opacity: 0;
  }
}
.hovers-ripple-out:hover:before,
.hovers-ripple-out.active:before {
  animation-name: ripple-out;
}

@keyframes ripple-in {
  50% {
    opacity: 1;
  }

  100% {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
  }
}
.hovers-ripple-in:hover:before,
.hovers-ripple-in.active:before {
  animation-name: ripple-in;
}

.hovers-outline-out:hover:before,
.hovers-outline-in:hover:before,
.hovers-outline-out.active:before,
.hovers-outline-in:hover:before {
  top: calc(-0.0625em * 0.8);
  right: calc(-0.0625em * 0.8);
  bottom: calc(-0.0625em * 0.8);
  left: calc(-0.0625em * 0.8);
  opacity: 1;
}

.hovers-reveal:hover:before,
.hovers-reveal.active:before {
  transform: translateY(0);
  border-width: calc(0.0625em * 0.4);
  opacity: 1;
}

/* 圆角化 */
.hovers-round-corners {
  overflow: hidden;
}
.hovers-round-corners:hover,
.hovers-round-corners.active {
  border-radius: 0.0625em;
}

/* 重叠:翻转切换 */

.hover-turn {
  position: relative;
  transform: translateZ(1px);
}

.hover-turn-before,
.hover-turn-after {
  position: absolute;
  top: 0;
  left: 0;
}

@keyframes hover-turn {
  from {
    transform: rotateY(-90deg);
  }

  50% {
    transform: scale(1.2);
  }

  to {
    transform: rotateY(0);
  }
}

.hover-turn:not(:hover) .hover-turn-before,
.hover-turn:hover .hover-turn-after {
  animation: hover-turn 0.5s;
}

.hover-turn:hover .hover-turn-before,
.hover-turn:not(:hover) .hover-turn-after {
	opacity: 0;
}
/* [[Category:在模板名字空间下的CSS页面]] */

/*
.colormu_toggle_on是为了黑幕开关(MediaWiki:Gadget-heimu-toggle.js)做适配。
.colormu-drk、.colormu-bri分别是暗色背景和亮色背景,
暗色背景的文字通常是浅色,在半隐背景后,颜色需要变成深色。
*/
 
.colormu-drk {
	color: #FFF;
}
.colormu-bri {
	color: #000;
}
.colormu-drk:not(.colormu_toggle_on) a {
	color: #add8e6;
}
.colormu-drk:not(.colormu_toggle_on) a.new {
	color: #FCC;
}
.colormu>span, .colormu a, .colormu a>span {
	transition: color 0.2s;
}
 
.colormu:not(:hover):not(:active):not(.colormu_toggle_on)>span,
.colormu:not(:hover):not(:active):not(.colormu_toggle_on) a {
	color: transparent;
}
 
/* for T:Coloredlink in T:彩幕 */
.colormu:not(:hover):not(:active):not(.colormu_toggle_on) a>span {
	color: transparent !important;
}
 
/* for T:彩幕 in link */
a .colormu-bri {
	color: inherit;
}
a:hover .colormu>span, a:active .colormu>span,
/* and for MediaWiki:Gadget-heimu-toggle.js */
.colormu-drk.colormu_toggle_on, .colormu_toggle_on>span, .colormu-drk.colormu_toggle_on a>span {
	color: inherit !important;
}
/* === 轮播图容器 === */
.mw-carousel {
  position: relative;
  width: 100%;
  max-width: 960px;
  margin: 2em auto;
  overflow: hidden;
  border-radius: 16px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  aspect-ratio: 16 / 9;
  background-color: #f8f9fa;
}

/* === 图片区域 === */
.mw-carousel .carousel-image {
  width: 100%;
  height: 100%;
  position: relative;
}

.mw-carousel .carousel-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* === 默认状态下的文字:底部横条,文字靠左 === */
.mw-carousel .carousel-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0));
  color: white;
  padding: 2em 1.5em 1.2em;
  text-align: left;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  z-index: 2;
  transform: translateY(0);
}

/* === 悬停时的文字效果:文字全屏覆盖,背景渐变 === */
.mw-carousel:hover .carousel-caption {
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  transform: translateY(0);
  background: rgba(0, 0, 0, 0.6); 
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 2em;
  border-radius: 0;
  backdrop-filter: blur(3px);
}

/* === 标题 + 描述样式 === */
.mw-carousel .carousel-caption h3 {
  margin: 0 0 0.5em;
  font-size: 1.6em;
  font-weight: 600;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
  transform: translateY(0);
  transition: transform 0.4s ease;
}

.mw-carousel .carousel-caption p {
  margin: 0;
  font-size: 1.1em;
  line-height: 1.4;
  max-width: 80%;
  opacity: 1;
  transform: translateY(0);
  transition: all 0.4s ease 0.1s;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}

.mw-carousel:hover .carousel-caption h3 {
  transform: translateY(0);
}

.mw-carousel:hover .carousel-caption p {
  opacity: 1;
  transform: translateY(0);
}

/* === 左右切换按钮(垂直居中) === */
.mw-carousel .carousel-navigation {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%);
  z-index: 3;
  padding: 0 1.5em;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.mw-carousel:hover .carousel-navigation {
  opacity: 1;
}

.mw-carousel .carousel-prev,
.mw-carousel .carousel-next {
  background-color: rgba(255, 255, 255, 0.8);
  border: none;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  font-size: 22px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  color: #333;
}

.mw-carousel .carousel-prev:hover,
.mw-carousel .carousel-next:hover {
  background-color: rgba(255, 255, 255, 0.95);
  transform: scale(1.05);
}

/* === 指示器 - 修改为底部右侧 === */
.mw-carousel .carousel-indicators {
  position: absolute;
  bottom: 15px;
  right: 20px;  /* 改为右对齐 */
  left: auto;    /* 取消左对齐 */
  transform: none; /* 取消水平居中变换 */
  display: flex;
  gap: 10px;
  z-index: 4;
  padding: 0.5em 1em;
  border-radius: 20px;
  background-color: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(5px);
}

.mw-carousel .carousel-indicators .indicator {
  width: 10px;
  height: 10px;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s;
}

.mw-carousel .carousel-indicators .indicator.active {
  background-color: #ffffff;
  transform: scale(1.2);
  box-shadow: 0 0 8px rgba(255, 255, 255, 0.5);
}

.mw-carousel .carousel-indicators .indicator:hover {
  background-color: rgba(255, 255, 255, 0.8);
}

/* === 图片全局统一显示效果 === */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* === 添加图片过渡效果 === */
.mw-carousel .carousel-image img {
  transition: transform 0.5s ease;
}

.mw-carousel:hover .carousel-image img {
  transform: scale(1.03);
}


/* Common styles */
.section-title {
  background-color: #f0f0f0;
  color: #333;
  font-weight: bold;
  padding: 0.5rem 1rem;
  font-size: 1.2rem;
  border-left: 4px solid #3366cc;
}

.see-more {
  text-align: right;
  padding: 0.3rem 1rem;
  font-size: 0.9rem;
  background-color: #f5f5f5;
}

.see-more a {
  color: #3366cc;
}

/* 主页横幅样式 */
.main-page-banner {
  display: grid;
  grid-template-areas: 
    "welcome welcome welcome"
    "discord faq join";
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 3%;
  margin-bottom: 4rem;
  width: 100%;
  box-sizing: border-box;
}

/* 欢迎文本区域 */
.main-page-banner .welcome-text {
  grid-area: welcome;
  background-color: rgb(var(--gray-monochrome, 66, 66, 72));
  color: rgb(var(--white-monochrome, 252, 252, 252));
  font-style: italic;
  padding: 1.5rem;
  border-radius: 1rem 1rem 0 0;
  margin: 0;
  width: 100%;
}

.main-page-banner .welcome-text p {
  margin: 0;
  color: rgb(var(--white-monochrome, 252, 252, 252));
}

/* 导航链接区域 */
.main-page-banner .navigation-links {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 3%;
  grid-area: discord / discord / join / join;
  width: 100%;
}

.main-page-banner .nav-button {
  background-color: rgb(var(--gray-monochrome, 66, 66, 72));
  border-radius: 0 0 1rem 1rem;
  margin: 0 0 4rem 0;
  transition: margin 150ms cubic-bezier(0.4, 0, 0.2, 1);
  height: min-content;
}

.main-page-banner .nav-button:hover {
  margin: 0 0 1rem 0;
}

.main-page-banner .nav-button a {
  display: block;
  padding: 0.5rem 0;
  width: 100%;
  text-align: center;
  color: rgb(var(--white-monochrome, 0, 0, 0));
  font-size: 1.25rem;
  transition: padding 150ms cubic-bezier(0.4, 0, 0.2, 1);
  font-weight: bold;
  text-decoration: none;
}

.main-page-banner .nav-button a:hover {
  padding: 2rem 0;
  text-decoration: none;
}

/* 针对背景图片的设置 */
.main-page-banner {
  position: relative;
  z-index: 1;
}

.main-page-banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('您的背景图片URL');
  background-size: cover;
  background-position: center;
  opacity: 0.3; /* 调整透明度使文字可读 */
  z-index: -1;
  border-radius: 1rem;
}

/* 响应式布局 */
@media (max-width: 767px) {
  .main-page-banner {
    grid-template-areas: 
      "welcome"
      "navigation";
    grid-template-columns: 1fr;
  }
  
  .main-page-banner .welcome-text {
    width: 100%;
    margin-bottom: 0;
    box-sizing: border-box;
  }
  
  .main-page-banner .navigation-links {
    grid-area: navigation;
    display: flex;
    width: 100%;
    overflow: visible;
  }
  
  .main-page-banner .nav-button {
    flex: 1;
    margin: 0 0 4rem 0;
  }
  
  .main-page-banner .nav-button:not(:last-child) {
    margin-right: 3%;
  }
  
  .main-page-banner .nav-button a {
    font-size: 1.1rem;
  }
  
  .main-page-banner .nav-button:hover {
    margin: 0 0 1rem 0;
  }
}
/* Announcement styles */
.announcement-container {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #f0f0f0;
  align-content: space-between;
  margin-bottom: 2rem;
}

.announcement-container .section-title {
  width: 100%;
  text-align: center;
  font-size: 1.5rem;
  border-left: none;
  border-bottom: 2px solid #f0f0f0;
}

.announcement-container .announcement-content {
  background-color: #fafafa;
  width: 100%;
  padding: 0.75rem;
}

.announcement-container .more-content {
  width: 100%;
  border-top: 2px solid #f0f0f0;
}
.announcement-container .collapsible-block.active .collapsible-content {
  display: block;
}
.announcement-container .collapsible-block {
  width: 100%;
}
/* 更高特异性的选择器 */
.announcement-container .more-content .collapsible-block .collapsible-content {
  display: none !important;
}

.announcement-container .more-content .collapsible-block.active .collapsible-content {
  display: block !important;
}
.announcement-container .collapsible-header {
  padding: 1rem 0;
  text-align: center;
  background: rgba(240, 240, 240, 0.7);
  cursor: pointer;
}

.announcement-container .collapsible-header:hover {
  background: rgba(240, 240, 240, 1);
}

.announcement-container .collapsible-content {
  padding: 1rem;
  background: #f5f5f5;
}
/* 更高特异性的选择器 */
.announcement-container .more-content .collapsible-block .collapsible-content {
  display: none !important;
}

.announcement-container .more-content .collapsible-block.active .collapsible-content {
  display: block !important;
}
/* Recent pages styles */
.main-page-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 2rem;
}

.recent-pages-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 1rem;
}

.recent-pages-container .page-section {
  flex-basis: 48%;
  display: grid;
  grid-template-areas: "title" "page" "more";
  grid-template-rows: auto 1fr auto;
  border: 1px solid #f0f0f0;
}

.recent-pages-container .section-title {
  grid-area: title;
}

.recent-pages-container .page-list {
  grid-area: page;
  border: solid #f0f0f0;
  border-width: 0 1px;
  padding: 0.5rem 1rem;
  background-color: #fafafa;
  max-height: 15rem;
  overflow-y: auto;
}

.recent-pages-container .page-list a {
  display: block;
  padding: 0.3rem 0;
  border-bottom: 1px solid #f0f0f0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.recent-pages-container .page-list a:last-child {
  border-bottom: none;
}

.recent-pages-container .see-more {
  grid-area: more;
}

/* Featured content styles */
.featured-content-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.featured-content-container .feature-item {
  flex-basis: 48%;
  display: grid;
  grid-template-areas: "title" "content" "more";
  grid-template-rows: auto 1fr auto;
  border: 1px solid #f0f0f0;
  margin-bottom: 1rem;
}

.featured-content-container .section-title {
  grid-area: title;
}

.featured-content-container .feature-content {
  grid-area: content;
  border: solid #f0f0f0;
  border-width: 0 1px;
  padding: 1rem;
  background-color: #fafafa;
}

.featured-content-container .feature-content .featured-title {
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
}

.featured-content-container .feature-content .featured-author {
  font-size: 0.9rem;
  color: #666;
  margin-bottom: 0.5rem;
}

.featured-content-container .feature-content .featured-description {
  font-style: italic;
  color: #444;
}

.featured-content-container .see-more {
  grid-area: more;
}

/* Tools and resources styles */
.tools-and-resources {
  margin-bottom: 2rem;
}

.tools-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 1rem;
}

.tools-container .tool-item {
  background: #f5f5f5;
  color: #333;
  padding: 1rem;
  display: grid;
  grid-template-areas:
    "icon content"
    "title content";
  grid-template-columns: max-content 1fr;
  grid-template-rows: 0.6fr 0.4fr;
  grid-gap: 0.5rem 1rem;
  border-left: 4px solid #3366cc;
}

.tools-container .tool-item .tool-icon {
  grid-area: icon;
  justify-self: center;
  align-self: end;
}

.tools-container .tool-item .tool-title {
  grid-area: title;
  text-align: center;
}

.tools-container .tool-item .tool-title a {
  color: #3366cc;
  font-weight: bold;
}

.tools-container .tool-item .tool-description {
  grid-area: content;
  align-self: center;
}

/* News styles */
.news-container {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #f0f0f0;
  align-content: space-between;
}

.news-container .section-title {
  width: 100%;
  text-align: center;
  font-size: 1.5rem;
  border-left: none;
  border-bottom: 2px solid #f0f0f0;
}

.news-container .news-content {
  background-color: #fafafa;
  width: 100%;
  padding: 0.75rem;
}

.news-container .news-content .news-item {
  border-bottom: 1px solid #f0f0f0;
  padding: 0.5rem 0;
}

.news-container .news-content .news-item:last-child {
  border-bottom: none;
}

.news-container .news-content .news-title {
  font-weight: bold;
  margin-bottom: 0.3rem;
}

.news-container .news-content .news-date {
  font-size: 0.8rem;
  color: #666;
  margin-bottom: 0.3rem;
}

.news-container .news-archive {
  background: #f0f0f0;
  text-align: right;
  width: 100%;
  padding: 0.3rem 1rem;
}

.news-container .news-archive a {
  color: #3366cc;
}

/* Carousel styles */
/* Import styles from main.scss file */
.carousel-container {
  position: relative;
  overflow: hidden;
  margin-bottom: 1rem;
}

.carousel-container .rolling {
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative;
  overflow: hidden;
}

/* Add more carousel styles converted from SCSS */
/* These would need to be adapted from the complex SCSS you provided */

/* Responsive styles */
@media (max-width: 767px) {
  .announcement-container .section-title {
    font-size: 1.2rem;
  }
  
  .recent-pages-container .page-section,
  .featured-content-container .feature-item {
    flex-basis: 100%;
    margin-bottom: 1.5rem;
  }
  
  .tools-container {
    grid-template-columns: 1fr;
  }
}
/* 为主内容区域添加半透明模糊白色效果 - 只针对最外层容器 */
.mw-body, 
#content {
  background-color: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.08) !important;
  border-radius: 12px !important;
  padding: 25px !important;
  margin-bottom: 20px !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  min-height: 500px !important;
}

/* 确保标题与新的背景相协调 */
.mw-body h1, .mw-body h2, .mw-body h3, .mw-body h4, .mw-body h5, .mw-body h6 {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
  padding-bottom: 0.3em !important;
}
/* ===== 变色龙皮肤顶栏毛玻璃效果 - 修复点击与悬停兼容版 ===== */

/* 1. 顶栏基础样式 - 半透明毛玻璃效果 */
html body nav.navbar,
html body div.navbar,
html body .navbar-fixed-top,
html body .navbar-default,
html body .navbar-collapse {
  background-color: rgba(255, 255, 255, 0.75) !important;
  backdrop-filter: blur(10px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(10px) saturate(180%) !important;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08) !important;
  border: none !important;
  transition: all 0.3s ease !important;
  
  /* 解决z-index问题 */
  position: relative !important;
  z-index: 9999 !important;
}

/* 2. 导航链接样式 */
.navbar .nav > li > a,
.navbar-nav > li > a {
  color: rgba(0, 0, 0, 0.75) !important;
  transition: all 0.25s ease !important;
  padding: 15px 20px !important;
  font-weight: 500 !important;
}

/* 3. 链接悬停效果 */
.navbar .nav > li > a:hover,
.navbar-nav > li > a:hover {
  color: rgba(0, 0, 0, 0.95) !important;
  background-color: rgba(0, 0, 0, 0.05) !important;
  transform: scale(1.05) !important;
}

/* 4. 下拉菜单样式 */
.dropdown-menu {
  background-color: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border-radius: 8px !important;
  border: none !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1) !important;
  padding: 8px 0 !important;
  overflow: hidden !important;
  
  /* z-index修复 */
  z-index: 10000 !important;
}

/* 5. 下拉菜单项样式 */
.dropdown-menu > li > a {
  padding: 10px 20px !important;
  color: rgba(0, 0, 0, 0.75) !important;
  transition: all 0.2s ease !important;
}

/* 6. 下拉菜单项悬停效果 */
.dropdown-menu > li > a:hover {
  background-color: rgba(0, 0, 0, 0.08) !important;
  color: rgba(0, 0, 0, 0.95) !important;
  transform: translateX(5px) !important;
  font-weight: 500 !important;
}

/* 7. 确保主内容区域不会覆盖导航栏 */
.mw-body, 
#content, 
#mw-content-text, 
.mw-parser-output {
  z-index: 1 !important;
  position: relative !important;
}

/* 8. 移动设备特殊处理 */
@media (max-width: 767px) {
  .navbar-collapse {
    background-color: rgba(255, 255, 255, 0.95) !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
    z-index: 10001 !important;
  }
  
  .navbar-nav .open .dropdown-menu {
    background-color: rgba(245, 245, 245, 0.9) !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  
  .dropdown-menu > li > a:hover {
    transform: translateX(3px) !important;
  }
}

/* 9. 浏览器兼容性处理 */
@supports not (backdrop-filter: blur(10px)) {
  .navbar, .dropdown-menu {
    background-color: rgba(255, 255, 255, 0.95) !important;
  }
}

/* 在顶栏显示用户头像 - 针对变色龙皮肤 */
.navbar-userloggedin,
#personal-inner,
#p-personal .vector-menu-content-list > li:first-child,
.navbar-personaltools > li:first-child {
    position: relative;
    padding-left: 30px !important;
}

.navbar-userloggedin::before,
#personal-inner::before,
#p-personal .vector-menu-content-list > li:first-child > a::before,
.navbar-personaltools > li:first-child > a::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    border: 1px solid rgb(var(--bright-accent));
    z-index: 100;
}

/* 头像悬停效果 */
.navbar-userloggedin:hover::before,
#personal-inner:hover::before,
#p-personal .vector-menu-content-list > li:first-child > a:hover::before,
.navbar-personaltools > li:first-child > a:hover::before {
    transform: translateY(-50%) scale(1.2) !important;
    box-shadow: 0 0 10px rgba(var(--bright-accent), 0.6) !important;
    border-color: rgb(var(--white-monochrome)) !important;
}
/* 主页横幅样式 - 美化版 */
.main-page-banner {
  display: grid !important;
  grid-template-areas: 
    "welcome welcome welcome"
    "discord faq join" !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  grid-column-gap: 3% !important;
  margin-bottom: 4rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
  box-shadow: 0 5px 25px rgba(0, 0, 0, 0.1) !important;
  position: relative !important;
  z-index: 1 !important;
  border-radius: 1rem !important;
  overflow: hidden !important;
}

/* 欢迎文本区域 */
.main-page-banner .welcome-text {
  grid-area: welcome !important;
  background: linear-gradient(135deg, rgba(235, 238, 245, 0.95), rgba(210, 225, 240, 0.95)) !important;
  color: #3a4a5a !important;
  font-style: normal !important;
  padding: 2rem !important;
  border-radius: 1rem 1rem 0 0 !important;
  margin: 0 !important;
  width: 100% !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
  transition: all 0.5s ease !important;
  z-index: 2 !important;
}

/* 欢迎文本背景图片 */
.main-page-banner .welcome-text::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-image: url('/aoh2wiki/images/b/be/Banner_Default.jpg') !important;
  background-size: cover !important;
  background-position: center !important;
  opacity: 0.15 !important;
  z-index: -1 !important;
  transition: opacity 0.8s ease, transform 1.2s ease !important;
  transform: scale(1.05) !important;
}

.main-page-banner .welcome-text p {
  margin: 0 !important;
  color: #3a4a5a !important;
  font-weight: 500 !important;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.8) !important;
  position: relative !important;
  z-index: 2 !important;
  font-size: 1.1rem !important;
  line-height: 1.6 !important;
}

/* 导航链接区域 */
.main-page-banner .navigation-links {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  grid-column-gap: 3% !important;
  grid-area: discord / discord / join / join !important;
  width: 100% !important;
  background: linear-gradient(to bottom, rgba(225, 235, 245, 0.9), rgba(215, 225, 235, 0.9)) !important;
  padding: 0.5rem !important;
  border-radius: 0 0 1rem 1rem !important;
}

.main-page-banner .nav-button {
  background: linear-gradient(to bottom, #f0f5fa, #e8eef7) !important;
  border-radius: 0.7rem !important;
  margin: 0 0.5rem 2.5rem 0.5rem !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  height: min-content !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08) !important;
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid rgba(210, 220, 235, 0.8) !important;
}

/* 导航按钮的背景图片 - 初始隐藏 */
.main-page-banner .nav-button::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-size: cover !important;
  background-position: center !important;
  opacity: 0 !important;
  z-index: 0 !important;
  transition: opacity 0.6s ease !important;
}

/* 为每个按钮设置不同的背景图片 */
.main-page-banner .nav-button.discord::before {
  background-image: url('/aoh2wiki/images/b/be/Discord_Banner.jpg') !important;
}

.main-page-banner .nav-button.faq::before {
  background-image: url('/aoh2wiki/images/b/be/FAQ_Banner.jpg') !important;
}

.main-page-banner .nav-button.join::before {
  background-image: url('/aoh2wiki/images/b/be/Join_Banner.jpg') !important;
}

.main-page-banner .nav-button:hover {
  margin: 0 0.5rem 0.8rem 0.5rem !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15) !important;
}

/* 鼠标悬停时显示背景图片 */
.main-page-banner .nav-button:hover::before {
  opacity: 0.2 !important;
}

/* 鼠标悬停时变更欢迎区域的背景图片 */
.main-page-banner .navigation-links:hover ~ .welcome-text::before {
  opacity: 0.1 !important;
}

.main-page-banner .nav-button.discord:hover ~ .welcome-text::before,
.main-page-banner:has(.nav-button.discord:hover) .welcome-text::before {
  background-image: url('/aoh2wiki/images/b/be/Discord_Banner.jpg') !important;
  opacity: 0.25 !important;
  transform: scale(1) !important;
}

.main-page-banner .nav-button.faq:hover ~ .welcome-text::before,
.main-page-banner:has(.nav-button.faq:hover) .welcome-text::before {
  background-image: url('/aoh2wiki/images/b/be/FAQ_Banner.jpg') !important;
  opacity: 0.25 !important;
  transform: scale(1) !important;
}

.main-page-banner .nav-button.join:hover ~ .welcome-text::before,
.main-page-banner:has(.nav-button.join:hover) .welcome-text::before {
  background-image: url('/aoh2wiki/images/b/be/Join_Banner.jpg') !important;
  opacity: 0.25 !important;
  transform: scale(1) !important;
}

.main-page-banner .nav-button a {
  display: block !important;
  padding: 1rem 0 !important;
  width: 100% !important;
  text-align: center !important;
  color: #4a5a6a !important;
  font-size: 1.15rem !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  font-weight: bold !important;
  text-decoration: none !important;
  position: relative !important;
  z-index: 2 !important;
}

.main-page-banner .nav-button a:hover {
  padding: 1.5rem 0 !important;
  text-decoration: none !important;
  color: #3a4a5a !important;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.5) !important;
}

/* 响应式调整 */
@media (max-width: 767px) {
  .main-page-banner {
    grid-template-areas: 
      "welcome"
      "navigation" !important;
    grid-template-columns: 1fr !important;
  }
  
  .main-page-banner .welcome-text {
    border-radius: 1rem 1rem 0 0 !important;
  }
  
  .main-page-banner .navigation-links {
    grid-area: navigation !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-around !important;
    padding: 0.8rem !important;
  }
  
  .main-page-banner .nav-button {
    flex: 1 !important;
    min-width: 30% !important;
    margin: 0 0.3rem 2rem 0.3rem !important;
  }
  
  .main-page-banner .nav-button:hover {
    margin: 0 0.3rem 0.8rem 0.3rem !important;
  }
}

/* 添加淡入动画效果 */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

.main-page-banner {
  animation: fadeIn 0.8s ease-out forwards !important;
}
/* 公告列表样式 */
.announcement-container .announcement-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.announcement-container .announcement-list li {
  padding: 10px 0;
  border-bottom: 1px solid #f0f0f0;
  margin: 0;
  line-height: 1.5;
  color: #333;
}

.announcement-container .announcement-list li:last-child {
  border-bottom: none;
}

/* 链接样式 */
.announcement-container .announcement-list li a {
  color: #3366cc;
  text-decoration: none;
  transition: color 0.2s ease;
}

.announcement-container .announcement-list li a:hover {
  color: #1a3366;
  text-decoration: underline;
}

/* 鼠标悬停效果 */
.announcement-container .announcement-list li:hover {
  background-color: #f9f9f9;
}
/* 公告容器样式 */
.announcement-container {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #f0f0f0;
  align-content: space-between;
  margin-bottom: 2rem;
}

.announcement-container .section-title {
  width: 100%;
  text-align: center;
  font-size: 1.5rem;
  background-color: #f0f0f0;
  color: #333;
  padding: 0.5rem 1rem;
  border-left: none;
  border-bottom: 2px solid #f0f0f0;
}

.announcement-container .announcement-content {
  background-color: #fafafa;
  width: 100%;
  padding: 0.75rem;
}

/* 公告项目样式 */
.announcement-container .announcement {
  padding: 12px;
  margin-bottom: 10px;
  background-color: #fff;
  border-left: 3px solid #3366cc;
  border-radius: 0 3px 3px 0;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
  transition: all 0.2s ease;
}

.announcement-container .announcement:last-child {
  margin-bottom: 0;
}

.announcement-container .announcement:hover {
  background-color: #f8f8f8;
  border-left-width: 5px;
  transform: translateX(2px);
}

/* 公告中的链接样式 */
.announcement-container .announcement a {
  color: #3366cc;
  text-decoration: none;
  transition: color 0.2s ease;
}

.announcement-container .announcement a:hover {
  color: #1a3366;
  text-decoration: underline;
}

/* 粗体文字样式 */
.announcement-container .announcement strong,
.announcement-container .announcement b {
  color: #333;
}

/* 折叠区域样式 */
.announcement-container .more-content {
  width: 100%;
  border-top: 2px solid #f0f0f0;
}

.announcement-container .collapsible-block .collapsible-header {
  padding: 1rem 0;
  text-align: center;
  background: rgba(240, 240, 240, 0.7);
  cursor: pointer;
  transition: background 0.2s ease;
}

.announcement-container .collapsible-block .collapsible-header:hover {
  background: rgba(240, 240, 240, 1);
}

.announcement-container .collapsible-block .collapsible-content {
  padding: 1rem;
  background: #f5f5f5;
}

/* 响应式调整 */
@media (max-width: 767px) {
  .announcement-container .section-title {
    font-size: 1.2rem;
  }
  
  .announcement-container .announcement {
    padding: 10px;
  }
}
.gallery {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
}
img {  
    display: inline-block !important;  
}  
/* [[Category:在模板名字空间下的CSS页面]] */