:root { --forest:#164B35; --copper:#C47745; --cream:#FAF7F1; --charcoal:#28343A; --border:#DFE2DC; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; display:grid; place-items:center; padding:24px; background:var(--cream); color:var(--charcoal); font-family:Segoe UI,Arial,sans-serif; }
.login-card { width:min(100%,920px); display:grid; grid-template-columns:1fr 1fr; overflow:hidden; border:1px solid var(--border); border-radius:16px; background:white; box-shadow:0 16px 45px #28343a16; }
.hero { background:var(--forest); color:var(--cream); display:flex; flex-direction:column; justify-content:center; align-items:center; padding:48px 32px; min-height:490px; text-align:center; }
.hero img { display:block; max-width:100%; max-height:230px; object-fit:contain; margin-bottom:24px; }
.hero h1 { font-size:3.4rem; letter-spacing:.13em; margin:0; font-weight:650; }
.hero p { color:#e5c3a8; letter-spacing:.11em; }
.form-area { padding:65px 48px; align-self:center; }
h2 { color:var(--forest); margin:0 0 8px; font-size:1.9rem; }
.intro { color:#64706c; line-height:1.5; margin-bottom:32px; }
label { display:block; font-weight:600; margin:18px 0 8px; font-size:.92rem; }
input { display:block; width:100%; padding:13px 14px; border:1px solid var(--border); border-radius:7px; font:inherit; }
input:focus { outline:2px solid var(--copper); outline-offset:1px; }
button { width:100%; margin-top:28px; padding:14px; background:var(--forest); color:white; border:0; border-radius:7px; font:inherit; font-weight:600; cursor:pointer; display:flex; justify-content:space-between; }
button:hover { background:#0d3827; }
.demo { font-size:.8rem; color:#747d79; margin-top:24px; }
@media(max-width:680px) { .login-card { grid-template-columns:1fr; } .hero { min-height:240px; padding:24px; } .hero img { max-height:100px; margin-bottom:8px; } .hero h1 { font-size:2.5rem; } .form-area { padding:32px 26px; } }

/* Password reset: simulated email (development only) */
.form-area a { color:var(--forest); font-weight:600; }
.simmail { border:1px dashed #C47745; background:#fff7f0; border-radius:10px; padding:16px; margin-top:8px; }
.simtag { margin:0 0 10px; font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#8f4c20; }
.simbody { background:#fff; border:1px solid var(--border); border-radius:8px; padding:14px 16px; font-size:.9rem; line-height:1.5; }
.simbody p { margin:0 0 10px; }
.mailbtn { display:inline-block; background:var(--forest); color:#fff !important; text-decoration:none; padding:11px 18px; border-radius:7px; font-weight:600; }
.simurl { font-size:.72rem; color:#747d79; word-break:break-all; margin:0 !important; }
