html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* Google sign-in button — follows Google branding guidelines */
.btn-google {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	background-color: #ffffff;
	border: 1px solid #dadce0;
	border-radius: 4px;
	color: #3c4043;
	font-family: Roboto, Arial, sans-serif;
	font-size: 14px;
	font-weight: 500;
	height: 44px;
	padding: 0 16px;
	text-decoration: none;
	width: 100%;
	transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

	.btn-google:hover {
		background-color: #f8f9fa;
		border-color: #d2d5d9;
		box-shadow: 0 1px 2px rgba(60, 64, 67, 0.15);
		color: #3c4043;
		text-decoration: none;
	}

	.btn-google:active {
		background-color: #f1f3f4;
	}

	.btn-google svg {
		flex-shrink: 0;
		height: 18px;
		width: 18px;
	}