/*
 *	Grundgerüst fuer alle Seiten
 */

body {
	background-color:#ebebeb;
	font-family:Arial;
	margin-left:15px;
}

.comment {
	font-style:italic;
}

table.root {
	width:100%;
	align:center;
	frame:void;
}

td.main {
	vertical-align:top;
	background-color:#eaeaea;
	padding:15px;
	margin-top:15px;
}

td.vmenu {
	vertical-align:top;
	width:160px;
}

button.highlighted {
	color:	#9f2c23;
	font-weight:	bold;
}


/*
 *	Layout von Überschriften, normalem Text und Text in Tabellen
 */

h1 {
	font-size:20px;
	text-align:center;
}

h2 {
	font-size:18px;
	text-align:center;
}

h3 {
	font-size:16px;
}

h4 {
	font-size:14px;
}

td, th {
	font-size:	12px;
	vertical-align:	middle;
	position:	relative;
	padding:	1px 2px;
}

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

p, ol {
	font-size:12px;
	text-align:justify;
}

p.small {
	font-size:11px;
}

.error {
	font-size:12px;
	text-align:left;
	font-weight:bold;
	color:red;
}

p.hinweis {
	font-size:11px;
}

table.items {
	border-collapse: collapse;
}


table.items th, table.lines th {
	border-bottom: 1.5px solid gray;
	padding: 0.5ex 0.5em 0.5em 0.5em;
}

table.items th.noLineBelow {
	border-bottom: none;
}

table.items td, table.lines td {
	padding: 0.25ex 1em 0.25em 1em;
	white-space: nowrap;
}

table.items th.lineAbove, td.lineAbove {
	border-top: 1.5px solid gray;
	padding: 0.6ex 1em 0.25em 1em;
}

table.items th.dottedLines, td.dottedLines {
	border-top: 1.5px dotted gray;
	border-bottom: 1.5px dotted gray;
}

table.items th.dobbleLineAbove, td.dobbleLineAbove {
	border-top: 3px double gray;
	padding: 0.6ex 1em 0.25em 1em;
}

table.items th.inner, td.inner {
	border-right: 1.5px solid gray;
	border-left: 1.5px solid gray;
}

table.items th.right, td.right {
	border-left: 1.5px solid gray;
}

table.lp td {
	text-align:	left;
}

table.lp td.op {
	text-align:	center;
}

table.lp td.no {
	text-align:	right;
}

table.lp td.var {
	text-align:	center;
}

table.lp td.comment {
}

.excessSupply {
	color:	green;
}

.excessDemand {
	color:	red;
}

tr.disabled {
	background-color: silver;
}

tr.zeroBid {
	background-color: silver;
}

tr.dominated {
	background-color: gainsboro;
}

tr.invalid {
	background-color: darkgray;
}

tr.centralAnchor {
	background-color: green;
}

tr.selectable:hover {
	background-color:	#b55c5c;
}

tr.selectedOdd {
	background-color: #d4a2a2;
}

tr.selectedEven {
	background-color: #cf9696;
}

table.lines {
	border-collapse: collapse;
}

table.lines th, table.lines td {
	border: 1.5px solid gray;
}


/*
 *	Sonstiges
 */

hr {
	border:none;
	height: 2px;
	margin-top: 3ex;
	background-color:#009260;
}

span.mathVar {
	font-style:italic;
}

span.var {
	font-style:italic;
}

.math {
	font-style:italic;
}

div.math {
	margin:	1ex 0 1ex 0;
	text-indent: 3em;
}

/*
div.textPage {
	margin-left:	auto;
	margin-right:	auto;
	width:		70%;
}
*/


/*
 *	Hilfe
 */

div.help {
	border-style: solid;
	border-color: rgba(4, 148, 100, 1);
	padding: 1px 10px 10px 10px;
	margin-bottom: 10px;
	background-color: rgba(4, 148, 100, 0.1);
}


img.helpIcon {
	float: right;
}

table.help {
	padding-left: 3em;
}

td.inFeasible:before {
/*
	text-decoration:	line-through;
	text-decoration-color:	red;
*/
	content: " ";
	position: absolute;
	top: 50%;
	left: 0;
	border-bottom: 1px solid darkred;
	width: 100%;
}

span.inFeasible {
	color:	darkred;
}

/*
 *	Literatur
 */

ul.literature{
	padding: 0 0 0 0;
	margin: 1.75em;
	list-style: none;
}

li.reference {
	text-indent: -1.75em;
	margin: 0.75ex 0 0 0;
	text-align:justify;
}

span.author {
	font-variant:small-caps;
}

span.title:before {
	content:'\201C';
}
span.title:after {
	content:'\201D';
}

span.booktitle {
	font-style:italic;
}

input.klein {
	font-size:11px;
}

table.fixed {
	table-layout:fixed;
}

td.leftColParameters {
	width:	450px;
}

a.clear {
	text-decoration: none; 
	color:	gray;
}

a.sorted {
	color: green;
}

a.reversed {
	color: #9f2c23;
}

a.icon {
	text-decoration:	none;
	color:			#800;
}

sup.domain {
  /* Specified in % so that the sup/sup is the
     right size relative to the surrounding text */
  font-size: 125%;

  /* Zero out the line-height so that it doesn't
     interfere with the positioning that follows */
  line-height: 0;

  /* Where the magic happens: makes all browsers position
     the sup/sup properly, relative to the surrounding text */
  position: relative;

  /* Note that if you're using Eric Meyer's reset.css, this
     is already set and you can remove this rule */
  vertical-align: baseline;

  /* Move the subscripted text up */
  top: -0.8ex;
}

span.circled {
	position: absolute;
	color: grey;
	vertical-align: middle;
	text-align: center;
	width: 14px;
	height: 14px;
	border: 1px solid gray;
	border-radius: 10px 10px 10px 10px;
}

span.emph {
	font-weight:	bold;
	color:#9f2c23;
}

.invisible {
	display:	none;
}

button.textOnly {
	background:none;
	border:none;
	margin:0;
	padding:0;
	cursor: pointer;
}

button.overlay {
	display:		none;
	position:		fixed;
	font-size:		20px;
	width:			40px;
	height:			40px;
	right:			50px;
	bottom:			80px;
	background-color:	#800;
	color:			#FFF;
	border-radius:		50px;
	text-align:		center;
	box-shadow:		2px 2px 3px #999;
	animation:		scale-in 0.75s;
}

@keyframes bot-to-top {
	from {transform: rotate(0deg);}
	to {transform: rotate(360deg);}
	0%   {bottom:-30px}
	90%  {bottom:80px}
}

@keyframes scale-in {
	from {transform: scale(0);opacity: 0;}
	to {transform: scale(1);opacity: 1;}
}
