 /* 通用样式 */
 /* 像素风重置 & 基础 CRT 效果 */
        body,
        html {
            margin: 0;
            padding: 0;
            width: 100%;
            height: 100%;
            overflow: hidden;
            /* 隐藏滚动条，保持纯屏 */
            background-color: #1a1f2e;
            /* 深色底色 */
            font-family: 'Press Start 2P', 'Courier New', monospace;
            /* 经典的像素字体 */
            image-rendering: pixelated;
            image-rendering: crisp-edges;
        }

        /* 如果用户没有安装像素字体，提供回退方案 */
        @import url('https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap');

        .crt::before {
            content: " ";
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06));
            z-index: 2;
            background-size: 100% 4px, 3px 100%;
            pointer-events: none;
            /* 让点击透过扫描线 */
            animation: flicker 0.15s infinite;
        }

        @keyframes flicker {
            0% {
                opacity: 0.85;
            }

            50% {
                opacity: 1;
            }

            100% {
                opacity: 0.9;
            }
        }

        .scanline {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 5px;
            background: rgba(0, 255, 0, 0.1);
            opacity: 0.75;
            animation: scan 8s linear infinite;
            z-index: 3;
            pointer-events: none;
        }

        @keyframes scan {
            0% {
                top: -5px;
            }

            100% {
                top: 100%;
            }
        }

        /* 主容器：一个像素风格的窗口 */
        .terminal {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: min(90%, 700px);
            /* 更灵活的宽度设置 */
            max-width: 700px;
            max-height: 95vh;
            /* 新增：限制高度 */
            overflow-y: auto;
            /* 新增：启用滚动 */
            background-color: #0a0c14;
            border: 6px solid #3b3f5c;
            box-shadow: 0 0 0 4px #1e2335, 10px 10px 0px rgba(0, 0, 0, 0.5);
            padding: clamp(1rem, 5vw, 2rem);
            /* 动态内边距 */
            color: #a0e0a0;
            text-shadow: 0 0 5px #0f0;
            z-index: 10;
            image-rendering: pixelated;
            border-style: solid;
            border-color: #4a4f70 #1e2335 #1e2335 #4a4f70;
            box-sizing: border-box;
            /* 确保padding不影响总宽 */
        }

        .terminal::-webkit-scrollbar {
            width: 12px;
            background: #1a1f2e;
        }

        .terminal::-webkit-scrollbar-thumb {
            background: #4a4f70;
            border: 2px solid #1e2335;
        }

        /* 像素风标题 */
        h1 {
            font-size: 1.8rem;
            line-height: 2rem;
            margin-top: 0;
            margin-bottom: 2rem;
            color: #ff7575;
            text-shadow: 3px 3px 0 #5a1e1e;
            letter-spacing: 2px;
            word-break: break-word;
            text-align: center;
            border-bottom: 4px dotted #4f5b62;
            padding-bottom: 10px;
        }

        /* 像素图标 (用ASCII/符号模拟) */
        .pixel-icon {
            font-size: 3rem;
            text-align: center;
            margin: 0px 0;
            color: #ffb86b;
            filter: drop-shadow(2px 2px 0 #7a4d1a);
        }

        .pixel-icon span {
            display: inline-block;
            transform: scale(1);
            image-rendering: pixelated;
        }

        /* 核心消息 */
        .denied-message {
            font-size: 1.5rem;
            text-align: center;
            /* margin: 30px 0; */
            padding: 15px;
            background-color: #1a1e2a;
            border: 4px solid #4d4d6b;
            color: #f0a0a0;
            text-transform: uppercase;
            box-shadow: inset 0 0 20px #270000;
        }

        .denied-message p {
            margin: 0;
            word-break: break-word;
        }

        /* 提示文本 */
        .notice {
            font-size: 1rem;
            line-height: 1.8rem;
            margin: 20px 0 20px;
            color: #b0d0b0;
            background: rgba(0, 30, 0, 0.6);
            padding: 15px;
            border-left: 6px solid #57a857;
        }

        /* 闪烁的光标 */
        .blink {
            animation: blink-anime 1s steps(2, start) infinite;
            -webkit-animation: blink-anime 1s steps(2, start) infinite;
            background-color: #a0e0a0;
            width: 15px;
            height: 15px;
            display: inline-block;
            margin-left: 5px;
            vertical-align: middle;
            box-shadow: 0 0 5px #0f0;
        }

        @keyframes blink-anime {
            to {
                visibility: hidden;
            }
        }

        /* 底部状态栏 */
        .status-bar {
            margin-top: 20px;
            border-top: 2px solid #4d607b;
            padding-top: 15px;
            font-size: 0.8rem;
            display: flex;
            justify-content: space-between;
            color: #6f8b9f;
        }

        .status-bar span {
            background: #232c3e;
            padding: 5px 10px;
            border: 2px solid #384458;
        }

        /* 响应式调整 */
        @media (max-width: 600px) {
            .terminal {
                width: 90%;
                padding: 1.5rem;
            }

            h1 {
                font-size: 1.2rem;
                line-height: 1.8rem;
            }

            .denied-message {
                font-size: 1rem;
            }
        }