/* Extracted from index.html's inline <style> block (2026-08-22 hardening pass)
   so the login page's Content-Security-Policy can ship with style-src 'self'
   only - no 'unsafe-inline'. See SecurityHeaders.cs for the policy itself. */
:root { color-scheme: dark; }
body { margin: 0; font-family: Segoe UI, Roboto, sans-serif; background: #0d1110; color: #e8f5e9; }
main { max-width: 420px; margin: 10vh auto 0; padding: 20px 16px; }
.brand { display: flex; gap: 12px; align-items: center; margin-bottom: 18px; }
.brand img { width: 56px; height: 56px; border-radius: 14px; object-fit: cover; }
h1 { font-size: 1.45rem; margin: 0 0 4px; }
.sub { color: #9ccc9c; margin: 0 0 18px; line-height: 1.45; }
.sub.tight { margin: 0; }
label { display: block; margin: 0 0 6px; color: #b2dfbb; }
label.spaced { margin-top: 12px; }
.muted { color: #6a9b6f; }
input { width: 100%; box-sizing: border-box; padding: 12px; border-radius: 8px; border: 1px solid #2e4a32; background: #142018; color: #fff; font-size: 16px; }
button { width: 100%; margin-top: 14px; padding: 14px; border: 0; border-radius: 8px; background: #1b5e20; color: #fff; font-size: 16px; font-weight: 600; cursor: pointer; }
button:disabled { opacity: 0.6; }
.err { color: #ff8a80; margin: 0 0 12px; }
.help { margin-top: 18px; color: #9ccc9c; font-size: 0.9rem; line-height: 1.45; }
.help a { color: #69f0ae; }
