/**
 * Activeous member portal styles.
 */

.activeous-portal {
	--activeous-portal-ink: #1c2430;
	--activeous-portal-muted: #5b6675;
	--activeous-portal-accent: #0f6b5c;
	--activeous-portal-surface: #f3f6f5;
	--activeous-portal-line: #d5ddd9;
	max-width: 880px;
	margin: 0 auto;
	color: var(--activeous-portal-ink);
	font-family: "Source Sans 3", "Segoe UI", sans-serif;
}

.activeous-portal__nav ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 0;
	border-bottom: 1px solid var(--activeous-portal-line);
}

.activeous-portal__nav a {
	display: inline-block;
	padding: 0.65rem 0.9rem;
	text-decoration: none;
	color: var(--activeous-portal-muted);
	border-bottom: 2px solid transparent;
}

.activeous-portal__nav li.is-active a {
	color: var(--activeous-portal-accent);
	border-bottom-color: var(--activeous-portal-accent);
	font-weight: 600;
}

.activeous-portal__notice {
	padding: 0.75rem 1rem;
	margin-bottom: 1rem;
	background: var(--activeous-portal-surface);
	border-left: 3px solid var(--activeous-portal-accent);
}

.activeous-portal__notice--error {
	border-left-color: #a33b2d;
}

.activeous-portal__section h2,
.activeous-portal__section h3 {
	margin-top: 0;
	font-family: "Fraunces", Georgia, serif;
	font-weight: 600;
}

.activeous-portal__list {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
}

.activeous-portal__list li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 1rem;
	padding: 0.85rem 0;
	border-bottom: 1px solid var(--activeous-portal-line);
}

.activeous-portal__meta {
	color: var(--activeous-portal-muted);
	font-size: 0.925rem;
}

.activeous-portal__button,
.activeous-portal button[type="submit"] {
	appearance: none;
	border: 0;
	background: var(--activeous-portal-accent);
	color: #fff;
	padding: 0.55rem 1rem;
	cursor: pointer;
	font: inherit;
}

.activeous-portal__button:hover,
.activeous-portal button[type="submit"]:hover {
	filter: brightness(0.95);
}

.activeous-portal label {
	display: block;
	margin-bottom: 0.25rem;
	font-weight: 600;
}

.activeous-portal input[type="text"],
.activeous-portal input[type="date"],
.activeous-portal input[type="number"],
.activeous-portal select,
.activeous-portal textarea {
	width: 100%;
	max-width: 28rem;
	padding: 0.5rem 0.65rem;
	border: 1px solid var(--activeous-portal-line);
	background: #fff;
	font: inherit;
}

.activeous-portal__slot-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.activeous-portal__slot-list li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	padding: 0.7rem 0;
	border-bottom: 1px solid var(--activeous-portal-line);
}

.activeous-portal__slot-list li.is-full {
	opacity: 0.65;
}

.activeous-portal__message {
	padding: 0.85rem 1rem;
	margin-bottom: 0.75rem;
	background: var(--activeous-portal-surface);
}

.activeous-portal__message.is-staff {
	border-left: 3px solid var(--activeous-portal-accent);
}

.activeous-portal__message.is-member {
	border-left: 3px solid #6b7280;
}

.activeous-portal__family-card {
	margin-bottom: 1.5rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--activeous-portal-line);
}

@media (max-width: 640px) {
	.activeous-portal__nav ul {
		flex-direction: column;
	}

	.activeous-portal__slot-list li {
		flex-direction: column;
		align-items: flex-start;
	}
}
