/** ui **/

:root {
    --color_1: #191919;
    --color_2: #cccccc;
    --color_3: #000000;
    --color_4: #999999;
    --color_5: #eeeeee;
    --color_6: rgb(255, 255, 255, 0.2);
    --color_7: #111111;
    --color_8: #222222;
    --color_9: #ffffff;
    --color_10: #333333;
    --color_11: #9F9F9F;
    --color_12: #212529;
    --color_13: #393E44;
    --color_14: #525252;
    --color_15: rgb(255, 255, 255, 0.07);
    --color_16: rgb(0, 0, 0, 0.8);
  
    --color_40: #FF0000;
    --color_41: #FF8E45;
    --color_42: #fff1D6;
    --color_43: #FF4304;
    --color_44: #F30000;
    --color_45: #8D1E78;
  
    --color_90: #eaa721;
  
    --color_101: #191919;
    --color_102: #cccccc;
    --color_103: #000000;
    --color_104: #000000;
    --color_106: rgb(255, 255, 255, 0.2);
    --color_109: #ffffff;
    --color_110: #202020;
  }
  
  
  @media (prefers-color-scheme: dark) {
  
    :root {
      --color_1: #191919;
      --color_2: #cccccc;
      --color_3: #000000;
      --color_4: #999999;
      --color_5: #eeeeee;
      --color_6: rgb(255, 255, 255, 0.2);
      --color_7: #111111;
      --color_8: #222222;
      --color_9: #ffffff;
      --color_10: #333333;
      --color_11: #9F9F9F;
      --color_12: #212529;
      --color_13: #393E44;
      --color_14: #525252;
      --color_15: rgb(255, 255, 255, 0.07);
      --color_16: rgb(0, 0, 0, 0.8);
    
      --color_40: #FF0000;
      --color_41: #FF8E45;
      --color_42: #fff1D6;
      --color_43: #FF4304;
      --color_44: #F30000;
      --color_45: #8D1E78;
    
      --color_90: #eaa721;
    
      --color_101: #191919;
      --color_102: #cccccc;
      --color_103: #000000;
      --color_104: #000000;
      --color_106: rgb(255, 255, 255, 0.2);
      --color_109: #ffffff;
    }
  
  }
  
  
  
  @media (prefers-color-scheme: light) {
  
    :root {
      --color_1: #E6E6E6;
      --color_2: #333333;
      --color_3: #ffffff;
      --color_4: #666666;
      --color_5: #111111;
      --color_6: rgb(0, 0, 0, 0.2);
      --color_7: #eeeeee;
      --color_8: #DDDDDD;
      --color_9: #000000;
      --color_10: #CCCCCC;
      --color_11: #606060;
      --color_12: #DEDAD6;
      --color_13: #C6C1BB;
      --color_14: #ADADAD;
      --color_15: rgb(0, 0, 0, 0.07);
      --color_16: rgb(255, 255, 255, 0.85);
    
      --color_40: #FF0000;
      --color_41: #FF8E45;
      --color_42: #fff1D6;
      --color_43: #FF4304;
      --color_44: #F30000;
      --color_45: #8D1E78;
    
      --color_90: #eaa721;
    
      --color_101: #ffffff;
      --color_102: #cccccc;
      --color_103: #000000;
      --color_104: #666666;
      --color_106: rgb(255, 255, 255, 0.2);
      --color_109: #ffffff;
      
    }
  
    
  }


/** .wrapper incapsuleaza continut in header, main si footer **/
.wrapper { max-width:720px;  margin:0 auto; padding:0;}
main .content { background-color:#fff; padding-bottom:1px; }
.bg-ddd {background-color:#f9f9f9!important;}

@media (max-width: 767px) {
    .wrapper { max-width:100%; margin:0; }
}

header { }
header .logo { display:block; font-size:2rem; padding:1rem; text-align:center; margin:1rem auto; }

.footer-debug { background-color:#fff; }
footer { min-height:2.5rem; }
footer ul { font-size:80%; }
footer ul li { }
footer ul li a {  text-decoration: underline;}

/*
 * btn-accent - butoanele principale
 * btn-outline-accent - butoanele secundare
 * disabled-look - butoanele dezactivate
 * row-accent - randuri evidentiate (total)
 */
.btn-apple-wallet { height:2.5rem; width:127px; background:url(img/passbook/add-to-apple-wallet-logo.png) no-repeat; background-size:contain; }
.btn-small { border-radius:2px; padding:0 4px; }
.btn-accent {
    color:#fff;
    background: #1e5799;
    background: -webkit-linear-gradient(top,  #1e5799 0%,#4293d6 100%);
    background:    -moz-linear-gradient(top,  #1e5799 0%, #4293d6 100%);
    background:         linear-gradient(to bottom,  #1e5799 0%,#4293d6 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#4293d6',GradientType=0 );
}
.btn-accent:hover { color:#fff; }
.btn-outline-accent { background:#FFF; border:1px solid #1e5799; color:#1e5799; }
.btn-outline-accent:hover { color:#1e5799; }
.btn-outline-accent.hover:hover { background:#1e5799; color:#fff; }
.btn.disabled-look { color: #fff; border-color:#a4a4a4; background:#a4a4a4; box-shadow: none; }
.btn.disabled-look i { opacity:0.3; }
.btn.no-outline,
.btn.no-outline:focus,
.btn.no-outline.focus,
.btn.no-outline.active { outline:none!important; box-shadow:none!important; }
.row-accent { color:#000; background: #f8f8f8; border-bottom: 1px solid #E3E3E3; }
.row-secondary { color:rgb(94, 94, 94); font-size:95%; }
.text-accent { color:#55c32f; }
.badge-accent { background-color: #1e5799; color:#fff; }
.heading { border-bottom: 1px solid #E3E3E3; font-size: 1rem; font-weight: bold; line-height: 1.2rem; }
.section { padding:1rem; }
.section.bb-0 { border-bottom:0; }
.modal-body .section { padding:0; border-bottom:0; }
.--section:last-child { border-bottom:0; }

.grad {
    background: #f8f8f8;
    background: -webkit-linear-gradient(top,  #f8f8f8 0%,#f8f8f8 29%,#eaeaea 100%);
    background:    -moz-linear-gradient(top,  #f8f8f8 0%, #f8f8f8 29%, #eaeaea 100%);
    background:         linear-gradient(to bottom,  #f8f8f8 0%,#f8f8f8 29%,#eaeaea 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8f8f8', endColorstr='#eaeaea',GradientType=0 );
}
.has-warning { background-color: #ffeeba; }

.terms-checkbox .form-group { margin-bottom:0; }


.no-selection {
    -webkit-touch-callout: none; /* iOS Safari */
      -webkit-user-select: none; /* Safari */
       -khtml-user-select: none; /* Konqueror HTML */
         -moz-user-select: none; /* Firefox */
          -ms-user-select: none; /* Internet Explorer/Edge */
              user-select: none; /* Non-prefixed version, currently supported by Chrome and Opera */
}

.absmid { position:absolute; top:0; left:0; bottom:0; right:0; margin:auto; }
.fill { position:absolute;  top:0; left:0; bottom:0; right:0; width:100%; height:100%; }
.wait { cursor:wait; }

.loading-container { }
.loading { position:relative;}
.loader-container .opac { background-color:#fff; opacity:0.4; }
.loader {
    border: 16px solid #f3f3f3; /* Light grey */
    border-top: 16px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
}

.btn-loading-container { }
.btn-loading { position:relative; }
.btn-loader-container { background-color:#fff; opacity:0.4; }
.btn-loader {
    border: 5px solid #f3f3f3; /* Light grey */
    border-top: 5px solid #000; /*  */
    border-radius: 50%;
    width: 20px;
    height: 20px;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.alert { text-align:center; border-radius:0; margin-bottom:0; }
.toast { background-color:#fff; }

/** Movie header **/
.movie-header { background-color:#000; color:#777777; }
.movie-header .title { font-size:1.75rem; font-weight:700; line-height:1; margin:0; padding:0; color:#fff;}
.movie-header .title-secondary { font-size:1.50rem; font-weight:300; line-height:1; margin:0; padding:0; }
.movie-header .tag { border:1px solid #777777; }
.movie-header .type.type-week0 { border:1px solid #ff6c6c; color:#ff6c6c; }
.movie-header .type.type-week1 { border:1px solid #ffbbbb; color:#ffbbbb; }
.movie-header .genre { font-weight:normal; }
.movie-header .rating { font-weight:normal; }
.movie-header .rating .rating-ro-im-18 {border-color:#fd9e99; color:#fd9e99;}


/** Ticket types & Products **/
#items-container .item-img { height:2.4rem; }
#items-container .item-name,
#items-container .item-name * { font-size:0.8rem; }
#items-container .item-selected { background-color: rgba(0, 255, 0, 0.3); }
#--items-container .item-selected a:focus { background:transparent;}
#items-container .item-selection { border-top:1px solid #cfcfcf; }
#items-container .item-selection .slot { }
#items-container .item-selection .slot.active { background-color: rgba(0, 255, 0, 0.3); }
#items-container .item-selection .slot.has-alternatives { cursor:pointer; }
#items-container .item-selection .slot-empty { background: #e6e6e6; width:100px; }
#items-container .item-selection .slot-empty i { font-size:2.4rem; margin:auto; opacity:0.3; }
#items-container .item-selection .item-name { display:inline-block; max-width:90px; }
#--items-container .item-selection .slot:first-child img { margin-top:-20px; }
#items-container .item-config { }
#items-container .item-config .slot-quantity { font-size:1.5rem; }
#items-container .item-config .item-option-name { font-size:0.8rem; }
#items-container .item-config .item-option-img { height:2.4rem; }

/* pentru cand includem slotul intr-o modala sau popover */
#items-container .popover { max-width:100%; }
#items-container .popover .item-slot { }
#items-container .popover .item-slot a { text-decoration:none; }
#items-container .popover .item-slot a:hover { background-color:rgba(225, 225, 225, 0.3); }
#items-container .popover .item-slot .slot-quantity { font-size:1.5rem; }
#items-container .popover .item-slot .item-option-name { font-size:0.8rem; }
#items-container .popover .item-slot .item-option-img { height:2.4rem; }


/** Seats **/
#seats-form { }
#seats-form .seats-wrapper { min-height:3rem; }
#seats-form .seats-names { font-weight:bold; }


/** Cart content **/
.cart-content {}
.cart-content .cart-row {}
.cart-content .cart-row-content { }
.cart-content .cart-row-title { font-weight:lighter; }
.cart-content .cart-row-content .desc.package { font-size:0.8rem; }
.cart-content .quantity {  font-size:3.8rem; line-height:3.2rem; letter-spacing:-0.2rem; text-transform:uppercase; }

.cart-content .voucher .code { font-weight:600; }

li.list-group-item.row-secondary.messages {background:#fd9e99; color:#333;}


/** Cart payments **/
.cart-content .payment.status-payed .price .value { font-weight:500; }
.cart-content .payment.status-error td { font-style:italic; text-decoration:line-through; }
.cart-content .payment.status-refunded td { font-style:italic; text-decoration:line-through; }
.cart-content .payment.status-cancelled td { font-style:italic; text-decoration:line-through; }
.cart-content .payment.status-pending td { font-style:italic; }


/** Payment types **/
.payment-types { margin:0 auto; }
.payment-types a { border:0; background-color:#F0F0F0; }
.payment-types a.disabled { opacity:0.5; }
.payment-types a .name { display:block; }
.payment-types a .desc { font-size:90%; }
.payment-types .payment-vodafone .name { background: transparent url(img/pay-vodafone.png) no-repeat top left; background-size: 114px 22px; width:114px; height:22px; overflow:hidden; text-indent:-9999px; }
.payment-types .payment-orange .brand { display:flex; }
.payment-types .payment-orange .name { background: transparent url(img/pay-orange.png) no-repeat top left;  background-size: 45px 45px; width:45px; height:45px; overflow:hidden; text-indent:-9999px; }
.payment-types .payment-orange .desc { vertical-align:top; max-width:150px; padding:0; margin:0 6px;  }
.payment-types .payment-libra .name { background:transparent url(img/logo_librapay.png) no-repeat top left; background-size: 211px 30px; width:211px; height:30px; overflow:hidden; text-indent:-9999px; }

.payment-types .payment-vivawallet .name { background:transparent url(img/logo_viva_wallet.png) no-repeat top left; background-size: 211px 30px; width:211px; height:30px; overflow:hidden; text-indent:-9999px; }
.payment-types .payment-vivawallet .desc {display: none;}

.payment-types .payment-revolut .name{
    background: url(img/logo_revolut.svg) no-repeat;
    background-position: -89px -5px;
    padding-top: 0;
    font-size: 34px;
    background-size: 300px 61px;
    width: 150px;
    text-indent: -9999px;
}


.payment-types .payment-revolutcard .name{
    background: url(img/logo_card.svg) no-repeat top left;
    font-size: 34px;
    background-size: 211px 30px;
    width: 211px;
    height: 30px;
    text-indent: -9999px;
}

.payment-types .payment-giftcard .name{
    background: url(img/logo_gift_card.png) no-repeat top left;
    font-size: 34px;
    background-size: 100px 47px;
    width: 100px;
    height: 47px;
    text-indent: -9999px;
}


/** Order **/
.order { padding-top:1px; }
.order .order-body { margin:2rem 3rem; }
.order .order-body.slim { padding:0 3rem; }
.order .order-body h5 { font-size:1rem; font-weight:normal; }
.order .order-body.status-pending .code-container { display:none; }
.order .order-body.status-cancelled .code { text-decoration:line-through; }
.order .order-body.status-cancelled .qrcode { opacity:0.5; }
.order .order-body.status-error .code { text-decoration:line-through; }
.order .order-body.status-error .qrcode { opacity:0.5; }
.order .order-body .tickets .show-ended { opacity:0.5; text-decoration:line-through; }
.order .order-body .bg-ticket { background-color:rgb(0, 185, 139); color:#fff; border-radius:0.25rem; }
.order .order-body.status-cancelled .bg-ticket { background-color:rgb(192, 192, 192); color:#fff; }
.order .order-body.show-ended .bg-ticket { background-color:rgb(192, 192, 192); color:#fff; }
.order .code-container { }
.order .code-container .left-col { padding:1.5rem; min-width:280px; border-right:1px dashed #fff; }
.order .code-container .right-col { padding:1.5rem; }
.order .code-container .right-col p { font-size:0.9rem; font-weight:100; }
.order .code-container img { max-width:250px; background-color:#fff; padding:0.5rem; }
.order .code-container .code { font-size:0.9rem; font-weight:100; }
.order .order-tools { background-color: #fbfbfd; }

.order.reservation .order-body .code { background-color:rgb(96, 253, 214); color:#000; font-size:2rem; font-weight:400; letter-spacing:4px; }
.order.reservation .order-body.status-cancelled .code { background-color:#cfcfcf; font-weight:200; text-decoration:line-through; }
.order.reservation .order-body.status-cancelled .ticket { text-decoration:line-through; }
.order.reservation .order-body.status-cancelled .ticket .name { font-weight:200; } 


@media (max-width: 767px) {
    .order .code-container .left-col { flex: 1 1 auto!important; border-right:0; border-bottom:1px dashed #fff; }
    .order .code-container .right-col { }
    .order .order-body { margin:1rem; }
    .order .order-tools { text-align:center; }
}


.checkout-error { }
.checkout-error .error-message { font-size:110%; }

/** Items **/
.ticketing-items { }
.ticketing-items .ticket.show-ended { opacity:0.5; }
.ticketing-items .icon {  }
.ticketing-items .name { font-weight:700; }
.ticketing-items .category { font-weight:700; padding:0.5rem; }
.ticketing-items .description { font-size:90%; }
.ticketing-items .subtext { display:block; font-size:90%; }
.ticketing-items .price { font-weight:500; }
.ticketing-items .item-actions { }
.ticketing-items .item-actions a {  width:44px; height:44px; line-height:44px; text-align:center; }
.ticketing-items .item-actions .item-qty { width: 44px; height: 44px; margin:3px 3px 3px 3px;  border-radius:2px;}
@media (max-width: 768px) and (orientation: portrait) {
    .ticketing-items .item-actions a {
        width: 32px;
        height: 32px;
        line-height: 32px;
    }

    .ticketing-items .item-actions .item-qty {
        width: 32px;
        height: 32px;
        margin: 3px;
        border-radius: 2px;
    }
}


.ticketing-items.tickettypes .left-col,
.ticketing-items.products .left-col { font-size:90%; }
.ticketing-items.tickettypes .description,
.ticketing-items.products .description { font-size:85%; }
.ticketing-items.order .list-group-item { padding:1rem; }



/** Voucher **/
.voucher { border:5px solid #CFCFCF; border-radius: 10px; }
.voucher .code { }
.voucher .value { font-weight:normal; }
.voucher .desc { }
.voucher .help { font-size:80%; }

/** Customer details form **/
.customer-form { }
.customer-form .title { font-size:1.5rem; margin-bottom:2rem; }
.customer-form .alert-info { border-radius:5px; text-align:left; }
.customer-form .back-arrow { font-size:1.2rem; font-weight:bold; line-height:1rem; }




.slot {width:150px!important; height:160px!important} 
.card-body {padding:0.3rem!important;} 
.item-selection{border:none!important;} 
.product-name{font-size:1.2rem!important;} 
.card{height:10rem; width:100%; align-items: center;} 
.card img[src$="no-image.png"] { width: 47% !important; }
.card-img-top {object-fit: contain; width:100%;} 
.slot-empty { width:150px!important;}
.item-row.border-bottom:last-of-type {border-bottom: 0px !important;}

@media (max-width: 600px) {
    .ticketing-items.tickettypes li, .ticketing-items.products li  {border-left:0; border-right:0;}
    .slot {width:30vw!important;} 
    .slot-empty { width:30vw!important;}
}