@page {
	size: auto;
	margin: 0mm;
}

* {
	box-sizing: border-box;
	-webkit-print-color-adjust: exact;
}

div.ui-datepicker {
	font-size: 14px;
}

select {
	-webkit-appearance: none;
	-moz-appearance: none;
	background-color: white;
	padding-left: 5px;
}

input[type="text"],
select,
textarea {
	border: none;
	resize: none;
	background-color: white;
	border-radius: 3px;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
	outline: none;
}

span {
	font-weight: bold;
}

textarea {
	overflow: hidden !important;
	resize: none !important;
	border: none;
	font-size: 12px;
}

.background {
	z-index: 0;
	position: absolute;
}

body {
	font-size: 14px;
	font-family: "Source Sans Pro", sans-serif;
	background-color: #2a2a2a;
}

#html {
	padding-top: 100px;
	padding-bottom: 30px;
}

#body {
	width: 860px;
	height: 1150px;
	border: 1px solid black;
	background-color: white;
	margin: auto;
	position: relative;
}

.printOverlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 80px;
	background-color: white;
	z-index: 2;
	border-bottom: 3px solid #2a2a2a;
}

.printOverlay button {
	display: inline-block;
	text-align: center;
	height: 50px;
	width: 170px;
	font-size: 20px;
	margin: 15px 6px;
	float: right;
}

/* Background Color for boxes */

.organizationBox,
.dateBox,
.signatureBox,
.travelDatesBox,
.hotelInfoBox,
.travelReasonBox,
.startingAddress,
.destinationAddress,
.estimatedCostBox,
.attachmentsBox,
.travelModeBox,
.travelRosterBox {
	background-color: #d7d7d7;
}

/* Logo */

#logo {
	position: absolute;
	top: 30px;
	left: 30px;
	width: 155px;
	height: 85px;
}

/* Current Date box*/

.dateBox {
	position: absolute;
	top: 30px;
	left: 190px;
	width: 95px;
	height: 100px;
	height: 85px;
	padding: 5px;
	border: 1px solid black;
	font-size: 17px;
}

/* Organization */

.organizationBox .verifiedTreasurer span {
	padding-top: 10px;
	font-size: 13px;
}

.organizationBox .verifiedTreasurer input {
	font-size: 13px;
	width: calc(100% - 149px);
	margin-top: 10px;
}

.organizationBox {
	position: absolute;
	top: 30px;
	left: 290px;
	width: 335px;
	height: 85px;
	padding: 5px;
	padding-top: 5px;
	font-size: 15px;
	border: 1px solid black;
}

.organizationBox select {
	height: 20px;
	width: 100%;
	margin-top: 5px;
	font-size: 12px;
}

/*  Travel Dates */

.travelDatesBox {
	position: absolute;
	top: 30px;
	left: 630px;
	width: 200px;
	height: 85px;
	padding: 5px;
	border: 1px solid black;
	padding-top: 15px;
}

.travelDatesBox span {
	font-size: 17px;
}

.travelDatesBox table {
	/* height: 20px; */
	border-collapse: collapse;
}

.travelDatesBox table tr td:nth-child(even) {
	padding-right: 5px;
}

.travelDatesBox input {
	margin-top: 5px;
	width: 60px;
	height: 20px;
	padding: 5px;
}

/* Form title */

.form_title {
	position: absolute;
	color: #01422c;
	font-size: 20px;
	position: absolute;
	text-align: center;
	top: 95px;
	width: 860px;
}

/*  Travel Reason Box */

.travelReasonBox {
	position: absolute;
	top: 160px;
	left: 30px;
	width: 800px;
	height: 90px;
	padding: 5px 8px 3px 8px;
	border: 1px solid black;
}

.travelReasonBox textarea {
	width: 100%;
	height: calc(100% - 28px);
	margin-top: 2px;
	padding: 5px;
}

.travelReasonBox span {
	font-size: 15px;
}

/* Address Boxes */

.startingAddress {
	position: absolute;
	top: 255px;
	left: 30px;
	width: 400px;
	height: 120px;
	padding: 10px;
	padding-top: 5px;
	border: 1px solid black;
	border-right-style: none;
}

.destinationAddress {
	position: absolute;
	top: 255px;
	left: 430px;
	width: 400px;
	height: 120px;
	padding: 10px;
	padding-top: 5px;
	border: 1px solid black;
}

.t1 tr td:first-child {
	width: 100px;
}

/* Formats the city, state, zip table */

/* Selects titles */

.city_state_zip tr td:nth-child(odd) {
	padding-right: 10px;
}

/* Selects inputs */

.city_state_zip tr td:nth-child(even) {
	padding-right: 10px;
}

/*  Set size for city input*/

.city_state_zip tr td:nth-child(2) {
	width: 245px;
}

/*  Set size for state input*/

.city_state_zip tr td:nth-child(4) {
	width: 50px;
}

/* Set size for zip code input */

.city_state_zip tr td:nth-child(6) {
	width: 115px;
	padding-right: 0px;
}

.address_line_input {
	width: 280px;
}

.startingAddress input,
.destinationAddress input {
	padding: 5px;
	width: 100%;
	margin: 1px;
}

.startingAddress span,
.destinationAddress span {
	font-size: 15px;
}

/* Travel Mode */

.travelModeBox {
	position: absolute;
	top: 380px;
	left: 30px;
	height: 35px;
	width: 800px;
	border: 1px solid black;
	padding: 5px;
}

/* Travel Roster */

.travelRosterBox {
	position: absolute;
	top: 420px;
	left: 30px;
	width: 800px;
	height: 30px;
	border-collapse: collapse;
	padding: 10px;
	border: 1px solid black;
}

.travelRosterBox th {
	height: 30px;
}

.travelRosterBox td {
	padding-left: 10px;
	border: 1px solid black;
	vertical-align: middle;
	height: 25px;
}

.travelRosterBox td:nth-of-type(3n + 1) {
	width: 275px;
}

.travelRosterBox td:nth-of-type(3n + 2) {
	width: 200px;
}
/*
.travelRosterBox label {
  padding-left: 5px;
}
*/
.travelRosterBox td:nth-of-type(3n + 3) {
	width: 125px;
}

.travelRosterBox input[type="text"] {
	height: 20px;
	width: 300px;
	border: 1px solid lightgray;
	font-size: 12px;
}

.travelRosterBox td:nth-of-type(3n + 2) input[type="text"] {
	width: 100px;
}

.travelRosterMiles {
	height: 20px;
	width: 100px;
	border: 1px solid lightgray;
	font-size: 12px;
}

/* Attachments */

.attachmentsBox {
	position: absolute;
	top: 730px;
	left: 30px;
	width: 550px;
	height: 40px;
	padding: 5px;
	border: 1px solid black;
}

.attachmentsBox th {
	text-align: left;
	padding: 8px 10px;
}

.attachmentsBox td {
	padding-right: 5px;
}

/* Estimated Cost */

.estimatedCostBox {
	position: absolute;
	top: 730px;
	left: 585px;
	width: 245px;
	height: 40px;
	padding: 5px;
	margin-right: 5px;
	border: 1px solid black;
}

.estimatedCostBox input {
	width: 100px;
	padding: 5px;
}

/*  Hotel Information */

.hotelInfoBox {
	position: absolute;
	top: 775px;
	left: 30px;
	width: 800px;
	height: 145px;
	padding: 10px;
	border: 1px solid black;
}

.hotelInfoNameBox span {
	font-weight: normal;
}

.hotelInfoNameBox {
	position: absolute;
	top: 30px;
	left: 10px;
	width: 480px;
	height: 105px;
}

.hotelInfoNameBox textarea {
	width: 550px;
	height: 85px;
	padding: 5px;
}

.hotelInfoCostBox span {
	font-weight: normal;
	position: relative;
	top: 2px;
	left: 0px;
	margin-right: 25px;
	margin-top: px;
}

.hotelInfoCostBox {
	/* margin-top: -10px; */
	/* position: absolute; */
	/* width: 120px; */
	/* left: 665px; */
	/* margin:-30px; */
	position: absolute;
	top: 28px;
	left: 500px;
	width: 280px;
	height: 110px;
	/* margin-bottom: 10px; */
	padding-top: -50px;
}

.hotelInfoBox input[type="text"] {
	width: 140px;
	margin: 2px;
	height: 25px;
	position: relative;
	margin-top: 9px;
	margin-left: 1px;
	postion: relative;
}

.reminder {
	position: absolute;
	top: 935px;
	left: 87px;
	background-color: #ffff00;
}

/* Signatures */

/*
.signatureBox {
  position: absolute;
  top: 925px;
  left: 30px;
  width: 800px;
  height: 170px;
  padding: 10px;
  border: 1px solid black;
}

.signatureBox span {
  font-size: 15px;
}
.signatureBox td {
  width: 350px;
  padding-right: 25px;
  padding-left: 0px;
}

.signatureBox input[type="text"] {
  height: 30px;
  width: 370px;
  border-bottom: 1px solid black;
} */

.organization_signature {
	position: absolute;
	top: 950px;
	left: 460px;
	width: 370px;
}

.vpf_signature {
	position: absolute;
	top: 950px;
	left: 30px;
	width: 370px;
}

.organization_signature hr:first-child,
.vpf_signature hr:first-child {
	margin-top: 45px;
}

.organization_signature hr:nth-child(2),
.vpf_signature hr:nth-child(2) {
	margin-top: 20px;
}

.organization_signature hr,
.vpf_signature hr {
	border-top: 1px solid black;
	border-left: none;
	border-right: none;
	border-bottom: none;
}

.organization_signature,
.vpf_signature {
	font-size: 10px;
}

.dateline {
	width: 200px;
}

.organization_signature p,
.vpf_signature p {
	text-align: right;
	margin-right: 180px;
}

#travel_id {
	position: absolute;
	text-align: right;
	bottom: 30px;
	right: 30px;
}

.popup {
	position: fixed;
	left: 30px;
	right: 30px;
	bottom: 15px;
	background-color: #1885ad;
	color: white;
	font-size: 16px;
	padding: 14px 30px;
	border-radius: 4px;
	text-align: center;
	display: none;
}

select {
	line-height: 20px;
}

@media print {
	#html {
		margin: 0px;
		padding: 0px;
		background-color: white;
	}
	body {
		background-color: white;
	}
	#body {
		border: none;
		margin-top: 0;
		margin-bottom: 0;
		height: 1100px;
	}
	.printOverlay {
		display: none;
	}
	.popup {
		display: none;
	}
}
