/* login.css — trang đăng nhập Editor tour 360. Dùng lại bảng màu của editor.css.
   CSP trang này là style-src 'self' → mọi thứ phải nằm trong file này, không style inline. */
/* CỐ Ý dùng font hệ thống, không nhúng font riêng của Norton Park:
   file font nằm sau lớp đăng nhập (và là font thương mại có bản quyền), nên nếu khai báo @font-face
   ở đây thì trình duyệt sẽ tải về 302 -> trang login và báo lỗi đỏ trong console mà chẳng được gì. */
:root{
  --bg:#EFEADF; --paper:#F8F5EE; --ink:#2E2920; --muted:#75695A; --line:rgba(89,74,66,.16);
  --line2:rgba(89,74,66,.3); --bronze:#A78061; --bronze-ink:#8A6746; --brown:#594A42;
  --err:#A24B3A; --ok:#5D7A4F;
  --f-head:Georgia,'Times New Roman',serif;
  --f-sub:'Segoe UI',system-ui,-apple-system,sans-serif;
  --f-body:'Segoe UI',system-ui,-apple-system,'Helvetica Neue',sans-serif;
}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);
  font:400 14px/1.55 var(--f-body);display:grid;place-items:center;padding:24px}
.card{width:100%;max-width:420px;background:var(--paper);border:1px solid var(--line);
  border-radius:18px;padding:30px 30px 22px;box-shadow:0 18px 50px rgba(89,74,66,.13)}
.brand{display:flex;align-items:center;gap:10px;color:var(--bronze-ink);
  font-family:var(--f-sub);font-size:11px;letter-spacing:.28em;text-transform:uppercase;margin-bottom:22px}
.brand svg{display:block;flex:none}
h1{font-family:var(--f-head);font-size:27px;font-weight:400;margin:0 0 6px}
.sub{margin:0 0 22px;color:var(--muted);font-size:12.5px;line-height:1.5}
label{display:block;font-size:11px;font-family:var(--f-sub);letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);margin:0 0 6px}
input[type=email],input[type=password]{width:100%;padding:11px 13px;border:1px solid var(--line2);
  border-radius:10px;background:#fff;font:inherit;color:var(--ink);margin-bottom:16px}
input[type=email]:focus,input[type=password]:focus{outline:none;border-color:var(--bronze);
  box-shadow:0 0 0 3px rgba(167,128,97,.16)}
.pw{position:relative}
.pw input{padding-right:62px}
.eye{position:absolute;right:8px;top:7px;padding:5px 9px;border:0;border-radius:8px;background:none;
  color:var(--bronze-ink);font:700 11px/1.4 var(--f-sub);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.eye:hover{background:rgba(167,128,97,.12)}
.keep{display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0;
  font-family:var(--f-body);font-size:12.5px;color:var(--muted);margin:2px 0 18px}
.keep input{margin:0;accent-color:var(--bronze)}
.hint{margin:-10px 0 16px;font-size:11.5px;color:var(--muted);line-height:1.45}
.go{width:100%;padding:12px 16px;border:0;border-radius:999px;cursor:pointer;
  background:linear-gradient(135deg,#A78061,#C9AE8C 60%,#DCD3C0);color:var(--ink);
  font:700 13.5px/1 var(--f-body);letter-spacing:.02em;transition:.15s}
.go:hover:not(:disabled){filter:brightness(1.05)}
.go:disabled{opacity:.5;cursor:progress}
.msg{margin:0 0 14px;padding:10px 13px;border-radius:10px;font-size:12.5px;line-height:1.45;
  background:rgba(162,75,58,.1);border:1px solid rgba(162,75,58,.3);color:var(--err)}
.msg.ok{background:rgba(93,122,79,.1);border-color:rgba(93,122,79,.32);color:var(--ok)}
.foot{margin:20px 0 0;padding-top:16px;border-top:1px solid var(--line);
  font-size:11.5px;color:var(--muted);line-height:1.5;text-align:center}
@media (max-width:480px){.card{padding:24px 20px 18px}h1{font-size:24px}}
