/* AI 页:个人信息 / 修改密码弹窗(从 welcome-new.css 迁移) */ .modal-overlay { position: fixed; inset: 0; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(0, 0, 0, 0.45); z-index: 9999; } .modal-basic-info { width: 720px; max-width: calc(100vw - 48px); background: #FFFFFF; border-radius: 10px; box-shadow: 0px 34px 44px -20px rgba(185, 206, 234, 0.25); padding: 32px; display: flex; flex-direction: column; gap: 16px; } .modal-header { display: flex; align-items: center; gap: 16px; width: 100%; } .modal-title { flex: 1; font-family: Nunito, system-ui, sans-serif; font-weight: 800; font-size: 28px; line-height: 1.2; color: #1E293B; text-align: left; display: flex; flex-direction: column; align-items: flex-start; gap: 4px; } .modal-subtitle { font-family: "PingFang SC", system-ui, sans-serif; font-size: 14px; font-weight: 400; color: #94A3B8; letter-spacing: 0.5px; text-transform: uppercase; } .modal-close { width: 32px; height: 32px; border-radius: 3px; padding: 2px; border: 0; background: transparent; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; } .modal-body { width: 100%; display: flex; flex-direction: column; align-items: center; gap: 24px; } .modal-actions { display: flex; justify-content: center; } .modal-primary-btn { border: 0; cursor: pointer; border-radius: 32px; background: linear-gradient(90deg, rgba(3, 161, 234, 1) 0%, rgba(32, 91, 175, 1) 100%); color: #FFFFFF; padding: 10px 18px; height: 44px; font-family: "Noto Sans SC", "PingFang SC", system-ui, sans-serif; font-weight: 400; font-size: 14px; line-height: 22px; display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; } .modal-password { width: 450px; max-width: calc(100vw - 48px); background: #FFFFFF; border-radius: 10px; box-shadow: 0px 34px 44px -20px rgba(185, 206, 234, 0.25); padding: 32px; display: flex; flex-direction: column; align-items: center; gap: 32px; } .modal-header-spacer { width: 32px; height: 32px; flex-shrink: 0; } .modal-password .field { width: 100%; display: flex; flex-direction: column; gap: 15px; } .modal-password .field-label { font-family: Inter, system-ui, sans-serif; font-weight: 500; font-size: 16px; line-height: 19.36px; color: #000000; } .input-gradient { width: 100%; border-radius: 8px; padding: 1px; background: linear-gradient(164deg, rgba(226, 230, 255, 1) 24%, rgba(255, 234, 227, 1) 95%); } .modal-password .field-input { width: 100%; height: 44px; border-radius: 7px; border: 0; padding: 0 12px; background: #F5F6F9; font-family: "PingFang SC", system-ui, sans-serif; font-weight: 400; font-size: 14px; line-height: 22px; color: #0F172A; outline: none; box-sizing: border-box; } .modal-password .field-input::placeholder { color: #7D91A1; } .primary-btn { width: 180px; height: 48px; border: 0; border-radius: 32px; background: linear-gradient(90deg, rgba(3, 161, 234, 1) 0%, rgba(32, 91, 175, 1) 100%); color: #FFFFFF; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; font-family: "Noto Sans SC", system-ui, sans-serif; font-weight: 400; font-size: 14px; line-height: 20px; white-space: nowrap; } .profile-body { width: 100%; display: flex; flex-direction: column; gap: 32px; } .profile-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; width: 100%; } @media (max-width: 640px) { .profile-grid { grid-template-columns: 1fr; } } .profile-item { display: flex; flex-direction: column; gap: 8px; } .profile-label { font-family: "PingFang SC", system-ui, sans-serif; font-size: 14px; color: #64748B; font-weight: 500; } .profile-input-wrap { display: flex; align-items: center; background-color: #F8FAFC; border: 1px solid #E2E8F0; border-radius: 8px; height: 48px; padding: 0 16px; transition: all 0.2s ease; } .profile-input-wrap:focus-within { background-color: #FFFFFF; border-color: #3B82F6; box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1); } .profile-icon { width: 20px; height: 20px; color: #94A3B8; margin-right: 12px; flex-shrink: 0; } .profile-input-wrap:focus-within .profile-icon { color: #3B82F6; } .profile-input { flex: 1; border: none; background: transparent; height: 100%; font-family: inherit; font-size: 14px; color: #1E293B; outline: none; width: 100%; } .profile-value { flex: 1; font-size: 14px; color: #1E293B; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } select.profile-input { appearance: none; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e"); background-position: right 0 center; background-repeat: no-repeat; background-size: 1.5em 1.5em; padding-right: 2.5rem; } .profile-input-wrap.is-vip { background: linear-gradient(to right, #FFFBF0, #FFF7E6); border-color: #FDE68A; } .profile-input-wrap.is-vip .profile-icon { color: #D97706; } .profile-value-btn { background: transparent; border: none; color: #D97706; font-weight: 600; font-size: 14px; padding: 0; cursor: default; } .profile-input:disabled { background-color: transparent; color: #64748B; cursor: not-allowed; }