:root { font-family: system-ui, sans-serif; }
body { margin: 0; color: #1a1a1a; background: #f5f6f8; }
.center { display: flex; min-height: 100vh; align-items: center; justify-content: center; }
.card { background: #fff; padding: 2rem; border-radius: 8px; box-shadow: 0 1px 4px rgba(0,0,0,.1); width: 320px; }
.card h1 { margin: 0 0 1rem; font-size: 1.25rem; }
label { display: block; margin: .5rem 0 .25rem; font-size: .85rem; }
input { width: 100%; padding: .5rem; box-sizing: border-box; border: 1px solid #ccc; border-radius: 4px; }
button { margin-top: 1rem; width: 100%; padding: .6rem; border: 0; border-radius: 4px; background: #2563eb; color: #fff; cursor: pointer; }
button:hover { background: #1d4ed8; }
.error { color: #b91c1c; font-size: .85rem; margin-top: .5rem; min-height: 1rem; }
header.topbar { display: flex; justify-content: space-between; align-items: center; padding: .75rem 1.5rem; background: #fff; border-bottom: 1px solid #e5e7eb; }
main { padding: 1.5rem; }
