/* ===== assets/css/02-login.css | 登录页（居中卡片 + 蓝色链接） ===== */
/* 来源：原 index.html 内联样式 第 15-45 行；改样式只改这个文件 */
  /* ---------- 登录页（截图：深灰居中弹窗卡片 + 白底输入框 + 蓝色链接） ---------- */
  #loginBox { display:none; position:fixed; inset:0; background:rgba(10,9,7,.45); z-index:100; align-items:center; justify-content:center; }
  .login-card { width: 400px; background:linear-gradient(165deg,#241e17 0%,#1e1914 55%,#191510 100%); border:1px solid rgba(255,255,255,.08); border-radius:20px; padding:40px 34px 30px; box-shadow:0 40px 90px rgba(0,0,0,.75), 0 0 0 1px rgba(0,0,0,.3); position:relative; overflow:hidden; }
  .login-card::before { content:""; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,#d9a06b,#e8d0ae,#d9a06b); }
  .login-card::after { content:""; position:absolute; top:-90px; left:50%; transform:translateX(-50%); width:340px; height:220px; background:radial-gradient(closest-side,rgba(217,160,107,.18),transparent); pointer-events:none; }
  .login-logo { width:56px; height:56px; margin:0 auto 14px; border-radius:50%; background:linear-gradient(135deg,#d9a06b,#a05a2c); display:flex; align-items:center; justify-content:center; font-size:26px; font-weight:800; color:#1e1914; box-shadow:0 8px 22px rgba(217,160,107,.35); }
  .login-title { text-align:center; margin-bottom:24px; position:relative; z-index:1; }
  .login-title .t1 { font-size:22px; font-weight:800; color:#f0e9d8; letter-spacing:1px; }
  .login-title .t2 { font-size:13.5px; color:#d9a06b; margin-top:8px; font-weight:500; letter-spacing:.3px; }
  .login-title .t3 { font-size:12px; color:#9a8f7a; margin-top:5px; }
  .login-line { margin-bottom:14px; }
  .login-line input { width:100%; background:#14110d; border:1px solid #3a332a; border-radius:12px; color:#f0e9d8; padding:14px 16px; font-size:15px; outline:none; transition:border-color .18s, box-shadow .18s; }
  .login-line input::placeholder { color:#6f6552; }
  .login-line input:focus { border-color:#d9a06b; box-shadow:0 0 0 3px rgba(217,160,107,.18); }
  .login-row { display:flex; align-items:center; justify-content:center; gap:22px; margin-top:10px; font-size:13.5px; }
  .login-row a, .login-row span { color:#d9a06b; cursor:pointer; text-decoration:none; transition:color .15s; }
  .login-row a:hover, .login-row span:hover { color:#e8c49a; text-decoration:underline; }
  .login-check { display:flex; align-items:center; justify-content:center; gap:6px; color:#9a8f7a; font-size:13.5px; margin-top:12px; }
  .login-check input { width:15px; height:15px; accent-color:#d9a06b; }
  .login-line2 { margin-top:18px; }
  .login-line2 label { font-size:12.5px; color:#9a8f7a; }
  .login-line2 select { width:100%; background:#14110d; border:1px solid #3a332a; border-radius:12px; color:#f0e9d8; padding:12px 14px; font-size:14px; outline:none; margin-top:7px; }
  #loginBtn { width:100%; background:linear-gradient(135deg,#d9a06b,#a05a2c); color:#fff; border:1px solid #a05a2c; border-radius:12px; padding:14px; font-size:16px; font-weight:700; cursor:pointer; margin-top:8px; transition:box-shadow .18s, transform .12s, background .18s; letter-spacing:1px; box-shadow:0 4px 14px rgba(0,0,0,.25); }
  #loginBtn:hover { background:linear-gradient(135deg,#e0ab78,#b06432); box-shadow:0 6px 18px rgba(0,0,0,.32); }
  #loginBtn:active { transform:translateY(1px); }
  #loginBtn:disabled { background:#4a4238; color:#8a7f6a; cursor:default; box-shadow:none; }
  #loginErr { color:#9a8f7a; font-size:13px; margin-top:12px; min-height:18px; text-align:center; }
  #loginErr.ok { color:#2e9e5b; }
  #loginErr.err { color:#c9553f; }
  .login-hint { color:#8a7f6a; font-size:12px; text-align:center; margin-top:14px; line-height:1.6; }
  #pwHint { color:#9a8f7a; font-size:12px; line-height:1.5; margin:-6px 2px 12px; }

