/*
    Document: limetools.css
    Created on: 11.06.2012, 15:24:25
    Author: Andreas Hager
    Description: Contains the Style of the website.
    
    Eric Meyer: http://ericmeyer.com
    HTML5 Doctor: http://html5doctor.com
    HTML5 Boilerplate: http://html5boilerplate.com
*/

html,
body,
body div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
time,
mark,
audio,
video
{
	background: transparent;
	border: 0;
	font-size: 100%;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}									

article,
aside,
figure,
footer,
header,
hgroup,
nav,
section
{
	display: block;
}

html
{
	overflow-y: scroll;
}

ul
{
	list-style: none;
}

blockquote,
q
{
	quotes: none;
}

blockquote:before, 
blockquote:after, 
q:before, 
q:after
{
	content: '';
}

a
{
	background: transparent;
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

del
{
	text-decoration: line-through;
}

abbr[title],
dfn[title],
label[title]
{
	border-bottom: 1px dotted #000000;
	cursor: help;
}

table
{
	border-collapse: collapse;
	border-spacing: 0;
}

th
{
	font-weight: bold;
	vertical-align: bottom;
}

td
{
	font-weight: normal;
	vertical-align: top;
}

hr
{
	border: 0;
	border-top: 1px solid #cccccc;
	display: block;
	height: 1px;
	margin: 1em 0;
	padding: 0;
}

input,
select
{
	vertical-align: middle;
}

pre
{
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	word-wrap: break-word; /* IE */
}

input[type="radio"]
{
	vertical-align: text-bottom;
	margin: 5px 5px 0 0;
}

input[type="checkbox"]
{
	vertical-align: bottom;
}

a:hover, a:active
{
	outline: none;
}

small
{
	font-size: 85%;
}

strong,
th
{
	font-weight: bold;
}

td,
td img
{
	vertical-align: top;
}

sub,
sup
{
	font-size: 75%;
	line-height: 0;
	position: relative;
}

sup
{
	top: -0.5em;
}

sub
{
	bottom: -0.25em;
}

pre,
code,
kbd,
samp
{
	font-family: monospace, sans-serif;
}


.clickable,
label[for], 
input[type=button], 
input[type=submit], 
button
{
	cursor: pointer;
}

.button
{
	color: #000 !important;
	cursor: pointer;
	background: #eee;
	border: 1px solid #555;
	box-sizing: border-box;
	display: inline-block;
	padding: 6px 12px;
	text-align: center;
	text-decoration: none !important;
	vertical-align: middle;
}

.button:focus,
.button:hover,
.button:active
{
	background-color: #e6e6e6;
	border-color: #4d4d4d;
}

.button:active:hover
{
	 background-color: #d4d4d4;
	 border-color: #2c2c2c;
}

.button.disabled,
.button[disabled]
{
	cursor: not-allowed;
	filter: alpha(opacity=65);
	opacity: .65;
}

.button > img
{
	vertical-align: middle;
}

button,
input,
select,
textarea
{
	color: inherit;
	font: inherit;
	margin: 0;
}

button
{
	overflow: visible;
	text-transform: none;
	width: auto;
}

button::-moz-focus-inner,
input::-moz-focus-inner
{
	border: 0;
	padding: 0;
}

.clear
{
	clear: both;
	display: block;
	height: 0;
	line-height: 0;
	width: 0;
}


/* Redefining the global styles
-------------------------------------------------------------------------------*/

body
{
	color: #000000;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 0.75em;	/* 12/16=0.75 */
}

input,
select,
textarea
{
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 1em;
}

h1
{
	color: #01378d;
	font-size: 1.5em;	/* 18/12=1.5 */
	font-weight: bold;
	margin: 0 0 10px 0;
}

h2
{
	color: #01378d;
	font-size: 1.33em;	/* 16/12=1.33 */
	font-weight: bold;
	margin: 5px 0 10px 0;
}

h3
{
	color: #01378d;
	font-size: 1.17em;	/* 14/12=1.17 */
	font-weight: bold;
	margin: 5px 0 10px 0;
}

h4
{
	color: #01378d;
	font-weight: bold;
	margin: 5px 0;
}

p
{
	margin: 3px 0 16px 0;
}

ul.bulletlist,
section.description ul,
.mceContentBody ul
{
	list-style-type: disc;
	padding: 0 0 0 15px;
	margin: 3px 0 16px 0;
}

.mceContentBody .right ul
{
	direction: rtl;
	padding: 0 15px 0 0;
}

ol.bulletlist,
section.description ol,
.mceContentBody ol
{
	list-style-type: decimal;
	padding: 0 0 0 20px;
	margin: 3px 0 16px 0;
}

.mceContentBody .right ol
{
	direction: rtl;
	padding: 0 20px 0 0;
}


a,
a:link,
a:visited
{
	color: #01378d;
	text-decoration: none;
}

a:hover,
a:active,
a:focus
{
	text-decoration: underline;
}

a.extern
{
	background-image: url('../icon/new-window.png');
	background-position: right center;
	background-repeat: no-repeat;
	padding-right: 16px;
}

a.facebook
{
	background-image: url('../icon/facebook.png');
	background-position: right center;
	background-repeat: no-repeat;
	padding-right: 20px;
}

a.browser-ie,
a.browser-firefox,
a.browser-safari,
a.browser-opera,
a.browser-chrome
{
	display: inline-block;
	height: 33px;
	width: 33px;
}

a.browser-ie
{
	background: url('../images/browser_logos-32.png') no-repeat -142px 0px;
}

a.browser-firefox
{
	background: url('../images/browser_logos-32.png') no-repeat -37px 0px;
}

a.browser-safari
{
	background: url('../images/browser_logos-32.png') no-repeat -107px 0px;
}

a.browser-opera
{
	background: url('../images/browser_logos-32.png') no-repeat -73px 0px;
}

a.browser-chrome
{
	background: url('../images/browser_logos-32.png') no-repeat -1px 0px;
}

.userprofile
{
	background: transparent url('../icon/online-status.png') no-repeat;
	padding-left: 16px;
}

.userprofile.online
{
	background-position: -4px -16px;
}

.userprofile.offline
{
	background-position: -4px -32px;
}


/* Layout Helpers
-------------------------------------------------------------------------------*/

.black
{
	color: #000000;
}

.white,
a.white
{
	color: #ffffff;
}

.bold
{
	font-weight: bold;
}

.red,
.no-entry
{
	color: #ff0000;
}

.no-entry
{
	vertical-align: top;
}

.red-background,
table > tbody > .red-background > td
{
	background-color: #f2dede;
}

.green
{
	color: #00aa00;
}

.green-background,
table > tbody > .green-background > td
{
	background-color: #dff0d8;
}

.yellow-background,
table > tbody > .yellow-background > td
{
	background-color: #fcf8e3;
}

.grey
{
	color: #dbd8d8;
}

.disabled-background,
table > tbody > .disabled-background > td
{
	background-color: #dbd8d8;
	opacity: 0.5;
}

.splashline-blue
{
	color: #01378d;
}

.dark-blue
{
	color: #bad2ff;
}

.light-blue
{
	color: #eef4ff;
}

.big
{
	font-size: 1.33em;	/* 16/12=1.33 */
}

.hints
{
	background: transparent url('../images/placeholder.png');
	color: red;
	font-weight: bold;
	min-height: 40px;
	padding: 5px;
	text-transform: uppercase;
}

.icon-only
{
	text-indent: -99999px;
}

.helpful
{
	cursor: help;
}

.text
{
	cursor: text;
}

.borderless
{
	border: 0;
}

.block
{
	display: block;
}

.hide
{
	display: none;
}

.left
{
	text-align: left;
}

.center
{
	text-align: center;
}

.right
{
	text-align: right;
}

.wrap
{
	white-space: normal;
}

.nowrap
{
	white-space: nowrap;
}

.float-left
{
	float: left;
}

.float-right
{
	float: right;
}

.clear
{
	clear: both;
	display: block;
	height: 0;
	line-height: 0;
	width: 0;
}

.open
{
	background-image: url('../icon/toggle_minus.png');
	background-position: 0 -2px;
	background-repeat: no-repeat;
	padding: 0 0 0 20px;
}

.closed
{
	background-image: url('../icon/toggle_plus.png');
	background-position: 0 -2px;
	background-repeat: no-repeat;
	padding: 0 0 0 20px;
}

.delete-spacer
{
	padding: 0 7px;
}

.fullsize
{
	width: 100%;
}

.transparent
{
	background: transparent;
}

.row-spacing
{
	padding: 10px 0;
}

.row-spacing-bottom
{
	padding: 0 0 15px;
}

.icon-inactive
{
	filter: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="grayscale"><feColorMatrix type="matrix" values="0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0"/></filter></svg>#grayscale');
	filter: grayscale(1.0);
	filter: gray;
	opacity: 0.5;
}

.text-column3
{
	-webkit-column-count: 3;
	   -moz-column-count: 3;
	        column-count: 3;
}

#datepicker-inline
{
	min-height: 230px;
}


/* Layout of the Website
-------------------------------------------------------------------------------*/

body
{
	background-color: #dbd8d8;
}

div#javascript-problems,
div#browser-problems
{
	background: #feafaf url('../images/warning.png') no-repeat 5px 0px;
	border: 1px solid #ff0000;
	height: 43px;
	padding: 5px 70px;
}

div#wrapper
{
	background-repeat: repeat-x;
	padding-bottom: 20px;
}

header#header
{
	background-color: #01378d;
	border-bottom: 1px solid #bbbbbb;
	min-height: 67px;
}

div#logo
{
	float: left;
	height: 34px;
	margin: 12px 13px 0;
	width: 202px;
}

div#development-information
{
	float: left;
}

div#login-information
{
	float: right;
	color: #ffffff;
	margin: 12px 13px 0;
}

div#profile-picture
{
	background-color: #e0e0e0;
	border: 3px solid #ffffff;
	border-radius: 3px;
	float: right;
	margin: 0 0 5px 10px;
}

div#profile-picture.new
{
	border-color:#ff7e00;
}

div#profile-picture img
{
	display: block;
}

div#profile-information
{
	margin: 0 53px 0 0;
	text-align: right;
	white-space: nowrap;
}

div#login-information ul
{
	margin: 5px 0;
	white-space: nowrap;
}

div#login-information ul li
{
	border: 0;
	display: inline-block;
	font-size: 0.75em; /* 9/12=0.75 */
	padding: 0 0 0 5px;
}

div#login-information ul li:not(:last-child)
{
	border-right: 1px solid #ffffff;
	padding: 0 5px;
}

div#content-wrapper
{
	background-color: #ffffff;
	border-bottom: 1px solid #bbbbbb;
	display: table;
	padding: 0;
	width: 100%;
}

div#content-row
{
	display: table-row;
}

aside#content-left
{
	background-image: url('../images/sidebar-content-spacer-vertical.png');
	background-position: right top;
	background-repeat: repeat-y;
	display: table-cell;
	padding: 0 5px 10px 0;
	max-width: 212px;
	min-width: 212px;
	overflow: hidden;
	vertical-align: top;
	width: 212px; 
}

.search,
div#change-schoolyear
{
	background-color: #01378d;
	border-top: 1px solid #eef5de;
	height: 36px;
}

.search-inner
{
	background-color: #f7f7f7;
	background-image: url('../images/search.png');
	background-position: right center;
	background-repeat: no-repeat;
	border: 1px solid #bbbbbb;
	height: 25px;
	margin: 4px auto 0;
	width: 202px;
}

.search-input
{
	background-color: #f7f7f7;
	border: 0;
	height: 23px;	
	margin: 0 6px;
	width: 170px;
}

.ui-autocomplete
{
	max-height: 400px;
	overflow-y: auto;
	overflow-x: hidden;
}

.ui-autocomplete-category
{
	float: left;
	font-size: 1.17em;
    font-weight: bold;
    padding: .2em .4em;
    margin: .8em 0 .2em;
}

div#change-schoolyear-inner
{
	margin: 8px auto 0;
	vertical-align: middle;
	white-space: nowrap;
	width: 202px;
}

div#change-schoolyear-inner select
{
	border: 0;
	display: inline-block;
	height: 20px;
	position: relative;
	vertical-align: top;
	width: 163px;
}

div#change-schoolyear-inner button
{
	border: 0;
	display: inline-block;
	height: 20px;
	position: relative;
	vertical-align: top;
}

nav#main-navigation
{
	border-bottom: 1px solid #bbbbbb;
	padding: 5px 0 0;
}

ul.main-navigation-list-level-0
{
	border-top: 1px solid #bbbbbb;
}

ul.main-navigation-list-level-0 > li
{
	background-image: url('../images/navigation-bg.png');
	background-repeat: repeat-x;
	font-size: 1.33em; /* 16/12=0.75 */
	font-weight: bold;
	margin: 0;
	padding: 0;
}

ul.main-navigation-list-level-0 > li > a
{
	display: block;
	height: 21px;
	padding: 7px 15px;
}

ul.main-navigation-list-level-0 > li > a.expanded
{
	background-image: url('../images/navigation-expand-level0.png');
	background-position: right top;
	background-repeat: no-repeat;
}

ul.main-navigation-list-level-0 > li > a.collapsed
{
	background-image: url('../images/navigation-collapse-level0.png');
	background-position: right top;
	background-repeat: no-repeat;
}

ul.main-navigation-list-level-1
{
	padding: 0;
}

ul.main-navigation-list-level-1 > li
{
	background-color: #eef4ff;
	font-size: 0.875em; /* 14/16=0.875 */
	font-weight: bold;
	text-transform: none;
}

ul.main-navigation-list-level-1 > li > a
{
	border-bottom: 3px solid #ffffff;
	color: #666666;
	display: block;
	height: 18px;
	padding: 8px 15px 4px;
}

ul.main-navigation-list-level-1 > li > a.closed
{
	background-image: url('../images/navigation-collapse-level1.png');
	background-position: right top;
	background-repeat: no-repeat;
}

ul.main-navigation-list-level-1 > li > a.open
{
	background-image: url('../images/navigation-expand-level1.png');
	background-position: right top;
	background-repeat: no-repeat;
}

ul.main-navigation-list-level-2
{
	background-color: #ffffff;
	padding: 0 0 15px;
}

ul.main-navigation-list-level-2 > li
{
	font-size: 1em; /* 14/14=1 */
	font-weight: normal;
	text-transform: none;
}

ul.main-navigation-list-level-2 > li > a
{
	display: block;
	color: #666666;
	padding: 4px 18px 2px;
}

ul.main-navigation-list-level-2 > li.active > a
{
	font-weight: bold;
}

section#content
{
	display: table-cell;
	padding: 20px 20px 35px 25px;
	vertical-align: top;
}

footer#footer
{
	clear: both;
	text-align: center;
}

ul#footer-navigation-list
{
	margin: 12px 13px;
}

ul#footer-navigation-list li
{
	border-right: 1px solid #01378d;
	display: inline;
	padding: 0 10px;
}

ul#footer-navigation-list li.last
{
	border: 0 none;
}

div#school-year-info-box
{
	background-color: #01378d;
	border-radius: 5px;
	border-top: 1px solid #bbbbbb;
	bottom: 5px;
	color: #ffffff;
	font-size: 1.3333333333333333333333333333333em; /* 16/12 = 1.3333333333333333333333333333333 */
	font-weight: bold;
	left: 5px;
	padding: 6px;
	position: fixed;
	width: 190px;
	z-index: 20;
}


/* Tables
-------------------------------------------------------------------------------*/

table
{
	border: 1px solid #000000;
	border-collapse: separate;
	border-spacing: 2px;
}

table.mceLayout, table.mceLayout *
{
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	max-width: none;
	min-width: 0;
	width: auto;
}

caption
{
	font-size: 14px;
	font-weight: bold;
	margin: 5px 0px;
	text-align: left;
}

table tr th,
table tr td
{
	padding: 5px;
	min-height: 16px;
	vertical-align: middle;
}

table thead
{
	border: 1px solid #000000;
}

table thead tr th,
table thead tr td,
table tr.header th,
table tr.header td,
table tr.subheader th,
table tr.subheader td
{
	background-color: #bad2ff;
	text-align: left;
	word-break: break-all;
}

table tr.subheader td
{
	background-color: #d0e0ff;
}

table.statistic thead tr th
{
	word-break: normal;
}

table tfoot tr th,
table tfoot tr td
{
	background-color: #bad2ff;
	font-size: 85%;
}

.odd,
table > .odd > td,
table:not([class*="mce"])  > tbody > tr:nth-child(odd):not([class*="header"]):not([class$="-background"]) > td
{
	background-color: #ffffff;
}

.even,
table > .even > td,
table:not([class*="mce"]) > tbody > tr:nth-child(even):not([class*="header"]):not([class$="-background"]) > td
{
	background-color: #eef4ff;
}

table tr.hover td,
table tr.hoverclick td
{
	background-image: url('../images/td-hover.png');
	background-repeat: repeat;
}

table tr.controls td
{
	background-color: #e2e5ef;
	caption-side: bottom;
	padding: 5px;
	min-height: 16px;
}

table tr.separator,
table tr.separator td
{
	border-top: 1px solid #000000;
}

table tr.new-message,
table tr.new-message td
{
	font-weight: bold;
}

table tr td.icon
{
	max-width: 16px;
	min-width: 16px;
	overflow: hidden;
	width: 16px;
}

table tr td.ranking
{
	max-width: 40px;
	min-width: 40px;
	overflow: hidden;
	text-align: center;
	width: 40px;
}

table tr td.action
{
	min-width: 90px;
	overflow: hidden;
	white-space: nowrap;
}

table tr.level-0 td.navigation-information
{
	font-weight: bold;
	text-transform: uppercase;
}

table tr.level-1 td.navigation-information,
table tr.level-1 td.file-information
{
	padding: 0 0 0 20px;
}

table tr.level-1 td.navigation-information
{
	font-weight: bold;
}

table tr.level-2 td.navigation-information,
table tr.level-2 td.file-information
{
	font-weight: normal;
	padding: 0 0 0 40px;
}

table#files tr.folder td
{
	background-color: #fef3a9;
}

table#files tr.file td
{
	background-color: #eef4ff;
}


/* Widget
-------------------------------------------------------------------------------*/

.widget-wrapper
{
	margin-left: -9px;
	margin-right: -9px;
}

.widget-column
{
	float: left;
}

.two-widgets
{
	width: 48%;
}

.three-widgets
{
	width: 31%;
}

.widget-column
{
	padding: 0 9px;
}

article.widget
{
	border: 1px solid #01378d;
	padding: 1px;
	margin: 0 0 18px;
}

header.widget-header
{
	background-color: #89b7d9;
	border-bottom: 1px solid #01378d;
	color: #ffffff;
	font-weight: bold;
	padding: 5px 15px;
}

header.widget-header h2
{
	color: #ffffff;
	font-size: 1em;	/* 12/12=1 */
	font-weight: bold;
	margin: 0;
}

div.widget-content
{
	padding: 10px 15px;
}

footer.widget-footer
{
	background-color: #89b7d9;
	border-top: 1px solid #01378d;
	padding: 10px 15px;
}

footer.widget-footer div.pagination-controls
{
	float: none;
}


/* Activities
-------------------------------------------------------------------------------*/

div.activity-column
{
	width: 49%;
}

div.activity
{
	clear: both;
	background: #d0e0ff;
	border: 1px solid #01378d;
	margin: 0 0 1px;
	padding: 3px;
}

div.activity.open
{
	background: #ffebeb;
}

div.activity.done
{
	background: #ebffeb;
}

div.activity.last
{
	background-color: #e2e2e2;
}

div.activity.direct
{
	background: #f8d660;
}

div.activity.inherit
{
	background: #fff196;
}

div.activity.none
{
	background: #fdf9e6;
}

div.activity.none > h4,
div.activity.none > small
{
	color: #c0c0c0;
}

div.activity-money
{
	display: inline-block;
	width: 90px;
}

/* Messages
-------------------------------------------------------------------------------*/
div.messages
{
	border-spacing: 0 15px;
	display: table;
}

div.message-box
{
	display: table-row;
	margin: 0 0 10px;
}

div.message-sending-information
{
	display: table-cell;
	vertical-align: top;
	width: 110px;
}

img.sender-profile-picture
{
	border: 1px solid #c0c0c0;
	border-radius: 3px;
	box-shadow: 0 0 6px #c0c0c0;
}

div.message
{
	display: table-cell;
	background-color: #eef4ff;
	border: 1px solid #01378d;
	border-radius: 10px;
	box-shadow: 0 2px 5px #01378d;
	margin: 0;
	min-height: 50px;
	padding: 5px 10px;
}

div.message.opponent
{
	background-color: #fffc6f;
	border: 2px solid #dadc9b;
	box-shadow: -2px 2px 5px #dadc9b;
	margin: 0 110px;
}

div.message.own
{
	background-color: #70a2ff;
	border: 2px solid #7a8db6;
	box-shadow: 2px 2px 5px #7a8db6;
	margin: 0 110px;
}

div.arrow-opponent,
div.arrow-own
{
	border-style: solid;
	border-width: 15px;
	height: 0;
	margin: 9px 0;
	width: 0;
}

div.arrow-opponent
{
	float: right;
	border-color: transparent #dadc9b transparent transparent;
}

div.arrow-own
{
	float: left;
	border-color: transparent transparent transparent #7a8db6;
}


/* Forms
-------------------------------------------------------------------------------*/

fieldset
{
	border-top: 1px solid #01378d;
	margin: 20px 0;
}

legend
{
	font-size: 1.16em; /* 14/12=1.16 */
	font-weight: bold;
	margin: 10px 25px;
	padding: 0 5px;
}

div.error-wrapper
{
	background-color: #ffcccc;
	border: 1px solid #ff3333;
	margin: 8px 0 18px;
	padding: 10px 30px;
}

div.formbox div.error-wrapper
{
	margin: 8px 8px 18px;
}

ul.error-section
{
	list-style-type: none;
	padding: 0;
}

.input ul.error-section li
{
	color: #ff3333;
}

ul.error
{
	padding: 0px 0px 0px 25px;
}

ul.error li
{
	color: #ff3333;
	font-size: 9px;
	padding: 5px 0px 0px;
}

.success,
div.error-wrapper.success
{
	background-color: #d1ffcf;
	border: 1px solid #38e144;
	padding: 10px 30px;
}

div.formbox
{
	border: 1px solid #01378d;
	display: inline-block;
	padding: 1px;
}

div.formheadline
{
	background-color: #89b7d9;
	border-bottom: 1px solid #01378d;
	color: #ffffff;
	font-weight: bold;
	padding: 5px 15px;
}

div.formelements
{
	width: 100%;
}

div.formbuttons
{
	background-color: #89b7d9;
	border-top: 1px solid #01378d;
	padding: 10px 15px;
}

div.row
{
	clear: both;
    padding: 10px 0;
    min-height: 26px;
}

div.label
{
	float: left;
    padding: 6px 5px;
    text-align: right;
    width: 230px;
}

div.label > label[for]
{
	line-height: 21px;
}

div.input
{
	margin-left: 250px;
	padding: 6px 5px;
    text-align: left;
}

div.hide
{
	display: none;
}

label.required
{
	background-image: url('../icon/asterisk-blue.png');
	background-position: right top;
	background-repeat: no-repeat;
	padding-right: 12px;
}

input:not(.borderless):not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"])
{
	border-bottom: 1px solid #e2e3ea;
	border-left: 1px solid #e2e3ea;
	border-right: 1px solid #e2e3ea;
	border-top: 1px solid #abadb3;
}

.has-error input:not(.borderless):not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.has-error textarea,
.has-error select
{
	border-bottom: 1px solid #ff3333;
	border-left: 1px solid #ff3333;
	border-right: 1px solid #ff3333;
	border-top: 1px solid #ff3333;
}

input.defwidth
{
	height: 23px;
    padding: 0 8px;
    width: 290px;
}

select.defwidth
{
	height: 23px;
    padding: 0 8px;
	width: 306px;
}

.moneywidth
{
	width: 80px;
}

textarea.defwidth
{
	height: 200px;
	width: 300px;
}

textarea.defwidth.autoresize
{
	height: 80px;
}

textarea.defwidth.tiny_mce,
textarea.defwidth.tiny_mce_simple
{
	height: 300px;
}

textarea.defwidth.tiny_mce_simple
{
	width: 335px;
}

select[multiple="multiple"]
{
	height: 100px;
}

select.twosidedmultiselect
{
 	min-width: 600px;
	height: 400px;
}

input:required:invalid, input:focus:invalid
{
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAp5JREFUeNp0U1tIFFEY/mbWMkRBd3UXQxNzFSlWlMWE0i3LLKKEfMygl6CMHTYfEguMqNCwh7Zm0oQgeughAkOMKLObZkFQVIRFdnETzJx1V3G3XWfn0jmDszhhh/nmv3z/95/hP3OY2NANLF/DTZzTc4v/ihXWShxrOM+aOAuBP9WRM07tv+L/caymaqAgD7+2zuNzn/bCVlnue3KA8xsc8Xl7TZXOUUviboNL0RQVjw+18Hnbq5sLPKWIjfahZL+HNvQNHfTRTSy5NVXeonq3zjl3V1OumXDKjpuXOOauPcOZZs8edx9tgDT2cum7WKS6tuJz/ygsq1eheJcbix9fgGyp06kuD15fuYP4bLiAme+/hkeHT/C2vAzv+goHGAbJJmvKawFVQfz9cFKsacC3N78RmloQdl6/yDGhvm6dGDzSxtty072FLpupCTSYxR+CCE9HhfreC5xeosoqKOqudnAzUxFh/J2IREyGHCf4I0GOSbpPc1/eigj+igq01tCl0JexZDBgbblISFHiqaZj1EiGsdohiwFluYZVSEBxj2vnHRVlXmdtJeRFsmPcDEVSUVK/BTllG3yk1m/oWJUc40DLGb+9wuUtqipF6PkD8smSqYnuxxYRfnofxZvLSJONPqLhqZbpsWYWplkzv29qrMXcyEMy9aWBEQSmE2DJRPMdKTDmyrAWZG3bg1e3BxGbmy9gAr1dGDjZ4bemW3x52YxeSMWTQRXhiCpQUVY6683PZpNNJmdVhBZUYV/nKY6lf+Le823HRVI8MaNClhRQG4xoAslzFNSfEAmXUBAQFYgLWg/NU23yLjScbeVmo9rlsWmAWhqbONLkE+HECAQSHzM45ofQaTquvvaudY3nWn+udJ0J5ySc6Tr/FWAAWrOVmqP8y7MAAAAASUVORK5CYII=');
	background-position: right 2px center;
	background-repeat: no-repeat;
}

input:required:valid
{
	background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAiVJREFUeNpi/P//PwMlgIlUDS2ro4SAmJksAxqXh+WwMLK+/ff37x8g2wkkxkisF2oWBeZzsfNM8DKNZvj47S3D3gvrGf79++sJd0HZbG82XJqBcvksDGwT3I3CGN5/vs3AyvSLwUk3gOHv77/bwQYUTHGtA3J+gmggRjEIyM9nYWSb4GEazvDi/TWG919eA+n7DA9fXmH48eMnA/Mrnr0VwrziLSGOqQx/fv9yfPryvv7WY/M/eFsl3cnqsc1nZ+Gc4GMVzfD8/WWGL9/fM/z+84vh+evnDJdvXQaq/23LmNpq8T/MPZXh8ZsLDNIiWgzfv/9h2HVsDcOPX98qebj42v0d4xievLnI8P3XZ7CL3r5/z3Dv4SMGYNjZzq05dYRZw1Lw572nV13YuZgZXn98xMAEjCBzHXeGT18+utibeDHcfXESGGhvGH4BbX7x+jXDnbsPGH4DbV7YcO4IPBZCStS7eHi4ShWUpRiYmJgYONh4GNRlzBnuPDvD8PXHR7DNH95/Znj88AXY5jU9N4/AwggejX458l3cPJylssriYEOQwcf3XxiePXwN1rxpysMjyHIo6cAjVbKLi5ezVFpJhIGRiREs9vn9V4YXD9+BNe+Y/fwIehRjJCSnOOFeLl6OIillIYYvH38wvHzwHqx536K3R7ClEawp0TaSr5edi63o1/ffIM0Oh5d/OogziYIMwIYtQzgNgJgZlzwMM1KanQECDABGPi0ENq7EYAAAAABJRU5ErkJggg==');
	background-position: right 2px center;
	background-repeat: no-repeat;
}

.info-text,
.inline-label
{
	padding-left: 10px;
}

.info-text-block
{
	font-size: 83.333333333333333333333333333333%;
	margin-bottom: 10px;
}

.input > .info-text-block
{
	margin-bottom: 0;
}

p.captcha-text
{
	font-size: 10px; 
	line-height: 12px;
	margin: 0;
	padding: 3px 0px;
}

/* Filter, Sort, Pagination
-------------------------------------------------------------------------------*/

div.table-wrapper
{
	margin: 0 0 20px;
}

div.table-wrapper table
{
	border: 1px solid #000000;
}

div.pagination-controls
{
	float: right;
	font-size: 10px;
	padding: 2px 5px 0px;
	text-align: right;
}

div.pagination-controls span
{
	padding: 1px 5px 0px;
}

div.pagination-controls select, div.pagination-controls input
{
	font-size: 100%;
	width: 30px;
}

div.pagination-controls input
{
	text-align: right;
}

div.pagination-controls select
{
	height: 18px;
	width: 48px;
}

a.pagination-left, a.pagination-right
{
	display: inline-block;
	height: 16px;
	vertical-align: middle;
	width: 16px;
}

a.pagination-left
{
	background-image: url('../icon/pagination_left.png');
	margin-right: 3px;
}

a.pagination-right
{
	background-image: url('../icon/pagination_right.png');
}

div.inline-filter-controls
{
}

div.filter-controls
{
	float: left;
	padding: 2px 5px;
	position: relative;
	text-align: left;
	z-index: 1;
}

div.inline-filter-controls form,
div.filter-controls form
{
	margin: 0;
	padding: 0;
}

div.inline-filter-controls a,
div.filter-controls a
{
	font-weight: bold;
}

div.inline-filter-controls span,
div.inline-filter-controls label,
div.filter-controls span,
div.filter-controls label
{
	font-weight: normal;
}

div.inline-filter-controls select,
div.inline-filter-controls input,
div.filter-controls select,
div.filter-controls input
{
	font-size: 100%;
	width: 100px;
}

div.inline-filter-controls select,
div.filter-controls select
{
	height: 18px;
}

div.inline-filter-controls input.submit,
div.filter-controls input.submit
{
	margin-right: 10px;
	width: 60px;
}

div.advanced-inline-filter-controls,
div.advanced-table-filter-controls
{
	clear: both;
	padding: 10px 5px;
}

div.advanced-table-filter-controls
{
	background-color: #ffffff;
	border-bottom: 1px solid #000000;
	border-left: 1px solid #000000;
	border-right: 1px solid #000000;
	border-top: 1px solid #bbbbbb;
	display: none;
	left: -1px;
	padding: 10px;
	position: absolute;
	top: 22px;
	width: 550px;
	z-index: 2;
}

.space
{
	margin-right: 20px;
}

div.advanced-inline-filter-controls fieldset,
div.advanced-table-filter-controls fieldset
{
	border: 1px solid #a5acb2;
	margin: 0px 0px 10px;
	padding: 5px;
}

div.advanced-inline-filter-controls select,
div.advanced-table-filter-controls select
{
	width: 150px;
}

div.advanced-inline-filter-controls fieldset a,
div.advanced-table-filter-controls fieldset a
{
	float: right;
	margin: 3px 15px 3px 0px;
}

div.filter-controls span.advanced-filter-info
{
	color: #999999;
	font-weight: bold;
	margin-right: 20px;
}

span.advanced-filter-info span.active
{
	color: #ff3333;
	font-weight: bold;
	padding: 0px 5px;
	text-transform: uppercase;
}

div.sort-controls
{
	float:right;
	padding: 2px 5px 2px 15px;
	position: relative;
	text-align: right;
	width: 16px;
	z-index: 1;
}

div.inline-sort-controls a,
div.sort-controls a
{
	font-weight: bold;
}

div.inline-sort-controls fieldset,
div.sort-controls fieldset
{
	border: 1px solid #a5acb2;
	margin: 0px 0px 10px;
	padding: 5px;
	text-align: left;
}

div.inline-sort-controls select,
div.inline-sort-controls input,
div.sort-controls select,
div.sort-controls input
{
	font-size: 100%;
}

div.inline-sort-controls fieldset a,
div.sort-controls fieldset a
{
	float: right;
	margin: 3px 15px 3px 0px;
}

div.sort-controls-dropdown
{
	background-color: #ffffff;
	border-bottom: 1px solid #000000;
	border-left: 1px solid #000000;
	border-right: 1px solid #000000;
	border-top: 1px solid #bbbbbb;
	display: none;
	right: -1px;
	padding: 10px;
	position: absolute;
	top: 23px;
	width: 400px;
	z-index: 2;
}


/* Tooltips
-------------------------------------------------------------------------------*/
.tooltip
{
	border-bottom: 1px dotted #000000;
	outline: none;
	cursor: help;
	padding: 0 7px;
	position: relative;
	text-decoration: none;
}

.tooltip > span
{
	color: #000000;
	margin-left: -999em;
	position: absolute;
	text-align: left;
}

.tooltip:hover > span,
.tooltip:focus > span,
.tooltip:active > span
{
	background: #ffffaa;
	border: 1px solid #ffad33;
	border-radius: 0 5px 0 5px;
	box-shadow: 5px 5px 5px;
	margin-left: 0;
	opacity: 0.8;
	padding: 0.8em 1em;
	position: absolute;
	right: 20px;
	z-index: 99;
}

.tooltip:hover > span img.type
{
	position: absolute;
	right: -10px;
	bottom: -10px;
	z-index: 100;
}

.tooltip:hover > span.classic
{
	background: #ffffaa;
	border: 1px solid #ffad33;
}

.tooltip:hover > span.critical
{
	background: #ffccaa;
	border: 1px solid #ff3334;
	opacity: 1;
	padding-right: 45px;
}

.tooltip:hover > span.help
{
	background: #9fdaee;
	border: 1px solid #2bb0d7;
	padding-right: 45px;
}

.tooltip:hover > span.info
{
	background: #9fdaee;
	border: 1px solid #2bb0d7;
	padding-right: 45px;
}

.tooltip:hover > span.warning
{
	background: #ffffaa;
	border: 1px solid #ffad33;
	padding-right: 45px;
}

div.ui-cluetip
{

}

.ui-cluetip-header,
.ui-cluetip-content
{
  padding: 12px;
}

.ui-cluetip-header
{
	margin: 0;
}

.cluetip-title .cluetip-close
{
}

.cluetip-close img
{
	float: right;
}

#cluetip-waitimage
{
	background-image: url('../images/wait.gif');
	height: 11px;
	position: absolute;
	width: 43px;
}

.cluetip-arrows
{
}

.cluetip-extra
{
	display: none;
}


/* Media-Queries
-------------------------------------------------------------------------------*/

/* ==|== Smartphones (portrait and landscape) up to iPads == */
@media only screen and (max-width: 480px), (max-width: 768px)
{
	/* ==|== Layout of the Website == */
	body
	{
		min-width: 320px;
	}
	
	header#header
	{
	}
	
	div#logo
	{
		float: none;
		margin: 0;
	}
	
	div#development-information
	{
		float: none;
	}
	
	div#login-information
	{
		float: none;
	}
	
	div#profile-information
	{
		text-align: left;
	}
	
	div#login-information ul
	{
		text-align: left;
	}
	
	div#login-information ul li,
	div#login-information ul li:not(:last-child)
	{
		border: 0 none;
		display: block;
		padding: 5px 0;
	}
	
	div#content-wrapper,
	div#content-row,
	aside#content-left,
	section#content
	{
		display: block;
	}
	
	aside#content-left
	{
		background-image: url('../images/sidebar-content-spacer-horizontal.png');
		background-position: left bottom;
		background-repeat: repeat-x;
		max-width: none;
		min-width: 0;
		padding: 0 0 10px;
		width: auto;
	}
	
	.search-inner,
	div#change-schoolyear-inner
	{
		margin: 4px 10px 0;
	}
	
	section#content
	{
		padding: 20px 5px 35px;
		vertical-align: top;
	}
	
	footer#footer
	{
		text-align: left;
	}
	
	ul#footer-navigation-list li
	{
		border: 0 none;
		display: block;
		padding: 10px 0;
	}
	
	div#school-year-info-box
	{
		border-radius: 0;
		bottom: 0;
		left: 0;
		width: 100%;
	}
	
	
	/* ==|== Widgets == */
	.widget-column,
	.two-widgets,
	.three-widgets
	{
		float: none;
		width: auto;
	}
	
	
	/* ==|== Forms == */
	fieldset
	{
		border-top: 1px solid #5a84c6;
		margin: 15px 0;
		padding: 15px 0;
	}
	
	div.formbox
	{
		display: block;
	}
	
	div.label
	{
		float: none;
		padding-bottom: 0;
		text-align: left;
		width: 90%;
	}
	
	div.input
	{
		float: none;
		margin-left: 0;
	}
	
	input.defwidth,
	select.defwidth
	{
		width: calc(90% - 12px);
	}
	
	textarea.defwidth
	{
		width: 90%;
	}
	
	textarea.defwidth
	{
		height: auto;
	}
}

/* ==|== iPads (portrait and landscape) == */
@media only screen and (min-width : 768px) and (max-width : 1024px), (max-width : 1224px)
{
	/* ==|== Layout of the Website == */
	div.table-wrapper table
	{
		min-width: 0;
	}
	
	
	/* ==|== Widgets == */
	.two-widgets,
	.three-widgets,
	.widget-column
	{
		float: none;
		width: auto;
	}
	
	
	/* ==|== Forms == */
	div.formelements
	{
		min-width: 0;
	}
}

/* ==|== Desktops and laptops == */
@media only screen and (min-width : 1224px) and (max-width : 1400px)
{
	/* ==|== Layout of the Website == */
	div.table-wrapper table
	{
		min-width: 950px;
	}
	
	/* ==|== Widgets == */
	.two-widgets,
	.three-widgets,
	.widget-column
	{
		float: none;
		width: auto;
	}
}

/* ==|== Large screens == */
@media only screen and (min-width : 1824px)
{
	/* ==|== Layout of the Website == */
	div.table-wrapper table
	{
		min-width: 1500px;
	}
}


/* ==|== CSS DEFINITIONEN FÜR M24 == */

.splashline-de header#header
{
	background-color: #ed008c;
}

.splashline-de .search,
.splashline-de div#change-schoolyear,
.splashline-de div#school-year-info-box
{
	background-color: #ed008c;
}
