:root{--color-bg: #f0f2f5;--color-surface: #ffffff;--color-text: #1a1d23;--color-text-muted: #5f6b7a;--color-primary: #2563eb;--color-primary-hover:#1d4ed8;--color-border: #dde1e7;--color-accent: #10b981;--color-error: #ef4444;--radius-card: 12px;--radius-input: 8px;--radius-button: 8px;--shadow-card: 0 1px 3px rgba(0,0,0,.06), 0 6px 24px rgba(0,0,0,.08);--shadow-focus: 0 0 0 3px rgba(37,99,235,.25);--font-stack: "Segoe UI", system-ui, -apple-system, sans-serif;--transition-fast: .18s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{height:100%}body{min-height:100%;font-family:var(--font-stack);font-size:15px;line-height:1.5;color:var(--color-text);background:var(--color-bg);display:flex;align-items:center;justify-content:center;padding:20px}.login-container{width:100%;max-width:400px;background:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:2.25rem 1.75rem;transition:box-shadow var(--transition-fast)}.login-container:hover{box-shadow:0 1px 4px #00000014,0 12px 36px #0000001f}.login-container h2{text-align:center;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;color:var(--color-text);margin-bottom:1.75rem}.input-group{margin-bottom:1.25rem}.input-group label{display:block;font-size:.875rem;font-weight:600;color:var(--color-text-muted);margin-bottom:.4rem}.input-group input{width:100%;padding:.7rem .85rem;font-size:.95rem;font-family:var(--font-stack);color:var(--color-text);background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-input);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input-group input::placeholder{color:#a0aab4}.input-group input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}button[type=submit]{display:block;width:100%;margin-top:.5rem;padding:.8rem 1.5rem;font-size:1rem;font-weight:600;font-family:var(--font-stack);color:#fff;background:var(--color-primary);border:none;border-radius:var(--radius-button);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}button[type=submit]:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 14px #2563eb59}button[type=submit]:active{transform:translateY(0);box-shadow:none}@media (max-width: 374px){.login-container{padding:1.5rem 1.25rem;border-radius:8px}.login-container h2{font-size:1.3rem}button[type=submit]{padding:.7rem}}@media (max-height: 500px){body{align-items:flex-start;padding-top:2rem}}
