/* Copyright (c) 2023 POTI Inc. All rights reserved. */

@font-face {
    font-family: mono;
    src: url(DroidSansMono.woff);
}

#media-print {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0;
	padding: 0;
	background-color: white;
	z-index: 2000; /* bootstrap */
}

@media print {
	#media-print {
		display: block;
	}
}

@media screen {
	#media-print {
		display: none;
	}	
}

h2 {
	font-style: italic;
}

#vt-text {
	font-size: 15pt;
	color: #181818;
	overflow: auto;
}

#vt {
	position: relative;
	font-family: sans-serif;
	font-size: 16pt;
	color: #181818;
	background-color: #F0F0F0;
	overflow: auto;
}

* {
	box-sizing: border-box;
}

.scrollable {
	overflow-x: hidden;
	overflow-y: auto;
}

.centered {
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

div.form {
	width: 20em;
	height: 100%;
	margin: 0 auto;
}

div.line {
	padding: 0.2em 0;
	white-space: nowrap;
}

div.label {
	display: inline-block;
	width: 40%;
	padding-top: 0.5em;
}

div.error {
	display: inline-block;
	padding-top: 0.5em;
	color: red;
}

input[type=text], select {
	height: 2.2em;
	width: 60%;
	padding: 0 0.3em;
	vertical-align: top;
	font-size: 100%;
	border: 1px solid #B0B0B0;
}

input[type=text]:focus {
	outline: 1px solid red;
}

input[type=text]:disabled {
	border: 0;
}

div.caption {
	width: 20em;
	border-bottom: 1px solid #B0B0B0;
}

div.caption span.price {
	float: right;
	width: 4em;
	text-align: center;
}

input[type=text].label, input[type=text].price {
	border: none;
	border-left: 1px solid #B0B0B0;
	border-bottom: 1px solid #B0B0B0;
	outline: none;
}

input[type=text].label {
	width: 16em;
}
input[type=text].price {
	width: 4em;
	border-right: 1px solid #B0B0B0;
	text-align: right;
}

input[type=checkbox], input[type=radio] {
	margin: 0;
	height: 2.2em;
	width: 2.2em;
	font-size: 100%;
	vertical-align: middle;
}

select {
	width: 10em;
}

select>option {
	font-size: 100%;
}

div.line.button {
	padding: 0.5em 0;
	
    position: initial; /* mod.css */
    top: auto;
    left: auto;
    opacity: initial;
    transition: none;
    transform: none;	
}

button {
	width: 100%;
	padding: 0.7em 0;
	font-size: 95%;
	background-color: #E0E0E0;
	border-color: #C0C0C0;
}

button.button25 {
	width: 25%;
}

button.button50 {
	width: 50%;
}

button.button375 {
	width: 37.5%;
}

button.button75 {
	width: 75%;
}

button.lite {
	background-color: transparent;
}

button.red {
	background-color: #FFDFDF;	
}

button.more {
	border: 1px solid #B0B0B0;
	border-top: 0;
	background-color: transparent;
	border-bottom-left-radius: 1em;
	border-bottom-right-radius: 1em;
}

div.payment div.line.pcard {
	display: none;
	padding: 0.2em 0.5em;
	background-color: #E8E8E8;
}

div.payment div.line.button.pcard {
	padding: 0.2em 0;
	background-color: transparent;
}

pre {
	margin: 0;
	padding: 0;
	font-family: mono;
	font-size: 80%;
}

div.tickets div.list, div.batches div.list, div.batch div.list {
	background-color: #E0E0E0;	
}

div.tickets div.ticket, div.batches div.batch {
	padding: 0.2em;
	margin-top: 1px;
	background-color: white;
	cursor: pointer;
}

div.batch div.txn {
	padding: 0.2em 0;
	margin-top: 1px;
	background-color: #F0F0F0;
}

.text {
	padding: 0; /* mod.css */
}

#wait {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}

#popup {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, .5);
}

#popup div.form {
	height: auto;
	margin-top: 0.1em;
	padding: 1em;
	background-color: white;
	border-bottom-left-radius: 1em;
	border-bottom-right-radius: 1em;
	box-shadow: 0 0 20px;
}