/* --- 推广系统插件核心样式 --- */

/* --- 登录弹窗样式 --- */
.login-popup-wrapper { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 10000; display: none; align-items: center; justify-content: center; -webkit-font-smoothing: antialiased; }
.login-popup-wrapper.is-visible { display: flex; }
.login-popup-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.6); cursor: pointer; }
.login-popup-content { position: relative; z-index: 1; background-color: #ffffff; padding: 40px 30px; border-radius: 16px; width: 90%; max-width: 380px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1); text-align: center; }
.close-popup { position: absolute; top: 10px; right: 15px; background: none; border: none; font-size: 28px; color: #aaa; cursor: pointer; line-height: 1; padding: 5px; }
.close-popup:hover { color: #333; }
.logo-container { margin-bottom: 25px; }
.logo-container img { max-width: 120px; height: auto; }
.login-popup-content #loginform { text-align: left; }
.login-popup-content #loginform p { margin-bottom: 15px; }
.login-popup-content #loginform label { display: none; }
.login-popup-content #loginform input[type="text"],
.login-popup-content #loginform input[type="password"] { width: 100%; padding: 15px 20px 15px 45px; border: none; background-color: #f0f2f5; border-radius: 8px; font-size: 16px; box-sizing: border-box; }
.login-popup-content #loginform p.login-username,
.login-popup-content #loginform p.login-password { position: relative; }
.login-popup-content #loginform p.login-username::before,
.login-popup-content #loginform p.login-password::before { font-family: 'dashicons'; position: absolute; left: 15px; top: 50%; transform: translateY(-50%); color: #888; font-size: 20px; }
.login-popup-content #loginform p.login-username::before { content: '\f110'; }
.login-popup-content #loginform p.login-password::before { content: '\f160'; }
.login-popup-content #loginform input[type="submit"] { width: 100%; padding: 15px; border: none; background-color: #0052ff; color: white; font-size: 16px; font-weight: bold; border-radius: 8px; cursor: pointer; transition: background-color 0.2s ease; }
.login-popup-content #loginform input[type="submit"]:hover { background-color: #0045d9; }
.login-popup-content .login-remember { font-size: 14px; color: #666; }
.login-links { margin-top: 25px; padding-top: 20px; border-top: 1px solid #e5e5e5; font-size: 14px; color: #888; display: flex; justify-content: space-between; }
.login-links a { color: #555; text-decoration: none; }
.login-links a:hover { text-decoration: underline; }

/* --- 注册表单样式 --- */
.login-popup-content #registerform { text-align: left; }
.login-popup-content #registerform p { margin-bottom: 15px; }
.login-popup-content #registerform input[type="text"],
.login-popup-content #registerform input[type="email"],
.login-popup-content #registerform input[type="password"] { width: 100%; padding: 15px 20px 15px 45px; border: none; background-color: #f0f2f5; border-radius: 8px; font-size: 16px; box-sizing: border-box; }
.login-popup-content #registerform input::placeholder { color: #888; }
.login-popup-content #registerform p.login-username,
.login-popup-content #registerform p.login-email,
.login-popup-content #registerform p.login-password { position: relative; }
.login-popup-content #registerform p.login-username::before,
.login-popup-content #registerform p.login-email::before,
.login-popup-content #registerform p.login-password::before { font-family: 'dashicons'; position: absolute; left: 15px; top: 50%; transform: translateY(-50%); color: #888; font-size: 20px; pointer-events: none; }
.login-popup-content #registerform p.login-username::before { content: '\f110'; }
.login-popup-content #registerform p.login-email::before { content: '\f466'; }
.login-popup-content #registerform p.login-password::before { content: '\f160'; }
.login-popup-content #registerform input[type="submit"] { width: 100%; padding: 15px; border: none; background-color: #0052ff; color: white; font-size: 16px; font-weight: bold; border-radius: 8px; cursor: pointer; transition: background-color 0.2s ease; }
.login-popup-content #registerform input[type="submit"]:hover { background-color: #0045d9; }
.login-links .toggle-form-link { cursor: pointer; }
.login-links span a { color: #555; text-decoration: none; }
.login-links span a:hover { text-decoration: underline; }

/* --- 注册成功/错误提示 --- */
#registration-success-message { text-align: center; }
#registration-success-message h3 { font-size: 22px; color: #333; margin-bottom: 15px; }
#registration-success-message p { font-size: 16px; color: #555; line-height: 1.6; margin-bottom: 25px; }
#registration-success-message .button { width: 100%; padding: 15px; border: none; background-color: #0052ff; color: white; font-size: 16px; font-weight: bold; border-radius: 8px; cursor: pointer; transition: background-color 0.2s ease; }
#registration-success-message .button:hover { background-color: #0045d9; }
.registration-error { background-color: #ffebeB; border: 1px solid #ffcdd2; color: #c62828; padding: 12px 15px; border-radius: 8px; margin-bottom: 15px; text-align: left; font-size: 14px; }

/* --- 分享弹窗样式 --- */
.app-share-modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); display: none; justify-content: center; align-items: flex-end; z-index: 10000; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease; }
.app-share-modal-overlay.is-visible { display: flex; opacity: 1; visibility: visible; }
.app-share-modal-content { background: #ffffff; width: 100%; border-top-left-radius: 16px; border-top-right-radius: 16px; padding: 10px 20px 20px 20px; box-sizing: border-box; transform: translateY(100%); transition: transform 0.3s ease; }
.app-share-modal-overlay.is-visible .app-share-modal-content { transform: translateY(0); }
.app-share-modal-content p { font-size: 16px; text-align: center; color: #333; margin: 10px 0 20px; }
.app-share-options { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; margin-bottom: 20px; }
.app-share-options a { text-decoration: none; color: #333; display: flex; flex-direction: column; align-items: center; font-size: 12px; }
.app-share-options .share-icon-wrapper { width: 50px; height: 50px; border-radius: 50%; background-color: #f4f4f4; display: flex; justify-content: center; align-items: center; margin-bottom: 8px; }
.app-share-options .share-icon-wrapper svg { width: 28px; height: 28px; }
#app-share-modal-close { width: 100%; background: #f7f7f7; border: none; padding: 14px; border-radius: 12px; cursor: pointer; font-size: 16px; color: #333; }

/* --- 二维码弹窗样式 --- */
.app-qrcode-modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.65); display: none; justify-content: center; align-items: center; z-index: 10001; opacity: 0; transition: opacity 0.3s ease; }
.app-qrcode-modal-overlay.is-visible { display: flex; opacity: 1; }
.app-qrcode-modal-content { background: #ffffff; padding: 30px 25px 25px 25px; border-radius: 16px; text-align: center; width: 90%; max-width: 280px; box-shadow: 0 5px 25px rgba(0,0,0,0.1); }
#app-qrcode-title { font-size: 16px; color: #333; margin: 0 0 20px 0; }
#app-qrcode-container { margin: 0 auto 20px auto; display: flex; justify-content: center; align-items: center; padding: 5px; border: 1px solid #eee; border-radius: 8px; }
#app-qrcode-modal-close { width: 100%; background: #f0f2f5; border: none; padding: 12px; border-radius: 8px; cursor: pointer; font-size: 15px; color: #555; margin-top: 10px; }

/* --- 消息提示框 (Toast) 样式 --- */
.app-toast-message { position: fixed; bottom: -100px; left: 50%; transform: translateX(-50%); background-color: rgba(0, 0, 0, 0.8); color: white; padding: 12px 24px; border-radius: 25px; font-size: 15px; z-index: 10001; opacity: 0; transition: all 0.4s ease-in-out; pointer-events: none; box-shadow: 0 4px 15px rgba(0,0,0,0.2); }
.app-toast-message.show { opacity: 1; bottom: 15%; }