#alphabetlist {
	display:table;
	margin:auto;
}

#alphabetlist ul {
	display:table-row;
}

#alphabetlist li {
	display:table-cell;
	border:1px solid #FFF;
}

#alphabetlist a {
	display:block;
	color:#FFF;
	background: #555;
	padding:0 5px;
}

#alphabetlist a:hover {
	background:#000;
}

.welp-form .error {
	color:#F55;
}

.welp-form .success {
	color:#2D2;
}

.welp-form {
	display: flex;
	flex-direction: column;
}

.welp-form .row {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
}

.welp-form .row label,
.welp-form .row div {
	padding: 0.5em 0.6em;
	border: 1px solid #ddd;
	display: flex;
	align-items: center;
}

.welp-form label {
	flex: 1;
}

.welp-form .row div {
	flex: 3;
}

.welp-form input[type=submit] {
	padding: 0.5em 1em;
	background-color: #555;
	color: #fff;
}

.welp-form input[type=text] {
    width: 100%;
	font-size:1.2em;
}

ul.cnclinks {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(15em, 33%));
}
.welp-form input[type=url],
.welp-form textarea {
    width: 100%;
    font-size: 1.2em;
    box-sizing: border-box;
}

ul.cnclinks-cards {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 15em), 1fr));
    gap: 1em;
    padding: 0;
    list-style: none;
}

.cnclinks-cards > li {
    padding: 1em;
    border: 1px solid #ddd;
    border-radius: 0.25em;
    overflow-wrap: anywhere;
}

.cnclinks-cards > li > a {
    display: flex;
    flex-direction: column;
    gap: 0.75em;
}

.cnclinks-logo {
    width: 100%;
    height: 6em;
    object-fit: contain;
}

.cnclinks-description {
    white-space: normal;
    margin-bottom: 0;
}
