
        /* 基线 */
        html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
        body { font-family: "Microsoft YaHei", "SourceHanSansCN", system-ui, sans-serif; }

        /* 桌面竖排导航 */
        .vertical-nav a,
        .vertical-nav button {
            writing-mode: vertical-rl;
            font-family: "SourceHanSansCN", "Microsoft YaHei", sans-serif;
            font-size: 15px;
            font-weight: 400;
            letter-spacing: 0.24em;
            color: #000000;
            padding: 6px 4px;
            position: relative;
            text-decoration: none;
            transition: font-weight 0.3s ease, color 0.3s ease;
        }
        .vertical-nav button { background: none; border: none; cursor: pointer; }
        .vertical-nav a::before,
        .vertical-nav button::before {
            content: "";
            position: absolute;
            top: 0; left: 0;
            width: 2px; height: 0;
            background: #7C1415;
            transition: height 0.3s ease;
        }
        .vertical-nav a:hover::before,
        .vertical-nav button:hover::before { height: 100%; }
        .vertical-nav a:hover,
        .vertical-nav button:hover { font-weight: 500; }

        /* 抽屉（移动端） */
        .drawer .drawer-overlay { background: rgba(0, 0, 0, 0.5); opacity: 0; pointer-events: none; transition: opacity 0.3s ease; }
        .drawer .drawer-panel { transform: translateX(100%); transition: transform 0.3s ease; }
        .drawer.open { pointer-events: auto; }
        .drawer.open .drawer-overlay { opacity: 1; pointer-events: auto; }
        .drawer.open .drawer-panel { transform: translateX(0); }
        .drawer-link {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 18px 4px;
            font-family: "SourceHanSansCN", "Microsoft YaHei", sans-serif;
            font-size: 18px;
            font-weight: 500;
            color: #000000;
            border-bottom: 1px solid #E5E5E5;
            background: none;
            transition: padding-left 0.3s ease, color 0.3s ease;
        }
        .drawer-link:hover, .drawer-link:focus-visible {
            padding-left: 12px;
            color: #7C1415;
            outline: none;
        }
        body.drawer-open { overflow: hidden; }

        /* 加载转圈 */
        .loading-wrap {
            grid-column: 1 / -1;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 12px;
            min-height: 40vh;
        }
        .spinner {
            width: 36px; height: 36px;
            border: 3px solid #E5E5E5;
            border-top-color: #7C1415;
            border-radius: 50%;
            animation: spin 0.8s linear infinite;
        }
        @keyframes spin { to { transform: rotate(360deg); } }

        /* 记录卡片 */
        .record-card {
            display: block;
            border: 1px solid #E5E5E5;
            text-decoration: none;
            color: #000000;
            background: #FFFFFF;
            cursor: pointer;
            transition: border-color 0.3s ease;
        }
        .record-card:hover { border-color: #7C1415; }
        .record-thumb {
            width: 100%;
            aspect-ratio: 4 / 3;
            object-fit: cover;
            display: block;
            background: #F5F5F5;
        }
        .record-meta { padding: 10px 12px; }
        .record-name { font-size: 13px; color: #000000; line-height: 1.4; }
        .record-time { font-size: 12px; color: #666666; margin-top: 2px; }

        /* 分页 */
        .pagination { display: flex; align-items: center; justify-content: center; gap: 20px; margin-top: 28px; }
        .page-btn {
            min-width: 72px;
            height: 36px;
            border: 1px solid #212121;
            background: #FFFFFF;
            color: #000000;
            font-size: 13px;
            font-family: "SourceHanSansCN", "Microsoft YaHei", sans-serif;
            cursor: pointer;
            transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
        }
        .page-btn:hover:not(:disabled) { background: #7C1415; border-color: #7C1415; color: #FFFFFF; }
        .page-btn:disabled { color: #BBBBBB; border-color: #E5E5E5; cursor: not-allowed; }
        .page-info { font-size: 13px; color: #666666; letter-spacing: 0.05em; }

        /* 灯箱（大图预览） */
        .lightbox { display: none; position: fixed; inset: 0; z-index: 80; align-items: center; justify-content: center; }
        .lightbox.open { display: flex; }
        .lightbox-overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.78); }
        .lightbox-panel { position: relative; max-width: 92vw; max-height: 88vh; }
        .lightbox-panel img {
            display: block;
            max-width: 92vw;
            max-height: 84vh;
            object-fit: contain;
            background: #111111;
            border: 1px solid #FFFFFF;
        }
        .lightbox-tools { position: absolute; top: -46px; right: 0; display: flex; gap: 10px; align-items: center; }
        .lightbox-download {
            color: #FFFFFF;
            border: 1px solid #FFFFFF;
            background: rgba(0, 0, 0, 0.35);
            padding: 6px 16px;
            font-size: 13px;
            font-family: "SourceHanSansCN", "Microsoft YaHei", sans-serif;
            text-decoration: none;
            letter-spacing: 0.1em;
            transition: background 0.3s ease, border-color 0.3s ease;
        }
        .lightbox-download:hover { background: #7C1415; border-color: #7C1415; }
        .lightbox-close {
            width: 40px; height: 40px;
            color: #FFFFFF;
            background: none;
            border: 1px solid #FFFFFF;
            font-size: 24px;
            line-height: 1;
            cursor: pointer;
            transition: background 0.3s ease, border-color 0.3s ease;
        }
        .lightbox-close:hover { background: #7C1415; border-color: #7C1415; }

        /* 页脚 */
        .site-footer { border-top: 1px solid #7C1415; }

        /* 按钮体系 */
        .btn-ink {
            background: transparent;
            color: #000000;
            border: 1px solid #212121;
            transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
            font-family: "SourceHanSansCN", "Microsoft YaHei", sans-serif;
        }
        .btn-ink:hover:not(:disabled) { background: #000000; color: #FFFFFF; border-color: #000000; }
        .btn-ink:focus-visible { outline: 1px solid #7C1415; outline-offset: 2px; }
        .btn-ink:disabled { color: #999999; border-color: #E5E5E5; cursor: not-allowed; }

        .btn-brand {
            background: #7C1415;
            color: #FFFFFF;
            border: 1px solid #7C1415;
            transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
            font-family: "SourceHanSansCN", "Microsoft YaHei", sans-serif;
        }
        .btn-brand:hover:not(:disabled) { background: #5E0F10; border-color: #5E0F10; }
        .btn-brand:focus-visible { outline: 2px solid #7C1415; outline-offset: 2px; }
        .btn-brand:disabled { background: transparent; color: #999999; border-color: #E5E5E5; cursor: not-allowed; }

        /* 弹窗（登录/退出确认） */
        .login-modal { display: none; position: fixed; inset: 0; z-index: 90; align-items: center; justify-content: center; }
        .login-modal.open { display: flex; }
        .login-modal .login-overlay { position: absolute; inset: 0; background: rgba(0, 0, 0, 0.5); }
        .login-modal .login-panel {
            position: relative;
            width: 92%;
            max-width: 400px;
            background: #FFFFFF;
            border: 1px solid #212121;
            padding: 28px 28px 32px;
        }
        .login-modal .login-title { font-family: "SourceHanSansCN", "Microsoft YaHei", sans-serif; font-size: 20px; font-weight: 500; color: #7C1415; letter-spacing: 0.08em; }
        .login-modal .login-subtitle { font-size: 12px; color: #999999; margin-top: 4px; }
        .login-modal .login-close { position: absolute; top: 10px; right: 10px; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; color: #000000; font-size: 16px; }
        .login-modal .login-close:hover { color: #7C1415; }
        .login-submit { width: 100%; height: 44px; margin-top: 18px; background: #7C1415; color: #FFFFFF; border: 1px solid #7C1415; font-size: 15px; font-family: "SourceHanSansCN", "Microsoft YaHei", sans-serif; transition: background 0.3s ease, border-color 0.3s ease; }
        .login-submit:hover:not(:disabled) { background: #5E0F10; border-color: #5E0F10; }
        .login-submit:disabled { background: transparent; color: #999999; border-color: #E5E5E5; cursor: not-allowed; }
        /* 弹窗打开动画 */
        .login-modal.open .login-overlay { animation: modalFadeIn 0.25s ease; }
        .login-modal.open .login-panel { animation: modalSlideUp 0.25s ease; }
        @keyframes modalFadeIn { from { opacity: 0; } to { opacity: 1; } }
        @keyframes modalSlideUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
        body.modal-open { overflow: hidden; }

        /* 页头滚动变色 */
        .site-header.scrolled { background-color: #7C1415; border-bottom-color: rgba(255, 255, 255, 0.35); }
        .site-header.scrolled .logo-img { filter: brightness(0) invert(1); }
        .site-header.scrolled .vertical-nav a,
        .site-header.scrolled .vertical-nav button { color: #FFFFFF; }
        .site-header.scrolled .vertical-nav a::before,
        .site-header.scrolled .vertical-nav button::before { background: #FFFFFF; }
        .site-header.scrolled #hamburger { color: #FFFFFF; }
    