.appointments .department-btn,
.appointments .appointment-btn,
.appointments .date-btn {
    display: block;
    color: inherit;
    border-right: 3px solid #1e99d9;
    background: #f1f1f1;
    padding: 1rem;
    font-size: 1.3rem;
    border-radius: 3rem;
}

.appointments .card .department-btn,
.appointments .card .appointment-btn,
.appointments .card .date-btn {
    background: #fff;
}

.appointments table .appointment-btn {
    padding: .1rem .25rem;
    font-size: 1rem;
    margin-left: .5rem;
    display: inline-block;
}
.appointments table caption {
    caption-side: top;
}

/**/

.user-info-card.has-subjects {
    position: relative;

    display: none;
}
.user-info-card.has-subjects .card-body {
    opacity: 0.5;
}
.user-info-card.has-subjects:before {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%) rotate(-10deg);
    content: 'לפני שתמשיך, אנא בחר נושא';
    font-size: 2rem;
    z-index: 1;
}

#schedule-submit.has-subjects {
    display: none;
}

/**/

@media (min-width: 992px) {
	.meeting-type-select {
		display: flex;
		justify-content: center;
	}
}

.meeting-type-select > div {
	padding: 1rem;
}

.meeting-type-select label {
	display: block;
	width: 280px;
	background: #fff;
	border: 1px solid #ddd;
	padding: 1rem;
	border-radius: 2rem;
	text-align: center;
	height: 100%;
	cursor: pointer;
}

.meeting-type-select label:focus {
	box-shadow: 0 0 5px #0075ff;
}

.meeting-type-select input:checked + label {
	border: 1px solid #0075ff;
	box-shadow: 0 0 5px #0075ff;
}

.meeting-type-select input {
	position: absolute;
	top: 1rem;
	right: 1rem;
}

.meeting-type-select .h3 {
	font-weight: bold;
	margin: .5rem 0;
}


.subject-card:focus {
	outline: 2px dotted #000 !important;
}
.subject-card .card-header:focus {
	outline: 2px dotted yellow !important;
}