@font-face {
    font-family: 'Roboto';
    src: url('/cm/cpfont/Roboto-Light.woff2') format('woff2'),
        url('/cm/cpfont/Roboto-Light.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Roboto';
    src: url('/cm/cpfont/Roboto-LightItalic.woff2') format('woff2'),
        url('/cm/cpfont/Roboto-LightItalic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Roboto';
    src: url('/cm/cpfont/Roboto-Regular.woff2') format('woff2'),
        url('/cm/cpfont/Roboto-Regular.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Roboto';
    src: url('/cm/cpfont/Roboto-Italic.woff2') format('woff2'),
        url('/cm/cpfont/Roboto-Italic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}
/* 10 */
.termin {
	font-size: 10px;
	line-height: 140%;
}
/* 11 */
.kl, .nav_dat {
	font-size: 12px;
	line-height: 140%;
}
/* 12 */
input[type=submit], h6, .m, .termin_t, .help, #infoframe div {
	font-size: 12px;
	line-height: 140%;
}
/* 13 */
input, textarea {
	font-size: 13px;
	line-height: 140%;
}
/* 14 */
body, table, .table th.tt, .fehlermeldung h2, .fehlermeldung p, .fehlermeldung , .fehlermeldung a:visited, select {
	font-size: 14px;
	line-height: 140%;
}
/* 16 */
.titel, .fehlermeldung h1 {
	font-size: 16px;
	line-height: 140%;
}
/* 18 */
h1, .gr {
	font-size: 18px;
	line-height: 140%;
}
/* font */
body, input, textarea {
	font-family: Roboto, Arial, Helvetica, Verdana;
}
th {
	font-family: Roboto, Arial, Helvetica, Verdana;
}
/* margin */
body, form, table, h1, .nolink, .move, .moving, .bereichstrenner, .listentrenner, .leertrenner, .listentrenner_l, .listentrenner_v, .sort a, .sort a:visited {
	margin: 0;
	padding: 0;
}
body {
	color: #000;
	background-color: #fff;
	text-align: center;
	width: 100%;
	height: 100%;
}
table {
	border-collapse: collapse;
}
form {
	background-color: transparent;
	z-index: 500;
}
input {
}
input[type=text] {
	
}
input[type=submit] {
	margin-right: 5px;
	margin-left: 5px;
	color: #000;
	background: #fff;
	z-index: 10;
	padding: 3px 5px;
	border-style: none;
	cursor: pointer;
}
textarea {
	width: 97%;
	margin: 0;
}
select {
}
td img {
	padding-right: 5px;
	padding-left: 5px;
	border-style: none;
	outline-style: none;
}
h1 {
	color: #000;
}
h6 {
	color: #000;
}
.leftframe {
	position: absolute;
	top: 20px;
	left: 10px;
	bottom: 0;
	height: 100%;
	float: left;
	margin-top: 20px;
	padding-right: 10px;
	padding-left: 10px;
}
.space {
	padding-right: 15px;
	padding-left: 15px;
}
.rahmen {
	border: solid 1px #999;
	border-radius: 4px;
}
.bilderframe {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 360px;
	height: 100%;
	border-style: none;
}
.senkr {
	transform: rotate(-90deg);
	display: inline-block;
}
/*fonts*/
body, input[type=text], textarea {
	font-family: Roboto, Arial, Helvetica, Verdana;
}
/*links*/
a {
	color: #0066cc;
	text-decoration: none;
	outline-style: none;
}
.link {
	color: #000;
	text-decoration: none;
	background-color: #e3e3e8;
	padding: 1px 3px;
	border: solid 1px #656581;
}
.link_b {
	color: #000;
	line-height: 100%;
	background-color: #69f !important;
	margin-left: 10px;
	padding: 2px 4px;
}
.link_gr {
	color: #000;
	line-height: 100%;
	background-color: #61d861 !important;
	float: right;
	margin-left: 10px;
	padding: 2px 4px;
}
.link_y {
	color: #000;
	line-height: 100%;
	background-color: #ff6 !important;
	margin-left: 10px;
	padding: 2px 4px;
}
.javalink {
	color: #000;
	line-height: 100%;
	text-decoration: none;
	background-color: #e3e3e8;
	width: auto;
	padding: 1px 2px 2px;
	border: solid 1px #656581;
	cursor: pointer;
}
.nolink {
	background-color: transparent !important;
	border-style: none !important;
}
.alink {
	background-color: transparent !important;
	position: absolute;
	width: 1px;
	height: 1px;
	border-style: none !important;
}
.move {
	width: 17px;
	height: 17px;
	display: inline-block;
	background: #9cf;
	background-image: url(cpimages/sort.svg);
	cursor: pointer;
}
.moving {
	width: 17px;
	height: 17px;
	display: inline-block;
	background-color: #69f !important;
	background-image: url(cpimages/sort_dn.svg) !important;
}
.moving:hover {
	width: 17px;
	height: 17px;
	display: inline-block;
	background-color: #508aff !important;
	background-image: url(cpimages/sort_ov.svg) !important;
}
a.copy, a.copy:visited {
	color: #900;
	font-weight: bold;
	background-color: #ffff2e;
	text-decoration: none;
	padding: 0 2px;
	border: solid 1px #656581;
}
.table th a, .table th a:visited, .link {
	color: #000;
	text-decoration: none;
	background-color: #eee;
	padding: 1px 3px;
	border: solid 1px #ccc;
}
.anker {
	position: absolute;
	top: -75px;
}
/*farben*/
.tabelle {
	text-align: left;
	margin: 5px auto 0;
	border: 1px solid #999;
	background-color: white !important;
}
.table {
	text-align: left;
	margin: 5px auto 0;
	outline: ridge 1px #999;
	border: 1px solid #999;
}
.table th, .titel {
	background: #eeeeee;
	background: linear-gradient(to bottom, #eeeeee 0%, #dddddd 66%, #cccccc 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#cccccc',GradientType=0 );
	color: #000;
	border-bottom: 1px solid #999;
	font-weight: normal;
	white-space: nowrap;
	padding: 2px 3px;
	vertical-align: top;
}
.table th.t {
	background: #eeeeee;
	border-bottom-style: none;
}
.table th.tt {
	font-weight: bold;
	text-align: center;
}
.table tr {
	background: #eeeeee;
}
.table tr.ttermin {
	background-color: #ffd2d0;
}
.table tr.taktuell {
	background-color: #fef7e1;
}
.table td {
	color: #000;
	vertical-align: top;
	padding: 3px;
	border-bottom: 1px solid #cacad4;
	position: relative;
	white-space: normal;
}
.table .notr {
	border-bottom-style: none !important;
}
.table .hell {
	color: #000;
	background: #efefef;
}
/*allgemeine formatierungen*/
.b {
	font-weight: bold !important;
}
.i {
	font-style: italic;
}
.l {
	text-align: left !important;
}
.c {
	text-align: center !important;
}
.r {
	text-align: right !important;
}
.o {
	vertical-align: top !important;
}
.dg {
	text-decoration: line-through;
}
.f0 {
	background-color: #d8afbe;
	text-decoration: line-through;
}
.f2 {
	background-color: #afaf7c;
}
.f3 {
	background-color: #afdbbe;
}
.nl {
	background-color: #cdcc78;
}
.nobr {
	white-space: nowrap;
}
.rot {
	color: #900 !important;
}
.gruen {
	color: #060 !important;
}
.hinweis {
	background-color: #ffff91 !important;
	background-image: none;
}
.titel {
	text-align: center;
	width: auto;
}
.hilfe {
	display: inline-block;
	margin: 0;
	cursor: pointer;
	color: #ff8566;
	padding: 0 2px;
}
/*liste/tabelle*/
.liste tr {
	z-index: 0;
}
.liste tr td.btn {
	z-index: 10;
}
.liste tr:hover {
	cursor: pointer;
}
.liste tr:hover, .liste tr:hover td {
	background-color: #ffdfba !important;
}
.list tr:hover, .list tr:hover td {
	background-color: #ffdfba !important;
}
.titelleiste {
	color: #feffff;
	background-color: #32325a;
	vertical-align: top;
	padding: 3px;
	border-bottom: 1px solid #003;
	white-space: nowrap;
}
.tabllenspalte, .tabllenspalten td {
	border-left: 1px solid #afafbe;
}
/*tabellenformatierung
*/
.nav_dat {
	font-weight: normal;
	margin: 4px auto;
}
.nav_dat a {
	color: #000;
	font-weight: bold;
	background-color: #cacad4;
	width: 10px;
	cursor: pointer;
	padding: 0 3px;
	border: solid 1px #656581;
}
.btn {
	text-align: center;
	vertical-align: middle !important;
	padding: 2px;
	cursor: auto;
	white-space: nowrap;
}
.btn_l {
	text-align: left;
	cursor: auto;
	padding: 2px;
	vertical-align: middle;
	white-space: nowrap;
}
.btn_r {
	text-align: right;
	cursor: auto;
	padding: 2px;
	vertical-align: middle;
	white-space: nowrap;
}
.top {
	vertical-align: top !important;
}
.bottom {
	vertical-align: bottom;
}
/**/
.tabelle {
	background-color: #afafbe;
	text-align: left;
	margin: 5px auto 0;
	outline: ridge 1px #003;
}
.tabellenreihe {
	background-color: #afafbe;
	text-align: left;
	float: left;
	margin-top: 5px;
	margin-right: 10px;
	border: ridge 1px #003;
}
.titelleiste_warn {
	color: #c30;
	font-weight: bold;
	text-align: center;
	padding: 3px;
	vertical-align: top;
	border-bottom: 1px solid #003;
}
.liste_tab {
	font-weight: normal;
	vertical-align: top;
	padding: 3px;
}
.liste_inakt {
	color: #646472;
	font-weight: normal;
	background-color: #cecee0;
	padding: 3px;
	border-right: 1px solid #cacad4;
	border-bottom: 2px solid #cacad4;
}
.liste_akt {
	color: #000;
	font-weight: normal;
	background-color: #bebecf;
	padding: 3px;
	border-right: 1px solid #cacad4;
	border-bottom: 2px solid #cacad4;
}
.liste_term {
	background-color: #e1a9a9;
	color: #000;
	text-align: left;
	padding: 3px;
	vertical-align: top;
}
.liste_blass {
	color: #4b4b6d;
	font-weight: normal;
	background-color: #d5d5e8;
	padding: 3px;
}
.liste_abstand {
	background-color: transparent;
	padding-right: 20px;
	padding-left: 20px;
	border-right: 1px solid #020026;
	border-left: 1px solid #020026;
}
.bereichstrenner {
	font-size: 0;
	background-color: #003;
	height: 1px;
}
.listentrenner {
	font-size: 0;
	background-color: #656581;
	height: 1px;
}
.leertrenner {
	font-size: 0;
	height: 1px;
}
.listentrenner_l {
	font-size: 0;
	background-color: #cacad4;
	width: 30px;
	height: 1px;
}
.listentrenner_v {
	font-size: 0;
	background-color: #cacad4;
	width: 2px;
	height: 1px;
}
.listentrenner2 {
	background-color: #d7d7e1;
	height: 2px;
}
.btn span {
	padding: 2px 4px;
	cursor: pointer;
	margin-left: 5px;
}
.bg_rot {
	background-color: #f99 !important;
}
.bg_rh {
	background-color: #ffabab !important;
}
.bg_blau {
	background-color: #69f !important;
}
.bg_bh {
	background-color: #80aaff !important;
}
.bg_bd {
	background-color: #508aff !important;
}
.bg_gruen {
	background-color: #9c9 !important;
}
.bg_gh {
	background-color: #b2e5b2 !important;
}
.bg_gd {
	background-color: #6c6 !important;
}
.bg_gelb {
	background-color: #ff6 !important;
}
.bg_orange {
	background-color: #fc6 !important;
}
.bg_oh {
	background-color: #ffd88a !important;
}
.bg_gr {
	background: #bbb !important;
}
.bg_1 {
	background: #cfc !important;
}
.bg_2 {
	background: #ff9 !important;
}
.bg_3 {
	background: #ffd88a !important;
}
.foot {
	float: right;
}
/*buttons*/
.kbtn {
	padding-right: 5px;
	padding-left: 5px;
	cursor: pointer;
}
.send_full {
	background-color: transparent;
	text-align: left;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	cursor: pointer;
	border-style: none;
}
.send {
	color: #000;
	background: #fff;
	padding: 3px 5px;
	border-style: none;
	outline-style: none;
	cursor: pointer;
}
.send_kl {
	background: #e3e3e8 !important;
}
.send_r {
	background: #f99 !important;
}
.send_rh {
	background: #ffabab !important;
}
.send_rhh {
	background: #fcc !important;
}
.send_b {
	background: #69f !important;
}
.send_bh {
	background: #80aaff !important;
}
.send_bhh {
	background: #9cf !important;
}
.send_g {
	background: #9c9 !important;
}
.send_gh {
	background: #b2e5b2 !important;
}
.send_ghh {
	background: #cfc !important;
}
.send_y {
	background: #ff6 !important;
}
.send_yh {
	background: #ff9 !important;
}
.send_yhh {
	background: #ffc !important;
}
.send_w {
	padding: 2px 4px;
	cursor: pointer;
}
a.send_r, a.send_rh, a.send_b, a.send_bh, a.send_g, a.send_gh, a.send_ghh, a.send_y, a.send_yh, a.send_yhh, a.send_w {
	color: #000 !important;
	padding: 2px 4px;
}
.sort {
	background: #fefcd4;
}
.sort_r {
	background: #e2e0bc;
}
div.sort {
	display: inline-block;
	width: 10px;
	margin: 0 0 0 3px;
	padding: 0;
	background-color: white;
	line-height: 7px;
	border: 1px solid #ccc;
}
div.sort a, div.sort a:visited {
	font-family: Roboto;
	font-size: 8px;
	line-height: 7px;
	background-color: white;
	font-weight: bold;
	display: block;
	margin: 0;
	padding: 0;
	overflow: hidden;
	text-align: center;
	width: 10px;
	height: 7px;
	border-style: none;
}
div.sort a:hover {
	background-color: #cdcdcd;
	color: #ff3300;
}
.message {
	text-decoration: none;
	margin-top: -12px;
}
.message img {
	margin-bottom: -6px;
}
.formular div {
	padding-top: 3px;
	padding-bottom: 3px;
}
/*meldungen*/
.fehlermeldung {
	color: #000;
	background-color: #dedede;
	text-align: center;
	position: fixed;
	top: 90px;
	left: calc(50% - 220px);
	width: 440px;
	z-index: 2000;
	float: none;
	margin-right: auto;
	margin-left: auto;
	padding-bottom: 10px;
	border: 1px solid #1b1b42;
	border-radius: 4px;
	box-shadow: 4px 4px 3px #c9c9c9;
	max-height: calc(100% - 140px);
	overflow: auto;
}
.fehlermeldung h1 {
	background-color: #f99;
	text-align: center;
	margin-top: 0;
	padding: 5px;
	border-style: none;
}
.fehlermeldung h2 {
	background-color: #ff9;
	text-align: center;
	margin-top: 0;
	padding: 5px;
	border-style: none;
}
.fehlermeldung p {
	font-weight: bold;
	text-align: left;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
}
.fehlermeldung table {
	margin-right: auto;
	margin-left: auto;
	width: 90%;
}
.fehlermeldung a, .fehlermeldung a:visited {
	color: #000;
	font-weight: bold;
	background-color: #69f;
	text-align: center;
	padding: 2px 10px;
	cursor: pointer;
	border-radius: 4px;
}
.hide {
	display: none !important;
}
.termin {
	text-align: center;
	vertical-align: middle;
	padding: 2px 5px;
	white-space: nowrap;
}
.termin_t {
	font-weight: bold;
	text-align: center;
	white-space: nowrap;
	padding-right: 5px;
	padding-left: 5px;
	vertical-align: top;
}
.help {
	color: #f00;
	font-weight: bold;
	cursor: help;
}
.inp_group {
	white-space: nowrap;
	margin-right: 20px;
	display: inline-block;
}
#maske {
	background-color: #000;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 1100;
	margin: 0;
	display: none;
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	-opera-opacity: 0.6;
	opacity: 0.6;
}
#infofenster {
	color: #000;
	background-color: white;
	position: fixed;
	top: 50px;
	left: 50px;
	width: auto;
	z-index: 1200;
	padding: 0;
	display: none;
	vertical-align: middle;
	text-align: center;
}
#infoframe {
	width: 800px;
	max-height: calc(100% - 60px);
	position: absolute;
	top: 40px;
	bottom: 20px;
	left: calc(50% - 400px);
	padding: 30px 10px 20px;
	background-color: #fdfdff;
	border: 1px solid #003;
	display: none;
	z-index: 1200;
}
#infoframe div {
	color: #000;
	font-weight: bold;
	background-color: #cacad4;
	width: 12px;
	cursor: pointer;
	border: solid 1px #656581;
	text-align: center;
	position: absolute;
	top: 5px;
	right: 5px;
	padding: 2px;
}
.infoiframe {
	width: calc(100% - 20px);
	height: 100%;
	background-color: #fdfdff;
	border: 1px solid #999999;
}