    /* 重置样式 */
    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
      font-family: 'Poppins', sans-serif;
    }

    /* 主体布局 */
    body {
      display: flex;
      justify-content: center;
      align-items: center;
      min-height: 100vh;
      background: #dde5f4;
      padding: 20px;
    }

    /* 主容器 */
    .screen-1 {
      background: #f1f7fe;
      width: 100%;
      max-width: 400px;
      padding: 2.5em 2em;
      border-radius: 30px;
      box-shadow: 0 0 2em #e6e9f9;
    }

    /* 表单元素间距 */
    form {
      display: flex;
      flex-direction: column;
      gap: 0.5em;
      margin-top: -2em;
    }

    /* 输入容器 */
    .input-group {
      background: white;
      padding: 0.5em;
      border-radius: 20px;
      box-shadow: 0 0 1.5em #e6e9f9;
    }

    /* 标签样式 */
    .input-group label {
      display: block;
      color: #3e4684;
      font-size: 0.95em;
      margin-bottom: 0.8em;
      font-weight: 500;
    }

    /* 输入框容器 */
    .input-container {
      display: flex;
      align-items: center;
      gap: 0.8em;
    }

    /* 输入字段 */
    .input-container input {
      flex: 1;
      border: none;
      outline: none;
      padding: 0.6em 0;
      font-size: 1em;
      min-width: 0;
    }

    input::placeholder {
      color: #a0a0a0;
      font-size: 0.95em;
    }

    /* 图标样式 */
    ion-icon {
      color: #5e5e5e;
      font-size: 1.3em;
      flex-shrink: 0;
    }

    /* 密码可见切换 */
    .show-hide {
      cursor: pointer;
      margin-left: auto;
      transition: opacity 0.3s;
    }

    .show-hide:hover {
      opacity: 0.8;
    }

    /* 提交按钮 */
    .submit-btn {
      background: #3e4684;
      color: white;
      padding: 1.1em;
      border: none;
      border-radius: 30px;
      font-weight: 600;
      cursor: pointer;
      transition: background 0.3s;
    }

    .submit-btn:disabled {
      background: #6c757d;
      cursor: not-allowed;
    }

    /* 底部链接 */
    .footer-links {
      display: flex;
      justify-content: space-between;
      margin-top: 2em;
      font-size: 0.85em;
    }

    .footer-links a {
      color: #3e4684;
      text-decoration: none;
      transition: opacity 0.3s;
    }

    .footer-links a:hover {
      opacity: 0.8;
    }

    /* 错误提示 */
    .error-msg {
	  margin-top: 1rem;
      color: #dc3545;
      text-align: center;
      font-size: 0.9em;
      margin: -0.5em 0 1.2em;
    }

    .logo {
      margin-top: -5em;
      align-self: center;
    }

    [type="checkbox"] {
      vertical-align: middle;
      margin-right: 5px;
    }