:root { color-scheme: light; --bg: #f0f2f5; --card: #ffffff; --text: #1f2a37; --muted: #5b6b7c; --border: #d9dee3; --accent: #1565c0; --accent-hover: #0d47a1; } * { box-sizing: border-box; } body { margin: 0; min-height: 100vh; font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; background: var(--bg); color: var(--text); display: flex; align-items: center; justify-content: center; padding: 1.5rem; } .login-card { width: min(100%, 26rem); background: var(--card); border: 1px solid var(--border); border-radius: 8px; box-shadow: 0 8px 24px rgba(16, 24, 40, 0.08); padding: 2rem 1.75rem 1.75rem; } .login-card h1 { margin: 0 0 0.75rem; font-size: 1.45rem; font-weight: 600; line-height: 1.3; } .login-card p { margin: 0 0 1.5rem; color: var(--muted); font-size: 0.9rem; line-height: 1.45; } .login-button { width: 100%; border: 0; border-radius: 6px; padding: 0.8rem 1rem; font-size: 0.95rem; font-weight: 600; color: #fff; background: var(--accent); cursor: pointer; } .login-button:hover:not(:disabled) { background: var(--accent-hover); } .login-button:disabled { opacity: 0.7; cursor: wait; } .login-error { display: none; margin-top: 1rem; padding: 0.75rem 0.9rem; border-radius: 6px; background: #fdecea; color: #8a1c13; font-size: 0.85rem; line-height: 1.4; } .login-error.is-visible { display: block; }