.submenu UL {
    list-style-type: none;
    margin: 0;
    padding: 0;

}

.submenu LI {
    display: inline;
    margin-right: 1em;
}

.submenu A {
    white-space: nowrap;
}

.submenu {
    margin-bottom: 2em;
}

input:focus {
    outline: none;
}

/* region bootstrap 5 compatible utility classes */

.text-center {
    text-align: center;
}

.my-2 {
    margin-top: .5rem;
    margin-bottom: .5rem;
}

.my-3 {
    margin-top: .75rem;
    margin-bottom: .75rem;
}

/* endregion */

#Content, table, pre {
    color: #333;
    font-size: 10pt;
    font-family: Verdana, sans-serif;
    font-weight: normal;
}

pre {
    white-space: pre-wrap;
}

#Content a {
    text-decoration: underline;
    color: inherit;
}

#Content h1, #Content h2, #Content h3, #Content h4, #Content h5 {
    padding: 0;
    margin: 0;
    margin-top: 5px;
    padding-bottom: 5px;
    font-weight: bold;
    font-size: 10pt;
}

p {
    font-weight: normal;
    margin-top: 5px;
    margin-bottom: 10px;
    border: solid 0 black;
}

.contenttable {
    border-collapse: collapse;
    width: 100%;
}

.contenttable p {
    margin: 0;
    padding: 0;
    margin-right: 10px;
}

.contenttable td {
    margin: 0;
    padding: 2px;
    vertical-align: top;
}

.contenttable .td-0 {
    white-space: nowrap;
}

.tx-nbcust-pi1 .contenttable, .tx-nbcust-pi1 .contenttable TR, .tx-nbcust-pi1 .contenttable TD {
    border: none;
}

.contenttable select {
    width: 97%;
}

.tx-nbcust-pi1 .account td {
    font-size: 0.7em;
    border: solid 1px #D8D8D8;
    padding: 0.9em 0.9em;
}

.tx-nbcust-pi1 .account th {
    font-size: 0.7em;
    font-weight: normal;
    border: solid 1px #D8D8D8;
    padding: 0.9em 0.9em;
}

.tx-nbcust-pi1 .account .date {
    white-space: nowrap;
}

.tx-nbcust-pi1 .account th {

    text-align: left;
}

.csc-loginform label {
    display: block;
}

.csc-mailform-submit {
    margin-top: 1em;
}

.csc-loginform input {
    max-width: 160px;
}

.securebadge {
    margin: 5px;
    padding: 5px;
}

.securebadge #Content {
    border: solid 3px #EE9;
    background-color: #FFC;
    padding: 8px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
}

#thawtebadge {
    float: right;
    margin-top: -30px;
    margin-right: 20px;
}

#szkwal select {
    margin-bottom: 1em;
}

#szkwalPaymentData {
    margin: 0 1em 1em 0;
    padding: 1em;
    border: solid 1px #777;
    background-color: #FFE;
}

#szkwalPaymentData td {
    vertical-align: top;
    padding-right: 1em;
}

#szkwal-login {
    display: block;
    padding: 2em 0 1em 0;
}

#szkwal-login-url {
    border: solid 1px #777;
    background-color: #EEE;
    text-decoration: none;
    padding: 0.5em 1em;
}

ul.payment_options {
    padding: 0;
}

ul.payment_options h2 {
    font-style: italic;
}

ul.payment_options b {
    font-weight: normal;
}

.register_button {
    margin: 2em;
}

#register_info_box, .register_info_box {
    text-align: left;
    margin: 1em;
}

.ticket_boxes div.ticket_group {
    float: left;
}

.ticket_boxes div.item {
    border: solid 1px #777;
    margin: 1em;
    padding: 1em;
    float: left;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.ticket_boxes div h3 {
    text-transform: uppercase;
}

.ticket_boxes p.description {
    max-width: 13em;
    font-size: 0.8em;
    color: #AAA;
    margin-top: 0.5em;
}

.ticket_boxes p.num_tickets {
    padding-top: 1em;
    font-size: 1.7em;
}


.ticket_boxes div.item.selected {
    border: solid 1px #000;
    background-color: rgba(127, 127, 127, 0.2);
}

.ticket_boxes div.item.selected p.description {
    color: #333;
}

div.submit {
    text-align: center;
}

ul.invoices {
    clear: both;
    padding: 0;
    margin: 10px 0;
}

div.invoices-wrapper {
}

li.invoices {
    display: inline-block;
    list-style: none;
    padding: 0 10px 0 0;
}

.cc_select {
    display: inline-block;
}

tr.sum {
    font-weight: bold;
}

.sum td {
    border-top: solid thin #000000;
}

div.shopping_cart {
    margin: 10px 0 40px;
}

div.shopping_cart table {
    margin: 10px;
}

.clear {
    clear: both;
}

.customer_balance {
    margin-bottom: 15px;
}

.type_error {
    color: #CC0000;
    font-weight: bold;
}

#invite_friends_error_common {
    font-weight: bold;
}

.hidden {
    display: none !important;
}

.edit_rental_button_pic img {
    height: 15px;
    width: 15px;
}

.grey-box {
    padding: 20px;
    background: #FBFBFB;
    border: 1px solid #E2E2E2;
}

table .even {
    background: #EAEAEA;
}

.bold {
    font-weight: bold;
}

#RentalDetails_Headline {
    font-size: 3em;
    font-weight: bold;
    margin: 30px 15px;
}

#RentalDetails_StateMessages {
    font-size: 1.8em;
    font-weight: bold;
    margin: 30px 15px;
}

#RentalDetails {
    font-size: 1em;
    margin: 30px 15px;
}

#RentalDetails_Buttons button {
    font-size: 1em;
    margin: 10px 15px;
}

#RentalDetails_Buttons button a {
    text-decoration: none;
}

#RentalDetails_RentalChangeForm {
    font-size: 1em;
    margin: 30px 15px;
    display: inline-block;
}

#RentalDetails_RentalChangeForm table {
    border-collapse: collapse;
}

#RentalDetails_RentalChangeForm td {
    padding: 5px 10px 5px 0;
}

#RentalDetails_RentalChangeForm .submit_button {
    margin-top: 30px;
}

#RentalDetails table {
    border-collapse: collapse;
}

#RentalDetails td {
    padding: 5px 10px 5px 0;
}

.RatingStars {
    padding: 0;
    border: none;
    float: left;
}

.RatingStars > input {
    display: none;
}

.RatingStars > label:before {
    font-size: 22px;
    display: inline-block;
    content: "\2605";
    position: absolute;
}

.RatingStars > label {
    color: #ddd;
    font-size: 22px;
    float: right;
    margin-right: 2px;
}

.RatingStars > input:checked ~ label,
.RatingStars:not(:checked) > label:hover,
.RatingStars:not(:checked) > label:hover ~ label {
    color: #FFD700;
}

.RatingStars > input:checked + label:hover,
.RatingStars > input:checked ~ label:hover,
.RatingStars > label:hover ~ input:checked ~ label,
.RatingStars > input:checked ~ label:hover ~ label {
    color: #FFED85;
}

.button_pen_link {
    display: inline-block;
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4QMDDwUy+iVVQQAAAaNJREFUOMuVk79OAkEQxj/gxpkYJXT+KyzU3sTaAiMmyjMY9QWwwIrW2FgZrFVqia9AYSyMhS8gWGBBaLQjdzngbObIZrk7jk02ezcz+8t8++0Ccw5iqRLLiFg6xFIhliUzn0kJge+54XcbwJaRHgDYBfDley6yaYC+54JYasSSA9C10osAPgHspOqQWDIAngCc6aZ9AI8RpQMAK7kkmePREDnHaSgMAPZ8z63kHKcMYMPeAqA/q7s6sQQ6f4hlgVjWNPdt5MLZiexM16ZR+EcsRCxF/S9rzYcFHKXprE8seWI50v+xrutae0EsLWJpE0t1ygBiaZgwjR9YnRxqx6/Esq3uR8p8sGTmFTYy4sfE4hBL14jVomTeWQaQITNQaIlYlonl14g3zKZC2HOCAeEsaW3PhOk9nYzwpbzp2gewCaAIoAUg0PgJgHdi6QFY1di977nnvucGced3SizZGAMcS2ZzSmYMtEAsQ+NqRBlQn/Uabi3olULTGRABDIjlxooV9E4mGpAEDIjlOuJM08mMAU46NaCXxPIyU2YCMLDPdN7xD+pfpJ6c0pVYAAAAAElFTkSuQmCC");
    background-size: 15px 15px;
    width: 15px;
    height: 15px;
    zoom: 0.8;
    opacity: 0.5;
}

.button_pen_link:hover {
    opacity: 1;
}

.shopping_cart_buttons {
    float: left;
}

.shopping_cart_buttons .tpay_visa_checkout {
    margin: 3px 0 0 40px;
}

.customer_card_form {
    width: 100%;
}

.customer_card_form .add_customer_card_row {
    padding: 10px 15px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

.customer_card_form .add_customer_card_row > label {
    min-width: 150px;
    margin-right: 25px;
}

.customer_card_form .add_customer_card_row > input[type=text] {
    flex-grow: 1;
}

.active_customer_cards_table_row {
    padding: 10px 15px;
}

.active_customer_cards_table {
    margin: 15px 10px;
    margin-bottom: 40px;
    width: 700px;
}

.active_customer_cards_table td {
    height: 100%;
}

.active_customer_cards_table td:first-child {
    display: table-cell;
}

.active_customer_cards_table td:first-child > img {
    vertical-align: middle;
    width: 90px;
}

.active_customer_cards_table td:nth-child(2) {
    padding-left: 20px;
    text-align: left;
    min-width: 180px;
    font-style: italic;
}

.active_customer_cards_table td:nth-child(3) {
    width: 90%;
}

.active_customer_cards_table td:last-child {
    width: 250px;
}

.no_active_customer_cards {
    width: 700px;
    text-align: center;
    color: darkgrey;
    font-style: italic;
    line-height: 4em;
}

#Content .up_anchor {
    float: right;
    font-size: 26pt;
}

#Content .up_anchor a, #Content .up_anchor a:link, #Content .up_anchor a:visited {
    text-decoration: none;
}

td.gdpr_agreements_prompt {
    padding-top: 30px;
    padding-bottom: 10px;
}

.gdpr_transmission_agreement_header {
    margin: 20px 40px;
}

.gdpr_transmission_agreement_footer {
    margin: 20px 40px;
}

.gdpr_transmission_agreement_table {
    margin: 0 80px;
}

.contenttable .birthday-picker-day {
    width: 20%;
    height: 45px;
    margin-left: 40px;
}

.contenttable .birthday-picker-month {
    width: 30%;
    height: 45px;
}

.contenttable .birthday-picker-year {
    width: 20%;
    height: 45px;
}

.contenttable .date-picker-day {
    width: 20%;
    height: 45px;
    margin-left: 40px;
}

.contenttable .date-picker-month {
    width: 30%;
    height: 45px;
}

.contenttable .date-picker-year {
    width: 20%;
    height: 45px;
}


.active-tickets-list {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    text-align: center;
}

.active-tickets-list > table {
    width: 90%;
}

.active-tickets-list > table tr > td:first-child {
    text-align: left;
}

.active-tickets-list > table tr > td:nth-child(3) {
    text-align: right;
}

.payment-anchor-links {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    margin-top: 30px;
    margin-bottom: 40px;
}
