/* EMMS 登入頁 — 與 ibon 相同版面（Google 為主、管理員登入低調置底）；EMMS 紅色系 */
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Microsoft JhengHei','Microsoft YaHei','PingFang TC',sans-serif;color:#2b2b3a}

.emms-login{min-height:100vh;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,#ff6b6b 0%,#c0392b 100%);padding:24px}
.login-wrap{width:100%;max-width:440px}
.login-card{background:#fff;border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.35);overflow:hidden}
.lc-head{background:linear-gradient(135deg,#ff6b6b,#c0392b);color:#fff;padding:38px 30px;text-align:center}
.lc-head h1{font-size:34px;font-weight:600;letter-spacing:1px}
.lc-head h1 b{font-weight:800}
.lc-head .sub{margin-top:6px;font-size:14px;opacity:.9}
.lc-body{padding:32px 30px}
.msg{padding:13px 16px;border-radius:10px;margin-bottom:20px;font-size:15px;text-align:center}
.msg.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}
.msg.warn{background:#fff3cd;border:1px solid #ffeeba;color:#856404}
.msg.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}

.btn-google{display:flex;align-items:center;justify-content:center;gap:10px;
  padding:13px;border:2px solid #e0e0e0;border-radius:10px;text-decoration:none;color:#333;font-size:15px}
.btn-google:hover{border-color:#c0392b}
.g-logo{width:20px;height:20px}
.note{margin-top:10px;text-align:center;color:#aaa;font-size:12px}

.btn-ghost{display:block;text-align:center;color:#c0392b;text-decoration:none;font-size:14px;margin-bottom:12px;cursor:pointer}
.btn-ghost:hover{text-decoration:underline}
/* 管理員登入：置於 Google 之下、淡灰色低調呈現（非日常入口） */
.admin-toggle{color:#b3b3bd;font-size:13px;margin-top:20px;margin-bottom:0}
.admin-toggle:hover{color:#8a8a97}
.ldap-form{display:none}.ldap-form.show{display:block;margin-top:12px}
.honeypot{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.inp{width:100%;padding:12px 14px;border:2px solid #e0e0e0;border-radius:10px;font-size:15px;margin-bottom:12px}
.inp:focus{outline:none;border-color:#c0392b;box-shadow:0 0 0 3px rgba(192,57,43,.12)}
.btn{width:100%;padding:13px;border:none;border-radius:10px;color:#fff;font-size:16px;cursor:pointer;
  background:linear-gradient(135deg,#ff6b6b,#c0392b);box-shadow:0 4px 12px rgba(192,57,43,.4)}
.btn:hover{transform:translateY(-1px)}
.btn:disabled{background:#ccc;box-shadow:none;cursor:not-allowed}
.btn:disabled:hover{transform:none}

/* ===== 滑桿安全驗證 ===== */
.slider-verify{margin-bottom:12px}
.sv-track{position:relative;width:100%;height:46px;background:#f0f0f5;border:2px solid #e0e0e0;
  border-radius:23px;overflow:hidden;user-select:none;touch-action:none}
.sv-fill{position:absolute;left:0;top:0;height:100%;width:0;border-radius:23px;
  background:linear-gradient(90deg,#ff6b6b,#c0392b)}
.sv-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#999;
  font-size:14px;pointer-events:none;white-space:nowrap}
.sv-track.done .sv-text{color:#fff}
.sv-btn{position:absolute;left:0;top:0;width:46px;height:46px;background:#fff;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:22px;color:#c0392b;
  box-shadow:0 2px 8px rgba(0,0,0,.2);cursor:grab;touch-action:none;z-index:2;line-height:1}
.sv-btn:active{cursor:grabbing}
.sv-btn.done{background:linear-gradient(135deg,#ff6b6b,#c0392b);color:#fff}
