:root{
  color-scheme: light;
  --orange:#ff5c35;
  --ink:#18181b;
  --muted:#666a73;
  --line:#e5e7eb;
  --panel:#ffffff;
  --bg:#f6f4f1;
}
*{box-sizing:border-box}
body{
  margin:0;
  min-height:100vh;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:linear-gradient(135deg,#fff 0%,var(--bg) 100%);
  color:var(--ink);
}
.login-shell{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
}
.login-panel{
  width:min(100%,420px);
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:8px;
  padding:28px;
  box-shadow:0 24px 70px rgba(24,24,27,.12);
}
.login-logo{width:58px;height:58px;object-fit:cover;border-radius:8px}
.eyebrow{margin:20px 0 6px;color:var(--orange);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
h1{margin:0 0 22px;font-size:clamp(1.7rem,5vw,2.3rem);line-height:1.05}
form{display:grid;gap:16px}
label{display:grid;gap:7px;font-weight:700}
label span{font-size:.9rem}
input{
  min-height:48px;
  border:1px solid var(--line);
  border-radius:8px;
  padding:0 13px;
  font:inherit;
}
input:focus{outline:3px solid rgba(255,92,53,.22);border-color:var(--orange)}
button{
  min-height:48px;
  border:0;
  border-radius:8px;
  background:var(--orange);
  color:white;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
button:disabled{opacity:.65;cursor:wait}
.login-error{min-height:1.3em;margin:0;color:#b91c1c;font-weight:700}
@media (prefers-reduced-motion:no-preference){
  .login-panel{animation:rise .28s ease-out both}
  @keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
}
