/* General */ OS.CSS

#OS {
  width: 100%;
}

.bold {
  font-weight: bold;
}

.small {
  font-size: 10px;
}

#OS img {
  border: 0px;
}

/* General - Button */
#OS .box-button {
  position: relative;
  height: 30px;
}

#OS .box-button .button-right {
  position: absolute;
  right: 10px;
}

/* Status */
#OS .status {
 background:silver url(../images/bg_statusbar.png) no-repeat left top;
 height:72px;
 position:relative;
 margin-bottom:10px;
 overflow:hidden;
 margin:10px;
}

#OS .status table tbody tr td {
 padding-right:10px;
 text-align:center;
}

#OS .status table tbody tr td a {
  color:#F6DF68;
}

#OS .status table tbody tr td a {
  text-decoration:none;
}

#OS .status table.status-register tbody tr td#step-1 a,
#OS .status table.status-payment tbody tr td#step-2 a,
#OS .status table.status-pooling tbody tr td#step-3 a,
#OS .status table.status-finished tbody tr td#step-4 a {
  font-weight:bold;
}

#OS .status-default, .status-register, .status-payment, .status-pooling, .status-finished {
 background-position:-40px top;
 width:100%;
}

#OS .status-default {
 background:silver url(../images/bg_statusbar.png) no-repeat left top;
}

#OS .status-register {
 background:silver url(../images/bg_statusbar.png) no-repeat left -79px;
}

#OS .status-payment {
 background:silver url(../images/bg_statusbar.png) no-repeat left -151px;
}

#OS .status-pooling {
 background:silver url(../images/bg_statusbar.png) no-repeat left -223px;
}

#OS .status-finished {
 background:silver url(../images/bg_statusbar.png) no-repeat left -295px;
}


/* Boxes */
#OS .box {
  margin: 10px 10px 20px 10px;
}

/* Workaround */
#OS .box .box#address {
  margin: 0px;
}

#OS .box .box-head {
  font-size: 14px;
  font-weight: bold;
  margin: 5px 0px 10px 0px;
  padding: 0px;
}

#OS .box .box-head2 {
  font-size: 12px;
  font-weight: bold;
  margin: 0px;
  padding: 0px;
  color:#64000E;
}

/* Boxes - Table */
#OS .box .box-content table {
  border-collapse: collapse;
  width: 100%;
  border: 1px solid #D5C9B9;
  color: #F6DF68;
}

#OS .box .box-content table .odd td {
  background-color: #F2F2F2;
}

#OS .box .box-content table th {
  background-color:#8C040D;
  font-weight:bold;
  color:#F6DF68;
  padding:5px;
  border: 1px solid #D5C9B9;
}

#OS .box .box-content table th div {
  font-weight:bold;
  color:#F6DF68;
}

#OS .textarea {
  width: 100%;
  height: 80px;
}

#OS .box .box-content table th span {
  font-weight: bold;
  color:#F6DF68;
}

#OS .box .box-content table td {
  padding: 3px;
  color: #111;
  border-top: 1px solid #D5C9B9;
}

/* Specefic Boxes */
#OS .box#choose-rooms .box-content table,
#OS .box#registration .box-content .registration-types {
  border: 1px solid #D5C9B9;
  margin-bottom: 10px;
}

#OS .box#choose-rooms .box-content table td {
  border: 0px;
}

#OS .box#choose-rooms .box-content table th div {
  width: 25%;
}

#OS .box#room-selection .box-content table td,
#OS .box#guests .box-content table td,
#OS .box#login-form .box-content table td,
#OS .box#articles .box-content table td {
  border: 1px solid #D5C9B9;
}

#OS .box#registration .box-content .registration-types {
  margin: 10px 0px 10px 0px;
  border: 0px;
}

#OS .box#registration .box-content table#registration-company {
  margin-bottom: 10px;
}

#OS .box#agb .box-content {
  width: 100%;
  height: 100px;
  overflow: auto;
  margin-bottom: 10px;
}

#OS .box#payment-list .box-content table td {
  width: auto;
}

#OS .box#payment-types .box-content img[src=""] {
  display: none;
}

#OS .box#payment-types .box-content img {
  cursor: pointer;
}

#OS .box#payment-types .box-content table .radio {
  margin-top: 10px;
  float: left;
}

#OS .box#payment-types .box-content table label {
  float: left;
}

#OS .box#payment-types .box-content table tr.active td {
  /*background-color:#FFB3CF;*/
  color:#F6DF68;
}

/* Online Reservation */
#OR {
  display:block;
  margin: auto;
  width: 380px;
}

#OR select {
  float:left;
  margin-left:1px;
}

#OR label {
  float: left;
  clear: both;
  width: 100px !important;
}

#OR .button {
  margin-left: 5px;
  width: 107px;
}


/* Quantity Field */
#OS input.quantity {
  width: 30px;
  text-align: right;
}
#online-reservation {
  height:auto;
  display:block;
}

  #online-reservation label {
    float:left;
    font-style:normal;
    font-weight:bold;
    margin-right:10px;
    width: 45px;
  }

  #online-reservation input {
    background-image: url("../images/tpl_slice_vs001.png");
    background-position: 0 -340px;
    cursor: pointer;
    display: block;
    border: 0 none;
    height: 20px;
    line-height: 20px !important;
    padding: 0 0 0 2px;
    width: 112px;
    margin: 0px;
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    -ms-border-radius: 0px;
    -o-border-radius: 0px;
    border-radius: 0px;
    
  }
  
  /*#online-reservation span,*/
  #online-reservation label[for="time_from"],
  #online-reservation label[for="time_to"],
  #online-reservation input[name="time_from"],
  #online-reservation input[name="time_to"] { display:none; }
  
  #online-reservation #date_from:hover,
  #online-reservation #date_until:hover,
  #online-reservation #date_from:focus,
  #online-reservation #date_until:focus { background-position: 0 -370px; }
  
  #online-reservation #date_from:active, #online-reservation #date_until:active { background-position: 0 -400px; }
  
  #online-reservation select {
    opacity:0;
    position:relative;
    left:-45px;
    width:45px;
    z-index:100000;
  }
  
  * html #online-reservation select {
    left:0px;
    opacity:0;
    filter: alpha(opacity = 0);
    z-index:10;
  }
  
  *+html #online-reservation select {
    left:0px;
    opacity:0;
    filter: alpha(opacity = 0);
  }
  
  
  #online-reservation .OR_select_button {
    background-image:url("../images/tpl_slice_vs001.png");
    background-position:-120px -340px;
    color: #333;
    display: block;
    cursor: pointer;
    height: 20px;
    padding: 0 0 0 2px;
    width: 41px;
    position:relative;
    float:left;
  }
  
  * html #online-reservation .OR_select_button {
    display:none;
  }
  
  *+html #online-reservation .OR_select_button {
    right:-52px;
    top:-20px;
    width: 41px;
    padding-right:34px;
  }
  
  #online-reservation .OR_select_button:hover {
    background-position:-120px -370px;
  }
  
  #online-reservation .OR_select_button:active {
    background-position:-120px -400px;
  }
  
  #online-reservation .spinner-group {
    height: 23px;
  }
  
  #online-reservation #OR_check, #online-reservation .spin-down, #online-reservation .spin-up {
    background-image:url('../images/tpl_slice_vs001.png');
    background-repeat:no-repeat;
    background-position:0 -5px;
    color: #F6df68;
    cursor: pointer;
    float: left;
    font-weight:bold;
    padding:0px 6px 0 25px;
    height:30px;
    margin-top: 10px;
    width: 170px;
    text-align:left;
  }
  
  #online-reservation .spin-put {
    float: left;
    text-align: center;
  }
  
  #online-reservation .spin-down, #online-reservation .spin-up {
    margin: 0px;
    width: 20px;
    height: 20px;
    background-position: -20px 0px;
    padding: 0px;
    text-align: center;
    font-weight: bold;
  }
  
  #online-reservation .spin-down:hover, #online-reservation .spin-up:hover {
    background-position: -20px -50px;
  }
  
  #online-reservation .spin-down:active, #online-reservation .spin-up:active {
    background-position: -20px -100px;
  }
  
  #online-reservation #OR_check:hover, #online-reservation #OR_check:focus { background-position:0 -55px; margin-left: 0px; }
  #online-reservation #OR_check:active { background-position:0 -106px; margin-left: 0px; }

/* Raumauswahl */
ul.rooms {
  list-style: none;
  padding: 0px;
  margin: 0px;
}

ul.rooms .room {
  border-bottom: 1px solid #EEE;
  padding: 10px 0px;
}

ul.rooms .room:last-child {
  border: 0px;
}

ul.rooms .headline h3 span {
  font-weight: normal;
  font-size: 20px;
  line-height: 40px;
}

ul.rooms .description {
  width: 100%;
  float: left;
}

ul.rooms .tn ~ .description {
  width: 65%;
}

ul.rooms .description ul {
  clear: both;
  float: left;
  background: #eee;
  list-style: none;
  padding: 0px; 
  margin: 10px 0px;
  width: 100%;
}

ul.rooms .description ul li {
  width: 50%;
  line-height: 25px;
  float: left;
  border-bottom: 1px dotted #aaa;
}

ul.rooms .description ul li:nth-last-child(2), ul.rooms .description ul li:nth-last-child(1) {
  border-bottom: 0px;
}

ul.rooms .description ul li::before {
  content: '→ ';
  width: 16px;
  height: 16px;
  margin-left: 10px;
}

ul.rooms .actions {
  clear: both; 
  float: right;
}

ul.rooms .tn {
  width: 30%;
  float: left;
  margin-right: 5%;
}

ul.rooms .tn a.gallery-item {
  display: block;
  margin: 10px 0px;
}

ul.rooms .tn a.main-item {
  display: block;
  width: 100%;
  height: 120px;
  clear: both;
  overflow: hidden;
  position: relative;
}

ul.rooms .tn a.main-item img {
  display: block;
  position: relative;
  top: 50%;
  left: 50%;
}

ul.rooms .tn .modal .carousel-inner img {
  width: 100%;
}

ul.rooms .tn .imgs {
  height: 50px;
  display: none;
}

ul.rooms .tn .imgs .item {
  float: left;
}

ul.rooms .tn .imgs .item img {
  max-height: 100%;
}

ul.rooms .infos {
  float: right;
}

ul.rooms .infos span {
  color: #AAA;
  font-size: 12px;
}

.nav.nav-tabs li a {
  padding: 5px 6px;
}

.form-horizontal textarea:hover {
  border: 1px solid #ccc;
  margin: 0px;
}

.form-horizontal input:hover, .form-horizontal input:focus {
  margin: 0px;
}

