body{margin:0;font-family:sans-serif;background:#0b0f14;color:#eee}
.page{min-height:100vh}

/* existing */
.center{display:flex;align-items:center;justify-content:center}
.card{background:#121826;padding:20px;border-radius:8px}
.inspector-layout{display:flex;flex-direction:column}
.topbar{display:flex;justify-content:space-between;padding:10px;background:#000}

/* footer (shared) */
.site-footer{
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:0.9em;
  color:#888;
  border-top:1px solid #1c222b;
}
.site-footer a{color:#5ea3ff;text-decoration:none}
.site-footer a:hover{text-decoration:underline}

/* LOGIN: center card, footer always bottom */
.login-page{
  display:flex;
  flex-direction:column;
  min-height:100vh;
}
.login-center{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* INSPECTOR: ensure footer visible without scrolling */
.content{
  display:flex;
  height:calc(100vh - 50px - 40px); /* topbar (50) + footer (40) */
}
canvas{flex:3}
.right{flex:1;padding:10px;background:#000}
img{width:100%}

/* Extra breathing room above footer on inspector page */
.inspector-layout .site-footer {
  margin-top: 12px;      /* space between canvas area and footer */
}