:root{font-family:Segoe UI,Arial,sans-serif;color:#1d2939;background:#f5f7fa;--accent:#13674b;--muted:#667085;--border:#e3e7ed}
*{box-sizing:border-box}
body.login-page{margin:0;min-height:100vh;display:grid;place-items:center;padding:16px;background:#f5f7fa}
.login-card{width:100%;max-width:380px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:36px 32px;box-shadow:0 12px 32px rgba(16,24,40,.08)}
.login-logo{display:block;height:24px;width:auto;margin-bottom:22px}
.login-card h1{margin:0 0 6px;font-size:22px;letter-spacing:-.4px}
.login-subtitle{margin:0 0 22px;color:var(--muted);font-size:14px}
.login-card label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
.login-card input{width:100%;font:inherit;font-size:16px;padding:12px 14px;border:1px solid #d0d5dd;border-radius:8px;outline:none}
.login-card input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(19,103,75,.15)}
.login-card button{width:100%;margin-top:16px;padding:13px;border:0;border-radius:8px;background:var(--accent);color:#fff;font:inherit;font-size:15px;font-weight:600;cursor:pointer}
.login-card button:hover{background:#0f553e}
.login-error{margin:0 0 16px;padding:10px 12px;border-radius:8px;background:#fff0eb;color:#9d3728;font-size:13px}
.login-info{margin:0 0 16px;padding:10px 12px;border-radius:8px;background:#e9f5ee;color:var(--accent);font-size:13px}
