/* 登录 / 注册表单的细节（login.html、app.html 共用，放在最后加载） */
/* 线条图标代替输入框里的 emoji：大小、颜色统一 */
#form .inp .ic, #forgotBox .inp .ic { display: grid; place-items: center; width: 18px; height: 18px; left: 14px; font-size: 0; opacity: 1; color: var(--sub, #67767a); transition: color .15s; }
#form .inp .ic svg, #forgotBox .inp .ic svg { width: 18px; height: 18px; }
#form .inp:focus-within .ic, #forgotBox .inp:focus-within .ic { color: var(--accent, #5366e8); }
#form .inp input, #forgotBox .inp input { padding-left: 42px; }
#form .inp .eye, #forgotBox .inp .eye { display: grid; place-items: center; font-size: 0; opacity: 1; color: var(--sub, #67767a); }
#form .inp .eye svg, #forgotBox .inp .eye svg { width: 18px; height: 18px; }
#form .inp .eye:hover, #form .inp .eye.on, #forgotBox .inp .eye:hover, #forgotBox .inp .eye.on { color: var(--text, #172c36); }
#form .inp .ok { right: 14px; font-size: 13px; }
/* 输入框获得焦点：只留一圈柔和的光，不再叠加外描边 */
#form .inp input:focus-visible, #forgotBox .inp input:focus-visible, .org .org-in:focus-visible, .org .org-prov:focus { outline: none; }
#form .inp input:focus, #forgotBox .inp input:focus { box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent, #5366e8) 14%, transparent); }
/* 学生 / 老师 选项里的图标 */
#form .picks:not(.gpick) .pick { gap: 11px; padding: 11px 12px; }
#form .picks:not(.gpick) .pick .em { display: grid; place-items: center; flex: none; width: 34px; height: 34px; border-radius: 10px; font-size: 0; color: var(--sub, #67767a);
  background: color-mix(in srgb, var(--text, #172c36) 5%, transparent); transition: color .15s, background .15s; }
#form .picks:not(.gpick) .pick .em svg { width: 19px; height: 19px; }
#form .picks:not(.gpick) .pick:has(input:checked) .em { color: var(--accent, #5366e8); background: color-mix(in srgb, var(--accent, #5366e8) 11%, transparent); }
/* 选中卡片：一圈描边就够了，去掉厚重的双层光晕 */
#form .pick:has(input:checked) { box-shadow: 0 0 0 1px var(--accent, #5366e8); }
#form .gpick .pick.m:has(input:checked) { box-shadow: 0 0 0 1px #2457d6; }
#form .gpick .pick.f:has(input:checked) { box-shadow: 0 0 0 1px #ff5f8f; }
#form .pick:hover { transform: none; border-color: color-mix(in srgb, var(--accent, #5366e8) 35%, var(--line, #e1e3df)); }
#form .pick:has(input:checked):hover { border-color: var(--accent, #5366e8); }
/* 字号：标签、提示不小于 12px，手机上更易读 */
#form .fld > label, #forgotBox .fld > label { font-size: 12.5px; font-weight: 650; color: var(--text, #172c36); opacity: .82; }
#form .hint, #forgotBox .hint { font-size: 12px; }
#form .pick small { font-size: 11.5px; }
#form .meter { margin-top: 8px; }
#form .meter i { height: 3px; }
@media (max-width: 620px) {
  #form .inp input, #forgotBox .inp input { font-size: 16px; }   /* iOS 输入框小于 16px 会自动放大页面 */
  .org .org-in { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { #form .pick, #form .inp .ic { transition: none; } }
@media (max-width: 420px) {
  #form .picks:not(.gpick) .pick { padding: 10px; gap: 9px; }
  #form .picks:not(.gpick) .pick .em { width: 30px; height: 30px; }
}
