/* Login / bootstrap page layout */ *, *::before, *::after { box-sizing: border-box; } html, body { min-height: 100%; } body { margin: 0; font-family: var(--font-sans); background: var(--bg-body); color: var(--text-primary); } .login-container { min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; padding: 2rem 1rem; background: var(--bg-body); } .login-brand { width: min(100%, 24rem); display: flex; align-items: center; justify-content: center; gap: 0.75rem; } .login-container h1 { margin: 0; color: var(--text-primary); font-size: 1.55rem; line-height: 1.1; } .login-container .subtitle { margin: 0.3rem 0 0; color: var(--text-secondary); font-size: 0.85rem; } .login-form { width: 100%; max-width: 24rem; background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-md); box-shadow: var(--shadow-md); padding: 1.35rem; } .login-form label { margin: 0 0 0.35rem; color: var(--text-secondary); } .login-form input { margin-bottom: 0.85rem; } .login-form .btn { width: 100%; margin-top: 0.15rem; } .login-logo { width: 3rem; height: 3rem; display: block; flex: 0 0 auto; }