/* General */
#OS {
  width: 100%;
}

.bold {
  font-weight: bold;
}

.small {
  font-size: 10px;
}

/* Status */
#OS .status {
 height: 71px;
 position: relative;
 margin-bottom: 20px;
 width: 520px;
 overflow: hidden;
}

#OS .status table tbody tr td {
 text-align: left;
}

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

#OS .status-default {
 background-image: url('../images/status_normal.jpg');
}

#OS .status-register {
 background-image: url('../images/status_register.jpg');
}

#OS .status-payment {
 background-image: url('../images/status_payment-method.jpg');
}

#OS .status-pooling {
 background-image: url('../images/status_pooling.jpg');
}

#OS .status-finished {
 background-image: url('../images/status_finished.jpg');
}

/* General - Button */
#OS .box-button {
  height: 50px;
  margin-top: 10px;
  margin-bottom: 10px;
}

#OS .box-button .button-right {
  float: right;
}

#OS .box-button .button-right .button {
  background: transparent url(../images/buttons.jpg) no-repeat scroll left -161px;
}

#OS .box-button .button-right .button:hover {
  background-position: left -214px;
}

/* 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;
}

/* Boxes - Table */
#OS .box .box-content table {
  border-collapse: collapse;
  width: 100%;
}

#OS .box .box-content table .odd {
}

#OS .box .box-content table th {
  border: 1px solid #E6D5C3;
  background-color: #EBDECE;
  color: #7D5227;
  padding: 5px;
}

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

#OS .box .box-content table td {
  border: 0px;
  border-top: 1px solid #E6D5C3;
  border-bottom: 1px solid #E6D5C3;
  padding: 3px;
  background-color: #FFF;
}

/* Boxes - Button */
#OS .box .button {
  background: transparent;
  color: #7D5227;
  font-weight: normal;
  height: auto !important;
  width: auto !important;
  text-decoration: underline;
  font-size: 12px;
  padding: 0px;
  text-align: right;
}

#OS .box .button:hover {
}

/* Specefic Boxes */
#OS .box#choose-rooms .box-content table {
  border: 1px solid #E6D5C3;
  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 #E6D5C3;
}

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

#OS .box#registration .box-content .registration-types label {
  display: block;
  margin-left: 20px;
  width: 200px;
}

#OS .box#registration .box-content .registration-types input {
  float: left;
}

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

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

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

/* Messages */
#OS .error-msg {
 width: auto;
 font-size: 12px;
 text-align: center;
 border: 1px solid #cc0000;
 color: #cc0000;
 background-color: #ffcccc;
 padding: 10px;
 margin: 10px;
}


#OS .io-msg {
 width: auto;
 text-align: center;
 font-size: 12px;
 border: 1px solid darkgreen;
 color: darkgreen;
 background-color: lightgreen;
 padding: 10px;
 margin-bottom: 10px;
 margin: 10px;
}

/* Reservation Block */
#OR input#time_from, #OR input#time_to, #OR select[name='room_quantity'], #OR select.select {
  float: left;
}

#OR select.select {
  margin-bottom: 10px;
  height: 20px !important;
}

#OR span {
  color: #663403;
}

/* Quantity Field */
#OS input.quantity {
  width: 30px;
    text-align: right;
    }

