/* Unifont 字体定义 */
@font-face {
    font-family: 'Unifont';
    src: url('assets/fonts/unifont-15.1.04.ttf') format('truetype'); /* 确保路径正确 */
    font-weight: normal;
    font-style: normal;
}

/* 老式网站基础样式 */
body {
    font-family: 'Unifont', monospace; /* Unifont 优先，monospace 作为后备 */
    background-color: #111; /* 深色背景 */
    color: #0f0; /* 亮绿色文字，类似老式终端 */
    margin: 0;
    padding: 0;
    font-size: 16px; /* Unifont 是点阵字体，特定大小效果更好 */
    line-height: 1.6;
    image-rendering: pixelated; /* 使图片也像素化，配合Unifont风格 */
}

.container {
    width: 90%;
    max-width: 1000px; /* 最大宽度，保持一些可读性 */
    margin: 20px auto;
    background-color: #000; /* 内容区背景 */
    border: 2px solid #0f0; /* 绿色边框 */
    box-shadow: 0 0 15px #0f0a; /* 轻微辉光效果 */
    padding: 10px;
    display: grid; /* 使用 Grid 布局 */
    grid-template-columns: 220px 1fr; /* 侧边栏和主内容区域 */
    grid-template-rows: auto 1fr auto; /* header, main content, footer */
    grid-template-areas:
        "header header"
        "sidebar content"
        "footer footer";
    gap: 10px;
}

header {
    grid-area: header;
    text-align: center;
    padding: 10px 0;
    border-bottom: 1px dashed #0f0;
}

header h1 {
    margin: 0;
    font-size: 2.5em; /* 放大标题 */
    color: #ff0; /* 黄色标题 */
    text-shadow: 2px 2px #f00; /* 红色阴影，增加复古感 */
}

header .subtitle {
    font-size: 0.9em;
    color: #aaa;
    margin-top: 5px;
    font-style: italic;
}

.sidebar {
    grid-area: sidebar;
    background-color: #0a0a0a;
    padding: 15px;
    border-right: 1px solid #0f0;
}

.sidebar h2 {
    font-size: 1.2em;
    color: #ff0;
    margin-top: 0;
    border-bottom: 1px solid #0f0;
    padding-bottom: 5px;
}

.sidebar ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.sidebar ul li a {
    display: block;
    padding: 8px 5px;
    text-decoration: none;
    color: #0f0;
    border-bottom: 1px dotted #050; /* 分隔线 */
}

.sidebar ul li a:hover,
.sidebar ul li a.active {
    background-color: #030;
    color: #fff; /* 悬停/激活时反白 */
    text-decoration: underline;
}

.wikidot-logo {
    margin-top: 20px;
    padding-top: 10px;
    border-top: 1px dashed #0f0;
    text-align: center;
    font-size: 0.8em;
    color: #777;
}

.content {
    grid-area: content;
    padding: 15px;
    background-color: #050505; /* 内容区稍浅一点的背景 */
}

.content h2 {
    font-size: 1.8em;
    color: #ff0;
    margin-top: 0;
}

.content hr {
    border: 0;
    border-top: 1px dashed #0f0;
    margin: 20px 0;
}

.content p {
    margin-bottom: 1em;
}

.content a {
    color: #0ff; /* 青色链接 */
    text-decoration: underline;
}

.content a:hover {
    color: #fff;
    background-color: #033;
}

.survival-difficulty {
    border: 1px solid #0a0;
    padding: 10px;
    margin-bottom: 15px;
    background-color: #010;
}

.survival-difficulty strong {
    color: #ff0;
}

.level-image {
    max-width: 100%;
    height: auto;
    border: 1px solid #0f0;
    margin-bottom: 15px;
    display: block; /* 确保图片是块级元素，以便居中或应用边距 */
}

.entity-entry {
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.entity-entry h3 {
    color: #f90; /* 实体标题用橙色 */
}

.entity-separator {
    border-top: 1px solid #555; /* 实体之间的分隔线 */
}


footer {
    grid-area: footer;
    text-align: center;
    padding: 15px;
    border-top: 1px dashed #0f0;
    font-size: 0.8em;
    color: #aaa;
}

/* 响应式调整：小屏幕下单栏布局 */
@media (max-width: 768px) {
    .container {
        grid-template-columns: 1fr; /* 单栏 */
        grid-template-areas:
            "header"
            "sidebar"
            "content"
            "footer";
        width: 95%;
    }
    .sidebar {
        border-right: none;
        border-bottom: 1px solid #0f0; /* 侧边栏下方加边框 */
    }
}