#checkoutform { margin: 75px 0 40px; }

.acclist, .acctable { margin: 0 auto 20px; width: 585px; max-width: 80%; }
.acclist:not(:has(h3)) {
	overflow: visible;
	margin-bottom: 75px;
}
.acctable { width: 600px; max-width: 90%; }

#nextbutton, #placebutton { margin: 10px auto 3px; }

#backstep {
	border-top: none;
	cursor: pointer;
	margin: -22px auto -16px;
	transform: translateY(35px);
	font-size: 13px;
	font-weight: 500;
	color: darkcyan;
	border-radius: 0 0 5px 5px;
	padding: 10px;
}
#backstep:hover, #backstep:focus { text-decoration: underline; }

.acclist label, #currentstep, #nextbutton, #backstep,
.last#currentstep + .acclist >  #placebutton { display: block; line-height: 1.25em; }

.step, #placebutton, .first#currentstep ~ .acclist > #backstep,
.last#currentstep + .acclist > #nextbutton, #b2bmessage, .footer { display: none; }

.step, .acclist { transition: opacity .35s; }
.step[inert], .acclist[inert] { opacity: 0; }

#b2bmessage {
	text-align: center;
	text-wrap: balance;
	margin-top: 45px;
	padding: 20px 0;
	background: var(--BGlighter);
}
#b2bmessage > h2 { margin: 0; }
#b2bmessage > .bottomlogos { padding: 0; }
html[data-theme="dark"] #b2bmessage > .bottomlogos > img:first-child { filter: brightness(100); }

.timeline { gap: 20px; text-align: center; justify-content: center; margin: -10px auto 20px; }
#line {
	bottom: unset;
	top: 29px;
	width: 350px;
	max-width: 80vw;
}
.timeline > div:not(#line) {
	width: 100px;
	text-wrap: balance;
	justify-content: unset;
	pointer-events: none;
}

.timeline > div:not(#line):has(~ div > .activetick) { pointer-events: all; cursor: pointer; }

.timeline > div > span:first-child {
	height: 32px;
}

.timeline > div > span:nth-child(2) {
	color: var(--mainblue);
	font-size: 29px;
	line-height: 1.2em;
	width: 36px;
	height: 36px;
	transition: background .15s, color .15s;
}
div:has(~ div > .activetick) > span:nth-child(2) { color: white; }
div:has(~ div > .activetick):hover > span:nth-child(2) { background: #478bb1; }
.timeline > div > span.activetick {
	background: var(--mainblue);
	animation: unset;
	color: white;
}

/* Inner text spacing of the 1 and 4 circles: (Depends on font) */
/*.timeline > div:first-child > span:nth-child(2):after, .timeline > div:last-child > span:nth-child(2):after {
	content: ".";
	font-size: 9px;
	color: transparent;
	opacity: 0;
	pointer-events: none;
}*/

.acctable th, .acctable td { max-width: 25px; }
.acctable th:nth-child(2) { max-width: unset; }

.acctable img { width: 120px; max-width: 20vw;	border-radius: 4px; }
.acctable td:nth-child(2) { line-height: 17px; text-align: left; text-wrap: nowrap; }
.acctable td:nth-child(2) > span:nth-of-type(odd) { font-weight: 600; }
.acctable td:nth-child(2) > span:nth-of-type(even) { font-weight: 500; }
/*.acctable td:nth-child(2):has(span:nth-of-type(6)) { line-height: 16px; }*/
.acctable td:nth-child(2) span.addtl { text-wrap: wrap; }

.acctable td { padding-left: 6px !important; padding-right: 6px !important; }

.acctable td > span:empty:after, .tablepopout span:empty:after {
	content: 'N/A';
	opacity: .35;
}

/*.acctable td:first-child:has(+ td > .prodnum) > img { mix-blend-mode: multiply; }*/

.acctable .cost { font-size: 15px; }

.memotext {
	color: #ec3c3c;
	font-weight: 600;
	text-transform: capitalize;
}

@media (max-width: 500px) {
	.timeline { gap: 10px; }
	/*.acctable img { width: 50px; }*/
}

#emptycart { width: 300px; text-align: center; margin: auto; }
.underline { color: var(--colorlink); }

.last.step > h3 {
	font-weight: 400;
	display: flex;
	justify-content: space-between;
	width: 320px;
	margin: 7px auto;
}
#grandtotal {
	font-weight: 600;
	margin-bottom: 10px;
}