/* Mintra Hotel · WMS — shared theme
   © Mintra Hotel · Developed by SOMMAY NEUAALOUN, General Manager */
:root{
  --ink:#142019; --forest:#1E4D3F; --forest-2:#2D6A56; --forest-soft:#E8F0EC;
  --brass:#C19A4B; --brass-soft:#F3EBD8; --bg:#EFF2F0; --paper:#FFFFFF;
  --line:#E1E6E2; --muted:#6B7770; --muted-2:#93A099;
  --ok:#2E7D5B; --ok-soft:#E4F2EA; --warn:#B9821F; --warn-soft:#FBEFD7;
  --danger:#C0392B; --danger-soft:#FAE6E3; --info:#2B6CB0; --info-soft:#E5EFF8;
  --radius:14px; --shadow:0 1px 2px rgba(20,32,25,.04), 0 10px 30px rgba(20,32,25,.08);
  --lao:'Noto Sans Lao',sans-serif; --num:'Space Grotesk','Inter',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--lao);background:var(--bg);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased}
.num{font-family:var(--num);font-feature-settings:"tnum";letter-spacing:-.01em}
a{color:var(--forest);text-decoration:none}
button{font-family:inherit;cursor:pointer}

/* ---------- Login ---------- */
.auth-wrap{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}
@media(max-width:840px){.auth-wrap{grid-template-columns:1fr}.auth-aside{display:none}}

.auth-aside{
  background:linear-gradient(150deg,#1E4D3F,#14342B);color:#dfeae4;
  padding:48px 52px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;
}
.auth-aside::after{content:"";position:absolute;right:-120px;bottom:-120px;width:380px;height:380px;border-radius:50%;
  background:radial-gradient(circle,rgba(193,154,75,.28),transparent 70%)}
.auth-aside .brand{display:flex;align-items:center;gap:13px;position:relative;z-index:2}
.auth-aside .mark{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,var(--brass),#dcb968);
  color:var(--forest);display:grid;place-items:center;font-family:var(--num);font-weight:700;font-size:22px}
.auth-aside .brand .nm{font-weight:700;font-size:17px;color:#fff}
.auth-aside .brand .sub{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#9fc0b3}
.auth-aside .pitch{position:relative;z-index:2;max-width:420px}
.auth-aside .pitch h1{font-size:30px;line-height:1.25;font-weight:700;color:#fff;letter-spacing:-.01em}
.auth-aside .pitch p{margin-top:14px;font-size:14px;color:#bcd2c8;line-height:1.7}
.auth-aside .feats{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.auth-aside .feats span{font-size:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  padding:6px 12px;border-radius:20px;color:#d6e6df}
.auth-aside .foot{position:relative;z-index:2;font-size:11.5px;color:#8db3a4;letter-spacing:.02em}

.auth-main{display:flex;align-items:center;justify-content:center;padding:40px 24px}
.auth-card{width:100%;max-width:380px}
.auth-card .hello{font-size:13px;color:var(--muted);font-weight:500}
.auth-card h2{font-size:24px;font-weight:700;margin-top:4px;letter-spacing:-.01em}
.auth-card .lead{font-size:13.5px;color:var(--muted);margin-top:6px}

.field{margin-top:18px}
.field label{display:block;font-size:12.5px;font-weight:600;color:var(--ink);margin-bottom:7px}
.field .box{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;border-radius:11px;padding:0 13px;transition:.15s}
.field .box:focus-within{border-color:var(--forest-2);box-shadow:0 0 0 4px var(--forest-soft)}
.field .box .ic{color:var(--muted-2);font-size:15px}
.field input{flex:1;border:0;outline:none;background:transparent;font-family:var(--lao);font-size:14px;padding:12px 0;color:var(--ink)}
.field .toggle{background:none;border:0;color:var(--muted-2);font-size:13px;font-weight:600;padding:6px}

.row-between{display:flex;align-items:center;justify-content:space-between;margin-top:14px;font-size:12.5px}
.check{display:flex;align-items:center;gap:7px;color:var(--muted);cursor:pointer}
.check input{accent-color:var(--forest)}

.btn-login{width:100%;margin-top:22px;background:var(--forest);color:#fff;border:0;border-radius:11px;
  padding:13px;font-size:14.5px;font-weight:700;transition:.15s;display:flex;align-items:center;justify-content:center;gap:8px}
.btn-login:hover{background:var(--forest-2);box-shadow:0 8px 22px rgba(30,77,63,.28)}

.alert{margin-top:18px;padding:11px 14px;border-radius:11px;font-size:13px;font-weight:600;display:flex;gap:9px;align-items:flex-start}
.alert.err{background:var(--danger-soft);color:var(--danger)}
.alert.ok{background:var(--ok-soft);color:var(--ok)}

.demo{margin-top:22px;border-top:1px solid var(--line);padding-top:16px}
.demo .t{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);font-weight:700;margin-bottom:9px}
.demo .acct{display:flex;justify-content:space-between;align-items:center;padding:8px 11px;border:1px solid var(--line);
  border-radius:9px;margin-bottom:7px;font-size:12.5px;cursor:pointer;transition:.12s}
.demo .acct:hover{border-color:var(--forest-2);background:var(--forest-soft)}
.demo .acct .r{color:var(--muted);font-size:11.5px}
.demo .acct .num{color:var(--forest);font-weight:600}

.auth-credit{text-align:center;font-size:11.5px;color:var(--muted-2);margin-top:26px}
