        /* 首次进入全屏弹窗 */
        .welcome-fullscreen-modal {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh; /* 固定高度，内容超出时可滚动 */
            background: #fff;
            z-index: var(--z-modal);
            display: none;
            flex-direction: column;
            align-items: center;
            justify-content: flex-start;
            padding: 24px 0 120px 0; /* 增加底部padding，防止移动端工具栏遮挡 */
            box-sizing: border-box;
            overflow-y: auto;
            overflow-x: hidden; /* 防止横向滚动 */
            -webkit-overflow-scrolling: touch; /* 移动端平滑滚动 */
        }

        .welcome-fullscreen-modal.active,
        .welcome-fullscreen-modal[style*="display: block"] {
            display: flex;
        }

        /* 注册页语言组 */
        .welcome-fullscreen-modal .language-group {
            position: fixed;
            top: 24px; /* 固定间距 */
            right: 60px; /* 固定间距 */
            display: flex;
            flex-direction: column; /* 垂直排列 */
            align-items: flex-start; /* 左对齐 */
            z-index: calc(var(--z-modal) + 1); /* modal外部，比modal层级高 */
        }
        
        /* 注册页语言浮层定位 */
        .welcome-fullscreen-modal .language-popup {
            position: absolute; /* 绝对定位，不占据空间 */
            top: calc(100% + 12px); /* 按钮底部 + 12px固定间距 */
            left: 0;
        }

        /* 注册页多语言按钮 */
        .register-language-btn {
            width: 96px; /* 素材实际宽度 */
            height: 50px; /* 素材实际高度 */
            background-image: url('../../images/language/language.svg');
            background-color: transparent !important; /* 素材不加底色 */
            background-size: 100% 100%;
            background-repeat: no-repeat;
            background-position: center;
            border: none;
            cursor: pointer;
            padding: 0;
            padding-left: 16px; /* 文案距离左侧16px */
            display: flex;
            align-items: center;
            justify-content: flex-start; /* 左对齐 */
            font-family: 'Knewave', sans-serif;
            font-size: 20px; /* 固定字号 */
            color: #000;
            font-weight: bold;
            box-sizing: border-box;
        }

        /* 桌面端hover效果（仅支持hover的设备） */
        @media (hover: hover) {
            .register-language-btn:hover {
                transform: scale(1.15); /* 放大15% */
            }
        }

        .register-language-btn:active {
            transform: scale(0.8);
        }

        /* 顶部标题区域 */
        .welcome-header {
            text-align: center;
            margin-bottom: 24px;
            flex-shrink: 0; /* 防止被flex压缩 */
        }

        .welcome-title-main {
            font-family: 'Knewave', sans-serif;
            font-size: 60px;
            color: #000;
            line-height: normal;
            margin: 0;
        }

        .welcome-title-sub {
            font-size: 40px;
            font-weight: bold;
            color: #000;
            line-height: normal;
            margin: 0;
        }

        .welcome-title-desc {
            font-size: 20px;
            color: #000;
            line-height: normal;
            margin: 0;
        }

        /* BWarden图片 */
        .welcome-image {
            margin-bottom: 24px;
            text-align: center;
            flex-shrink: 0; /* 防止被flex压缩 */
        }

        .warden-image {
            display: block;
            margin: 0 auto;
            max-width: 400px;
            max-height: 25vh;
            object-fit: contain;
        }

        /* 分割线 */
        .welcome-divider {
            margin: 0;
            text-align: center;
            flex-shrink: 0; /* 防止被flex压缩 */
        }

        .welcome-divider .divider-line {
            width: 600px;
            height: auto;
            display: block;
            margin: 0 auto;
        }

        /* 表单区域 */
        .welcome-form {
            width: 100%;
            max-width: 800px;
            margin: 0 auto;
            flex-shrink: 0; /* 防止被flex压缩 */
        }

        /* 表单行 */
        .form-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            flex-wrap: nowrap; /* 标题和答案在同一行 */
            gap: 20px; /* 标题和答案之间的安全间距 */
            width: 600px; /* 固定宽度，对齐分割线 */
            margin: 0 auto;
        }

        .form-question {
            font-size: 36px;
            font-weight: bold;
            color: #000;
            width: 288px; /* 以中文最长标题"这种情况多久了？"为准：8字×36px = 288px */
            white-space: normal; /* 超长文本换行 */
            word-wrap: break-word;
            text-align: left; /* 所有标题都左对齐 */
            flex-shrink: 0; /* 不收缩 */
        }
        
        /* 英文版：标题需要更多宽度 */
        body[data-current-lang="en"] .form-question {
            width: 320px; /* 英文标题更长 */
        }

        .form-answer {
            flex: 1; /* 自动占据剩余空间：600px - 288px - 20px = 292px */
            display: flex;
            align-items: center;
            justify-content: flex-end; /* 右对齐 */
            min-width: 0;
        }
        
        /* 当宽度不足时，答案区域换行后居中，已在移动端媒体查询中处理 */

        /* 输入框 */
        .form-input {
            width: 100%; /* 占满答案区域 */
            border: none;
            background: transparent;
            font-size: 24px;
            color: #000;
            outline: none;
            padding: 0;
            margin: 0;
            text-align: right; /* 文本右对齐 */
            resize: none; /* textarea禁止手动调整大小 */
            overflow: hidden; /* 隐藏滚动条，通过JS自动调整高度 */
            line-height: normal; /* 使用正常行高 */
            font-family: inherit; /* 继承字体 */
            white-space: pre-wrap; /* 提示词在宽度内显示不下就换行 */
            word-wrap: break-word;
            box-sizing: border-box;
            vertical-align: middle; /* 垂直居中对齐 */
        }

        .form-input::placeholder {
            color: rgba(0, 0, 0, 0.3);
            text-align: right; /* placeholder也右对齐 */
            white-space: pre-wrap; /* placeholder也支持换行 */
        }

        /* 选项组 */
        .form-options {
            display: flex;
            gap: 10px; /* 每个选项之间的间距 */
            align-items: center;
            justify-content: flex-end; /* 桌面端右对齐 */
            flex-wrap: wrap; /* 宽度不足时换行 */
        }

        .option-group {
            display: flex;
            align-items: center;
            gap: 4px;
            cursor: pointer;
            flex-shrink: 0; /* 保持完整，不压缩 */
        }

        .select-icon {
            width: 24px;
            height: 24px;
        }

        .option-group.selected .select-icon {
            content: url('../../images/button/selected.svg');
        }

        .option-text {
            font-size: 24px;
            font-weight: bold;
            color: #000;
            white-space: nowrap; /* 单个选项内文字不换行 */
        }

        /* 表单内分割线 */
        .form-divider {
            margin: 0;
            text-align: center;
        }

        .form-divider .divider-line {
            width: 600px;
            height: auto;
            display: block;
            margin: 0 auto;
        }

        /* 用户协议复选框区域 */
        .agreements-section {
            margin-top: 4px;
            display: flex;
            justify-content: center;
            padding: 0 20px;
            flex-shrink: 0; /* 防止被flex压缩 */
        }

        .agreement-checkbox {
            display: flex;
            align-items: center; /* 居中对齐 */
            cursor: pointer;
            font-size: 14px;
            color: #666;
            line-height: 1.6;
            max-width: 600px;
        }

        .agreement-checkbox input[type="checkbox"] {
            margin-right: 8px;
            margin-top: 0;
            width: 18px;
            height: 18px;
            cursor: pointer;
            flex-shrink: 0;
            appearance: none;
            -webkit-appearance: none;
            border: 2px solid #000;
            background-color: #fff;
            position: relative;
        }

        .agreement-checkbox input[type="checkbox"]:checked {
            background-color: #000;
        }

        .agreement-checkbox input[type="checkbox"]:checked::after {
            content: '✓';
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            color: #fff;
            font-size: 14px;
            font-weight: bold;
        }

        .checkbox-text {
            flex: 1;
        }

        .checkbox-text a {
            color: #000;
            text-decoration: underline;
            font-weight: bold;
        }

        .checkbox-text a:hover {
            color: #333;
        }

        .agreements-section.error {
            animation: shake 0.5s ease-in-out;
        }

        .agreements-section.error .checkbox-text {
            color: #ff0000 !important;
        }

        /* 提交区域 */
        .submit-section {
            margin-top: 40px;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 30px;
            flex-shrink: 0; /* 防止被flex压缩 */
        }

        .submit-btn {
            background: url('../../images/button/button_m.svg') center center no-repeat;
            background-size: 100% 100%;
            color: #fff;
            border: none;
            padding: 16px 50px;
            font-size: 32px;
            font-weight: bold;
            cursor: pointer;
            transition: transform 0.2s ease;
            min-width: 200px;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        /* 桌面端hover效果（仅支持hover的设备） */
        @media (hover: hover) {
            .submit-btn:hover {
                transform: scale(1.15); /* 放大15% */
            }
        }
        
        .submit-btn:active {
            opacity: 0.6;
            transform: scale(0.8);
        }

        /* 表单验证样式 */
        .submit-btn.shake {
            animation: shake 0.5s ease-in-out;
        }

        @keyframes shake {
            0%, 100% { transform: translateX(0); }
            10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
            20%, 40%, 60%, 80% { transform: translateX(5px); }
        }

        .form-question.error {
            color: #ff0000 !important;
        }

        .form-input.error::placeholder {
            color: #ff0000 !important;
        }

        .relogin-btn {
            background: transparent;
            border: none;
            font-size: 20px;
            font-weight: bold;
            color: #000;
            cursor: pointer;
            padding: 0;
            text-decoration: none;
            transition: transform 0.2s ease;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        /* 桌面端hover效果（仅支持hover的设备） */
        @media (hover: hover) {
            .relogin-btn:hover {
                transform: scale(1.15); /* 放大15% */
                text-decoration: none;
            }
        }

        .relogin-btn:active {
            transform: scale(0.8);
        }

        /* 强制所有弹窗使用浅色主题 */
        .welcome-fullscreen-modal,
        .imprisonment-fullscreen-modal,
        .floating-modal,
        .fish-recharge-modal,
        .email-modal {
            background: #fff !important;
            color: #000 !important;
        }

        /* 暗色主题下的全屏弹窗 - 禁用 */
        body.dark-theme .welcome-fullscreen-modal {
            background: #fff !important;
        }

        body.dark-theme .welcome-title-main,
        body.dark-theme .welcome-title-sub,
        body.dark-theme .welcome-title-desc,
        body.dark-theme .form-question,
        body.dark-theme .form-input,
        body.dark-theme .option-text,
        body.dark-theme .relogin-btn {
            color: #000 !important;
        }

        body.dark-theme .form-input::placeholder {
            color: rgba(0, 0, 0, 0.3) !important;
        }

        body.dark-theme .submit-btn {
            background: url('../../images/button/button_m.svg') center center no-repeat;
            background-size: 100% 100%;
            color: #fff;
        }

        body.dark-theme .submit-btn:hover {
            transform: scale(1.15); /* 放大15% */
        }

        @media (prefers-color-scheme: dark) {
            body:not(.force-light) .welcome-fullscreen-modal {
                background: #fff !important;
            }

            body:not(.force-light) .welcome-title-main,
            body:not(.force-light) .welcome-title-sub,
            body:not(.force-light) .welcome-title-desc,
            body:not(.force-light) .form-question,
            body:not(.force-light) .form-input,
            body:not(.force-light) .option-text,
            body:not(.force-light) .relogin-btn {
                color: #000 !important;
            }

            body:not(.force-light) .form-input::placeholder {
                color: rgba(0, 0, 0, 0.3) !important;
            }

            body:not(.force-light) .submit-btn {
                background: url('../../images/button/button_m.svg') center center no-repeat;
                background-size: 100% 100%;
            color: #fff;
            }

            body:not(.force-light) .submit-btn:hover {
                transform: scale(1.15); /* 放大15% */
            }
        }

        /* 移动端适配 */
        @media (max-width: 768px) {
            /* 移动端容器增加底部空间，防止浏览器工具栏遮挡 */
            .welcome-fullscreen-modal {
                padding-bottom: 150px; /* 移动端增加更多底部空间 */
            }
            
            /* 移动端多语言按钮优化 */
            .welcome-fullscreen-modal .language-group {
                top: 12px;
                right: 16px;
            }
            
            /* 移动端顶部标题区域下移，避免和语言按钮重叠 */
            .welcome-header {
                margin-top: 50px; /* 为语言按钮留出空间 */
            }
        
            .welcome-title-main {
                font-size: clamp(28px, 7vw, 36px);
                white-space: nowrap;
            }

            .welcome-title-sub,
            .welcome-title-desc {
                overflow: hidden;
                position: relative;
                max-width: 90vw;
                margin: 0 auto;
            }
            
            .welcome-title-sub {
                font-size: clamp(22px, 5.5vw, 28px);
            }

            .welcome-title-desc {
                font-size: clamp(16px, 4vw, 20px);
            }
            
            /* 跑马灯效果：文字超出容器时自动滚动 */
            @keyframes marquee {
                0% { transform: translateX(0); }
                100% { transform: translateX(-50%); }
            }
            
            .welcome-title-sub.marquee,
            .welcome-title-desc.marquee {
                display: inline-block;
                white-space: nowrap;
                animation: marquee 10s linear infinite;
            }
            
            /* 首尾连接：复制内容实现无缝循环 */
            .welcome-title-sub.marquee::after,
            .welcome-title-desc.marquee::after {
                content: attr(data-text);
                margin-left: 2em; /* 间距 */
            }

            .warden-image {
                max-width: 280px;
                max-height: 20vh;
            }

            .welcome-divider {
                display: flex;
                justify-content: center;
            }

            .welcome-divider .divider-line,
            .form-divider .divider-line {
                width: min(360px, 90vw); /* 小屏幕时自适应 */
            }

            .form-row {
                flex-direction: column; /* 移动端：标题和答案分两行 */
                align-items: center; /* 居中对齐 */
                gap: 8px;
                width: min(360px, 90vw); /* 始终居中，小屏幕自适应 */
                margin: 8px auto;
            }

            .form-question {
                width: 100%; /* 覆盖桌面端的固定宽度 */
                font-size: clamp(16px, 4vw, 20px);
                white-space: nowrap;
                text-align: center; /* 移动端标题居中 */
            }

            .form-answer {
                width: 100%;
                justify-content: center; /* 答案区居中 */
            }
            
            /* 移动端选项组：居中对齐，覆盖英文版的右对齐 */
            .form-options {
                justify-content: center !important; /* 移动端选项居中 */
            }

            .form-input {
                width: 100%; /* 移动端全宽 */
                font-size: clamp(14px, 3.5vw, 18px);
                text-align: center !important; /* 移动端输入框文案居中 */
            }
            
            .form-input::placeholder {
                text-align: center !important; /* 移动端placeholder居中 */
            }

            .option-text {
                font-size: clamp(14px, 3.5vw, 18px);
                white-space: nowrap;
            }

            .submit-btn {
                font-size: 24px;
                padding: 12px 40px;
                min-width: 160px;
            }

            .relogin-btn {
                font-size: 24px;
            }
            
            /* 移动端：协议复选框区域自适应 */
            .agreements-section {
                padding: 0 15px;
            }
            
            .agreement-checkbox {
                font-size: clamp(11px, 3vw, 14px); /* 自适应字体 */
                max-width: 100%;
            }
            
            .agreement-checkbox input[type="checkbox"] {
                width: 16px; /* 固定合理尺寸 */
                height: 16px;
                margin-right: 6px;
            }
            
            .agreement-checkbox input[type="checkbox"]:checked::after {
                font-size: 12px; /* 勾号大小 */
            }
        }

        /* 旧的悬浮弹窗样式（保留用于其他弹窗） */
        .floating-modal.modal-small {
            max-width: 400px;
            width: 90%;
            height: auto;
            max-height: 70vh;
        }

        .floating-modal.modal-medium {
            max-width: 500px;
            width: 90%;
            height: calc(100vh - 60px);
            max-height: calc(100vh - 60px);
        }

        .floating-modal.modal-large {
            max-width: 1200px;
            width: 95%;
            height: calc(100vh - 60px);
            max-height: calc(100vh - 60px);
        }

        /* 用户信息区域 */
        .user-info {
            text-align: center;
            margin-bottom: 20px;
            padding: 15px;
        }

        .user-avatar {
            font-size: var(--font-size-xl);
            cursor: pointer;
            margin-bottom: 10px;
            transition: transform 0.3s ease;
        }

        /* 桌面端hover效果（仅支持hover的设备） */
        @media (hover: hover) {
            .user-avatar:hover {
                transform: scale(1.15); /* 放大15% */
            }
        }

        .user-avatar:active {
            transform: scale(0.8);
        }

        .dice-btn {
            background: none;
            border: 2px solid #000;
            font-size: var(--font-size-xs);
            cursor: pointer;
            transition: all 0.2s ease;
            margin-bottom: 10px;
            transform: rotate(-2deg);
        }

        /* 桌面端hover效果（仅支持hover的设备） */
        @media (hover: hover) {
            .dice-btn:hover {
                transform: scale(1.15); /* 放大15% */
            }
        }

        .dice-btn:active {
            transform: scale(0.8);
        }

        /* 弹窗大小系统 */
        .modal-small {
            max-width: 400px;
            width: 90%;
        }
        
        .modal-medium {
            max-width: 500px;
            width: 90%;
        }
        
        .modal-large {
            max-width: 1200px;
            width: 95%;
        }

        /* 旧的email-modal和invitation样式已删除，现在使用auth-modal */

        /* 猫咪头像预览区域 */
        .cat-avatar-section {
            text-align: center;
            margin-bottom: 30px;
            padding: 20px;
            background: #f9f9f9;
            border-radius: 10px;
        }

        .cat-avatar-preview {
            width: 240px;
            height: 240px;
            margin: 0 auto 15px;
            border: none;
            border-radius: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            background: transparent;
            overflow: hidden;
            position: relative;
        }

        .cat-avatar-preview svg {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: contain;
        }

        .loading-cat {
            font-size: 4rem;
            animation: pulse 1.5s ease-in-out infinite;
        }

        @keyframes pulse {
            0%, 100% {
                transform: scale(1);
                opacity: 1;
            }
            50% {
                transform: scale(1.1);
                opacity: 0.7;
            }
        }

        .regenerate-cat-btn {
            background: #000;
            color: #fff;
            border: none;
            padding: 10px 20px;
            font-size: 14px;
            font-family: 'Courier New', monospace;
            cursor: pointer;
            border-radius: 0;
            transition: background 0.2s ease;
        }

        /* 桌面端hover效果（仅支持hover的设备） */
        @media (hover: hover) {
            .regenerate-cat-btn:hover {
                transform: scale(1.15); /* 放大15% */
            }
        }

        .regenerate-cat-btn:active {
            background: #555;
            transform: scale(0.8);
        }

        /* 暗色主题下的猫咪头像区域 */
        @media (prefers-color-scheme: dark) {
            body:not(.force-light) .cat-avatar-section {
                background: #222;
            }
            
            body:not(.force-light) .cat-avatar-preview {
                background: transparent;
            }
            
            body:not(.force-light) .regenerate-cat-btn {
                background: #fff;
                color: #000;
            }
            
            body:not(.force-light) .regenerate-cat-btn:hover {
                transform: scale(1.15); /* 放大15% */
            }
        }

        /* 输入样式 */
        .name-input, .problem-input {
            width: 100%;
            padding: 10px;
            background: #fff;
            border: none;
            border-bottom: 2px solid #000;
            color: #000;
            font-size: var(--font-size-md);
            font-family: 'Courier New', monospace;
        }

        .name-input:focus, .problem-input:focus {
            outline: none;
            border-bottom: 3px solid #000;
        }

        /* 暗色主题下的输入框 */
        @media (prefers-color-scheme: dark) {
            body:not(.force-light) .name-input,
            body:not(.force-light) .problem-input,
            body:not(.force-light) .email-input {
                background: #1a1a1a;
                color: #fff;
                border-bottom-color: #fff;
            }
            
            body:not(.force-light) .name-input:focus,
            body:not(.force-light) .problem-input:focus,
            body:not(.force-light) .email-input:focus {
                border-bottom-color: #fff;
            }
            
            body:not(.force-light) .email-input {
                border-color: #fff;
            }
            
            body:not(.force-light) .section-title {
                color: #fff;
            }
        }

        /* 问题输入 */
        .problem-section {
            margin-bottom: 15px;
        }

        .section-title {
            font-size: var(--font-size-md);
            color: #000;
            margin-bottom: 8px;
            font-weight: 500;
        }

        /* 选择标签 */
        .selection-section {
            margin-bottom: 15px;
        }

        .tag-options {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin-top: 5px;
        }

        .tag-option {
            background: #fff;
            border: 2px solid #000;
            padding: 8px 12px;
            cursor: pointer;
            font-size: var(--font-size-xs);
            transition: all 0.2s ease;
            font-family: 'Courier New', monospace;
        }

        /* 桌面端hover效果（仅支持hover的设备） */
        @media (hover: hover) {
            .tag-option:hover {
                transform: scale(1.15); /* 放大15% */
            }
        }

        .tag-option:active {
            transform: scale(0.8);
        }

        .tag-option.selected {
            background: #000;
            color: #fff;
        }

        /* 暗色主题下的按钮和标签 */
        @media (prefers-color-scheme: dark) {
            body:not(.force-light) .dice-btn {
                border-color: #fff;
                color: #fff;
            }
            
            body:not(.force-light) .dice-btn:hover {
                transform: scale(1.15); /* 放大15% */
            }
            
            body:not(.force-light) .tag-option {
                background: #1a1a1a;
                border-color: #fff;
                color: #fff;
            }
            
            body:not(.force-light) .tag-option:hover {
                transform: scale(1.15); /* 放大15% */
            }
            
            body:not(.force-light) .tag-option.selected {
                background: #fff;
                color: #000;
            }
            
            /* 悬浮按钮暗色主题 */
            /* 暗色模式下悬浮按钮不加白色背景 */
            body:not(.force-light) .floating-my-prison-btn,
            body:not(.force-light) .floating-prison-btn {
                background: transparent !important;
            }
            
            /* 暗色模式下黑色圆变成白色圆 */
            body:not(.force-light) .floating-btn-circle {
                background: #fff;
            }
            
            /* 暗色主题下编号颜色 */
            body:not(.force-light) .prisoner-number {
                color: #fff;
            }
        }

        /* 悬浮"去我的监狱"按钮 */
        /* 我的房间悬浮按钮 - 140x150尺寸（猫咪140，距离底部10px） */
        .floating-my-prison-btn {
            position: fixed;
            bottom: 30px;
            right: 30px;
            width: 140px;
            height: 150px;
            background: transparent;
            border: none;
            cursor: pointer;
            z-index: var(--z-floating);
            padding: 0;
            transition: transform 0.3s ease;
        }

        /* 桌面端hover效果（仅支持hover的设备） */
        @media (hover: hover) {
            .floating-my-prison-btn:hover {
                transform: scale(1.15); /* 放大15% */
            }
        }

        .floating-my-prison-btn:active {
            transform: scale(0.8);
        }
        
        /* 悬浮按钮中的猫咪头像 - 140x140，距离容器底部10px */
        .floating-btn-avatar {
            position: absolute;
            bottom: 10px;
            left: 50%;
            transform: translateX(-50%);
            width: 140px;
            height: 140px;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 2;
        }
        
        .floating-btn-avatar svg {
            width: 100%;
            height: 100%;
        }
        
        /* 悬浮按钮中的黑色圆形 - 120x120，底部对齐，水平居中 */
        .floating-btn-circle {
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            width: 120px;
            height: 120px;
            background: #000;
            border-radius: 50%;
            z-index: 1;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
        }
        
        /* 移除旧的注册按钮样式 */
        .floating-prison-btn {
            display: none !important;
        }

        /* 鱼干充值入口样式 */

        /* 新版认证弹窗样式 - letter.svg背景 */
        .auth-modal-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
            z-index: var(--z-modal);
        }

        .auth-modal-overlay::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
                width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.8);
            z-index: -1;
        }

        .auth-modal-content {
            position: relative;
            width: 581px;
            aspect-ratio: 581 / 414; /* 保持letter.svg宽高比 */
            background: url('../../images/popup/letter.svg') center center no-repeat;
            background-size: 100% 100%;
            color: #fff;
            display: flex;
            flex-direction: column;
        }

        .auth-close-btn {
            position: absolute;
            top: calc(4% + 6px); /* 相对于letter.svg高度的百分比，下移6px */
            right: 4%; /* 相对于letter.svg宽度的百分比 */
            width: 24px;
            height: 24px;
            background: url('../../images/icon/close_white.svg') center center no-repeat;
            background-size: 100% 100%;
            border: none;
            cursor: pointer;
            z-index: 10;
            transition: opacity 0.2s ease;
        }

        .auth-close-btn:active {
            opacity: 0.6;
        }

        .auth-modal-inner {
            padding: 30px; /* 统一安全间距30px */
            height: 100%;
            box-sizing: border-box;
            display: flex;
            flex-direction: column;
            justify-content: center; /* 垂直居中 */
            gap: 10px; /* 统一间距10px */
        }

        .auth-title {
            font-family: 'Knewave', sans-serif;
            font-size: 40px; /* 保持原始字号 */
            text-align: center;
            margin-bottom: 0; /* 去掉标题下方边距，使用gap控制 */
            color: #fff;
        }

        .auth-input-group {
            position: relative; /* 为分割线定位 */
            height: 60px; /* 输入框统一高度 */
            display: flex;
            align-items: center; /* 文本垂直居中 */
        }

        .auth-input {
            width: 100%;
            height: 100%; /* 填充整个input-group高度 */
            background: transparent;
            border: none;
            color: #fff;
            font-size: 24px; /* 保持原始字号 */
            padding: 0;
            outline: none;
            font-family: 'Courier New', monospace;
            line-height: 60px; /* 与容器高度一致，垂直居中 */
        }

        .auth-input::placeholder {
            color: rgba(255, 255, 255, 0.6);
            font-size: 24px;
            line-height: 60px;
        }

        .auth-input-line {
            position: absolute;
            bottom: 0; /* 与输入框底部对齐 */
            left: 0;
            width: 100%;
            height: 20px;
            background: url('../../images/image/line_w.svg') center center no-repeat;
            background-size: 100% auto; /* 宽度100%，高度自动，保持水平 */
            background-repeat: no-repeat;
            transform: none; /* 不旋转，保持水平 */
        }

        /* 邮箱输入框 + 发送验证码按钮的容器 */
        .auth-input-with-button {
            position: relative;
            height: 60px; /* 与普通input-group一致 */
            display: flex;
            align-items: center;
            gap: 20px; /* 输入框和按钮间距 */
        }

        .auth-input-with-button .auth-input {
            flex: 1; /* 输入框占据剩余空间 */
        }

        .auth-input-with-button .auth-input-line {
            position: absolute;
            bottom: 0; /* 与输入框底部对齐 */
            left: 0;
            right: 0;
        }

        /* 登录弹窗的发送验证码按钮 - 纯文字按钮 */
        .auth-send-code-btn {
            flex-shrink: 0; /* 按钮不压缩 */
            height: 100%; /* 与输入框高度一致 */
            padding: 0;
            background: none; /* 无背景 */
            border: none;
            cursor: pointer;
            font-family: 'Courier New', monospace;
            font-size: 24px; /* 保持原始字号 */
            font-weight: bold;
            color: #fff; /* 白色文字 */
            transition: opacity 0.2s ease;
            white-space: nowrap;
            display: flex;
            align-items: center; /* 文字垂直居中 */
        }

        /* 桌面端hover效果（仅支持hover的设备） */
        @media (hover: hover) {
            .auth-send-code-btn:hover {
                opacity: 0.8;
            }
        }

        .auth-send-code-btn:active {
            opacity: 0.6;
        }

        .auth-submit-btn {
            width: 100%;
            padding: 16px 24px;
            background: url('../../images/button/button_s_w.svg') center center no-repeat;
            background-size: 100% 100%;
            border: none;
            cursor: pointer;
            font-family: 'Courier New', monospace;
            font-size: 24px; /* 保持原始字号 */
            font-weight: bold;
            color: #000; /* 黑色文字 */
            transition: opacity 0.2s ease;
            min-height: 60px; /* 保持原始高度 */
            margin-top: 10px; /* 与输入框间距10px */
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .auth-submit-btn:active {
            opacity: 0.6;
        }

        /* 移动端适配 */
        @media (max-width: 768px) {
            .auth-modal-overlay {
                align-items: center; /* 垂直居中 */
            }

            .auth-modal-content {
                width: min(360px, 85vw);
                max-height: 85vh; /* 限制最大高度，防止超出屏幕 */
            }

            .auth-close-btn {
                width: 20px; /* 移动端合理尺寸 */
                height: 20px;
                top: calc(4% + 4px); /* 微调位置 */
            }

            .auth-modal-inner {
                overflow-y: auto; /* 内容超出时可滚动 */
                padding: 20px; /* 小屏幕进一步缩小外边距 */
            }

            .auth-title {
                font-size: clamp(16px, 4.5vw, 40px); /* 320px下最小16px */
            }

            .auth-input-group {
                height: 60px; /* 移动端保持60px，不缩小 */
            }

            .auth-input,
            .auth-input::placeholder {
                /* 桌面24px → 移动14px，自适应：clamp(14px, 3.5vw, 24px) */
                font-size: clamp(14px, 3.5vw, 24px);
                line-height: 60px; /* 与容器高度一致 */
            }

            .auth-send-code-btn {
                font-size: clamp(14px, 3.5vw, 24px);
            }

            .auth-submit-btn {
                font-size: clamp(16px, 4vw, 24px);
                min-height: clamp(45px, 11vw, 60px);
            }

            .auth-input-line {
                height: clamp(14px, 3.5vw, 20px); /* 移动端高度自适应 */
            }

            .auth-input-with-button {
                height: 60px; /* 移动端保持60px，不缩小 */
            }
            
            .relogin-btn {
                font-size: 16px; /* 移动端更小 */
            }
        }

        /* 语言切换器样式 */
        /* 旧的language-switcher样式已删除，使用新的语言弹窗设计 */
