.table-borders table, .table-borders th , .table-borders td  {
  border: 1px solid grey;
  border-collapse: collapse;
  padding: 5px;
}
table tr:nth-child(odd)	{
  background-color: #f1f1f1;
}
table tr:nth-child(even) {
  background-color: #ffffff;
}
table input {
  width: 100%;
}
table input.kuvaus {
  width: auto;
}

input, textarea{
  border: 1px solid #CCC;
}
.newlines {
    white-space: pre-wrap;
}
.text10px {
	font-size: 10px;
}
.text12px {
	font-size: 12px;
}
.input-hover input:hover{
	border: 1px solid #CCC;
}
.table input{
	border:1px solid white;
}

/*.container input:hover, .container textarea:hover, 
.table-striped > tbody > tr:nth-child(2n+1) > td input:hover,
.container input:focus, .container textarea:focus, 
.table-striped > tbody > tr:nth-child(2n+1) > td input:focus{
  border: 1px solid #CCC;
}*/

.table-striped > tbody > tr:nth-child(2n+1) > td input{
    background-color: #F9F9F9;
    border: 1px solid #F9F9F9;
}

.table input{
  width: 100%;
}

.align-right input{
  text-align:right;
  width: auto;
}

div.container{
  width: auto;
  max-width: 190mm;
}

@page 
{
	size: A4;   /* auto is the current printer page size */
	margin: 10mm 0mm 5mm 0mm;  /* this affects the margin in the printer settings */
}

body 
{
	background-color:#FFFFFF; 
	margin: 0px;  /* the margin on the content before printing */
}
input:invalid {
  border-color: /*#800000*/red;
/*  border-width: 3px;*/
}

.divFooter {
	width: auto;
    max-width: 182mm;
	height: 60mm;
}
.divFooter2 {
	width: auto;
    max-width: 182mm;
	height: 60mm;
}
@media print {
	a[href]:after {
		content: none !important;
	}
	table { page-break-after:auto;}
	tr    { page-break-inside:avoid;
			page-break-after: auto;}
	td    { page-break-inside:auto;}
	thead { display:table-header-group }

	.laskuntuotteet {
		position: relative;
		border-bottom: 70mm;
		margin-bottom: 70mm;
	}
	div.container {
		bottom: 60mm;
		min-height: 100%;
		max-height: 150mm;
		margin: 0 auto 60mm;
		padding-bottom: 60mm;
	}
    .divFooter {
		display: block;
		margin-left: 10mm;
/*        position: fixed;
*/		position: absolute;
		bottom: 0;
/*		display: table;
		page-break-inside: avoid;
 */   }
	.divFooter2 {
		display: block;
		page-break-inside: avoid;
		margin-left: 10mm;
		position: static;
	}
}

.loader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    text-align: center;
}
.loader:before {
    content: "";
    height: 100%;
    display: inline-block;
    vertical-align: middle;
}
.loader .spinner-frame {
    display: inline-block;
    vertical-align: middle;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
    padding: 20px;
    background: #eee;
}
.loader .spinner-frame .spinner-cover {
    background: #fff;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    position: relative;
}
.loader .spinner-frame .spinner-bar {
    background: #29d;
    width: 50%;
    height: 50%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100% 0 0 0;
    vertical-align: middle;
    display: inline-block;
    color: blue;
    animation: spin 2s infinite linear;
    -webkit-animation: spin2 2s infinite linear;
    transform-origin: 100% 100%;
}
@keyframes spin {
    from {
        transform: scale(1) rotate(0deg);
    }
    to {
        transform: scale(1) rotate(360deg);
    }
}
@-webkit-keyframes spin2 {
    from {
        -webkit-transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
    }
}