/**
 * login.css — login 頁專屬樣式（補充 jubo-theme.css 沒有的部分）
 */

.login-submit {
  width: 100%;
  height: 44px;
  justify-content: center;
  margin-top: var(--spacing-sm);
}

.jc-check {
  accent-color: var(--color-brand-primary);
  width: 16px;
  height: 16px;
  margin-right: var(--spacing-xs);
  vertical-align: middle;
}

/* 登入失敗錯誤條 */
.login-error {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-md);
  padding: var(--spacing-sm) var(--spacing-md);
  background: var(--color-tag-red-bg);
  color: var(--color-tag-red-fg);
  border-radius: var(--radius-sm);
  font-size: var(--font-size-body);
}

.login-error .material-symbols-outlined {
  font-size: 18px;
}


/* ─────────────────────────────────────────
 * Login 頁面輸入欄位 — 確保不超出 card 邊界
 * （2026-05-16 修：被全域 modal-body input 規則影響）
 * ───────────────────────────────────────── */

.jc-login-card {
  box-sizing: border-box;
}

.jc-login-card .jc-field {
  width: 100%;
  min-width: 0;
}

.jc-login-card .jc-field input,
.jc-login-card .jc-field select,
.jc-login-card .jc-field .input-with-icon {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  display: block;
}

.jc-login-card .input-with-icon {
  position: relative;
}

.jc-login-card .input-with-icon input {
  padding-right: 40px;
}

.jc-login-card .login-form {
  width: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}

/* 字級維持 body 大小（不要套到 modal 的 caption 大小）*/
.jc-login-card input[type="email"],
.jc-login-card input[type="password"],
.jc-login-card input[type="text"] {
  font-size: var(--font-size-body);
  font-family: var(--font-family-base);
}
