/*
* Commons.
*/

:root {
	/*--main-color: #e66200;*/
    --main-color: #e66200;
	--unnamed-color-45281b: #45281B;
}

a:focus {
    text-decoration: none;
}

a.label:focus, a.label:hover {
    color: #333;
}

.red {
    color: red;
}

html {
    scroll-behavior: smooth;
}

.btn {
    border-radius: 25px;
}

a[aria-expanded='true'] > .expand_caret {
    transform: rotate(-180deg);
}

.shadow-tile {
    box-shadow: 5px 5px 8px #ddd;
    background: #f9f9f9;
    padding: 10px;
    border-radius: 20px;
}

.preSaleSessionModeContainer {
    height: 55px;
}

.preSaleSessionModeContainer > div > a {
    color: #000;
}

.preSaleSessionModeContainer > div > a:hover, .preSaleSessionModeContainer > div > a:active, .preSaleSessionModeContainer > div > a:visited {
    text-decoration: none;
}

#banner {
    /*margin-left: auto;
    margin-right: auto;*/
    width: 150px;
    object-fit: cover;
    height: 150px;
}

input {
    border-radius: 0;
}

.zebra-tiles {
    clear: both;
}

.description {
    border-top: solid 1px #f0f0f0;
    padding: 20px;
    margin-bottom: 20px;
    color: #666;
    font-size: 0.9em;
    clear: both;
    box-shadow: 3px 3px 8px #ddd;
    background: #ffffff;
    border-radius: 20px;
}

.flags > .dropdown {
    z-index: 9;
    margin-right: 15px;
}

@media (min-width: 1199px) {
    .description {
        /*float: left;*/
        /*width: 91.66666667%;*/
    }
}

/*.controls {
    margin-top: 50px;
}*/

.selected-session {
    box-shadow: 5px 5px 8px #00000033;
    padding: 10px;
    color:#333;
    border-left: solid 5px #298813;
    font-weight: normal;
    background: #fff;
    border-radius: 20px;
    font-size: 100%;
}

.selected-session:not(:last-child) {
    margin-bottom: 20px;
}

.price-session {
    float: right;
    margin-top: -10px;
}

.price-session:hover {
    color: #23527c;
}

.agenda-tile {
    margin: 40px 0;
    clear: both;
}

.separator {
    line-height: 20px;
    clear: both;
}

.hidden {
    visibility: hidden;
}

.small {
    font-size: 0.8em;
}

.tiny {
    font-size: 0.6em;
}

.big {
    font-size: 1.2em;
}

.green {
    color: #7d7832;
}

.pink {
    color: #e0218a;
}

.bg-light-grey {
    background: #f9f9f9;
    border-top: solid 1px #f0f0f0;
}

.padding {
    padding: 10px;
}

.uppercase {
    text-transform: uppercase;
}

.btn-valid:active, .btn-valid, .btn-valid:hover, .btn-valid:visited, .btn-valid:focus {
    color: #fff !important;
    text-transform: uppercase;
    background: #5cb85c;
    margin-top: 40px;
    background: var(--main-color) !important;
    /*border-radius: 0;*/
}

.btn-valid:active {
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}

/*#infosForm .btn-valid, .cancel {
    margin-top: 30px;
}*/

/* Messages d'erreur */
.bg-danger > ul {
    list-style: none;
    padding-left: 0;
}

.btn-valid > i:before {
    content: "\f07a";
}

i.fa-trash-can:before {
    content: "\f2ed";
    color: #ddd;
    font-size: 1.5em;
    cursor: pointer;
}

.cancel, .cancel:visited, .cancel:active, .cancel:hover, .card-button, .card-button:visited {
    border-radius: 25px;
    background: #aaa !important;
    color: #fff !important;
    text-transform: uppercase;
    margin-top: 40px;
}

.cancel:active {
   box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}

@media (min-width: 1200px) {
    .cancel, .cancel:visited, .card-button, .card-button:visited {
        /*margin-left: 10%;*/
        margin-top: 40px;
    }
}

a.cancel {
    color: #fff;
}

.after-init::after {
    width: 0 !important;
}

/*
* Erreurs.
*/
/*#message {
	min-height: 44px;
	margin-top: 10px;
margin-bottom: 10px;
}*/

.bg-danger {
    border-left: solid 5px #a94442;
    padding: 20px;
    margin-top: 10px;
    margin-bottom: 10px;
    border-radius: 20px;
}

.bg-info {
    border-radius: 20px;
}

.bg-danger>label.error {
    font-weight: normal;
    font-size: 1em;
}

/* honeypot */
input[type="text"]#subject {
    display: none;
}

/*
* Stepper.
*/
/*.stepwizard-container {
	margin-top: 10px;
}*/
.stepwizard-step p {
    margin-top: 0px;
    color:#45281b;
}
.stepwizard-row {
    display: table-row;
}
.stepwizard {
    display: table;
    position: relative;
    margin-top: 20px;
    /*margin: 10px auto 0 auto;*/
    width: 100%;
    /*margin-bottom: 50px;*/
}
.stepwizard .btn.disabled, .stepwizard .btn[disabled], .stepwizard fieldset[disabled] .btn {
    opacity:1 !important;
    color:#bbb;
}

.stepwizard-step {
    display: table-cell;
    text-align: center;
    position: relative;
}
.stepwizard-step > div > i {
    font-size: 1.5em;
}
.stepwizard-row:before {
    top: 25px;
    bottom: 0;
    left: 0;
    position: absolute;
    content:" ";
    width: 100%;
    height: 1px;
    background-color: #eee;
    z-index: 0;
}

.active-step {
    color: var(--main-color);
    border-bottom: 1px solid var(--main-color);
    font-weight: bold;
}

.btn-circle, .btn-default:hover, .btn-default:active:hover {
    width: 40px;
    height: 40px;
    text-align: center;
    padding: 0;
    font-size: 12px;
    line-height: 1.428571429;
    border-radius: 20px;
    cursor: default;
    background-color: #fff;
    border: 1px solid #eee;
    box-shadow: none;
}

.btn-success.btn-circle {
    background: none;
    border: none;
    font-size: 20px;
    background: linear-gradient(to right, #ffffff99, #fff, #ffffff99);
}

.btn-default.btn-circle {
    background: none;
    border: none;
    font-size: 20px;
    background: linear-gradient(to right, #ffffff99, #fff, #ffffff99);
}

.btn-default[disabled]:hover {
    border-color: var(--main-color);
}

.btn-success, .btn-success:hover, .btn-success:active:hover {
    /*background: var(--main-color);*/
    border-color: var(--main-color);
    box-shadow: none;
}

.btn-success.btn-circle, .btn-success.btn-circle:hover, .btn-success.btn-circle:active:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
    background: linear-gradient(to right, #ffffff99, #fff, #ffffff99);
}

.main-color {
    color: var(--main-color);
}

/* Chevrons */
/*.chevron {
    position:relative;
    display:block;
    height:50px; !*Height should be double border thickness*!
}*/
@media (min-width: 992px) {
    .btn-infos::before,
    .btn-infos::after,
    .btn-payment::before,
    .btn-payment::after {
        position: absolute;
        display: block;
        content: "";
        border: 25px solid transparent; /*Adjust chevron size*/
    }

    /*Change the four instances of 'top' below to rotate chevron*/
    /*Use (top/right/bottom/left) where you want the back of the chevron to be*/
    .btn-infos::before, .btn-payment::before {
        left: -10px;
        border-left-color: var(--main-color); /*Chevron Color*/
    }

    .btn-infos::after, .btn-payment::after {
        left: -20px; /*Adjust thickness*/
        top: 0;
        border-left-color: #fff; /*Match chevron background colour*/
    }
}

.btn-cart > i, .btn-infos > i, .btn-payment > i {
    height: 23px;
    margin-top: 7px;
}

.btn-success.btn-cart > i:before {
    content: "\f07a";
    color: var(--main-color);
}
.btn-default.btn-cart > i:before {
    content: "\f07a";
    color: #ddd;
}
.btn-success.btn-infos > i:before {
    content: "\f46d";
    color: var(--main-color);
}
.btn-default.btn-infos > i:before {
    content: "\f46d";
    color: #ddd;
}
.btn-success.btn-payment > i:before {
    content: "\f09d";
    color: var(--main-color);
}
.btn-default.btn-payment > i:before {
    content: "\f09d";
    color: #ddd;
}

/*
* Cart.
*/
.cart-container {
    width: 18%;
    clear: both;Concerning th e
}

.cart {
    box-shadow: 5px 5px 8px #ddd;
    padding: 10px;
    background: #fff;
    text-align: center;
    border-radius: 20px;
    margin-top: 75px;
    min-width: 220px;
}

.cart-item {
    margin-top: 20px;
}

.total {
    font-weight: bold;
    padding: 5px;
    width: 65%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
    font-size: 27px;
    line-height: 49px;
    border-radius: 2px;
}

.total > span {
    line-height: 49px;
}

.total-title {
    font-size: 22px;
    margin-top: 20px;
}

.total-str {
    font-size: 10px;
}

.cart > .btn-valid {
    outline: none;
    margin-bottom: 25px;
}

.btn:hover, .btn:focus, .btn:active, .btn:active.focus, .btn:active:focus {
    outline: none;
}

/*
* Tiles.
*/
.zebra-tiles .tab-pane>div[name="price-tile"]:nth-child(odd)>.price-tile {
    background: #f9f9f9bb;
    border-top: solid 1px #f0f0f0;
}

.purchase-tile {
    border-radius: 3px;
    /*padding: 20px;*/
}

.price-tile {
    float: left;
    position: relative;
    min-height: 1px;
    padding-right: 20px;
    padding-left: 20px;
    /*  padding-right: 15px;
      padding-left: 15px;*/
    width: 100%;
    /*box-shadow: 3px 3px 8px #ddd;*/
    /*border-radius: 5px;*/
    padding-top: 35px;
    padding-bottom: 10px;
    /*padding-bottom: 15px;*/
}

.price-tile:not(:last-child) {
    border-bottom: 1px solid #ddd;
}

div[name="price-tile"]:last-child > .price-tile {
    margin-bottom: 40px;
    border-bottom: none;
}

/*.top-banner:after, .top-banner:before {
    display: table;
    content: " ";
}*/

.circle {
    border-radius: 50%;
    padding: 0.25em 0.8em;
    border: 1px solid #ddd;
    background: transparent;
    height: 50px;
    height: -webkit-fill-available;
    height: 45px;
    width: 45px;
    float: left;
}

.circle:hover {
    background: #f5f5f5;
}

.circle:active > i {
    color: #aaa;
}

.circle:active {
    border-color: #aaa;
}

.circle > i {
    color: #ddd;
}

/*@media (min-width: 992px) {
  .price-tile {
    width: 29,333333%;
    margin: 2%;
  }
}*/

@media (min-width: 992px) {
    #cart {
        position: fixed;
        top: 0;
        right: 20px;
    }

    .header {
        /*width: 90%;*/
    }

    /*.widget #sellForm {
        width: 80% !important;
        margin-left: 0;
        padding: 20px;
    }*/

    .sell, .infos, .seatmap, .payment {
        width: 80% !important;
    }
}

.price-img-container {
    float: right;
    margin-top: -15px;
    /*margin-right: 20px;*/
}

.price-dates {
    clear: left;
    padding-top: 10px;
    /*padding: 5px 200px 0px 0px;*/
    /*height: 55px;*/
    /*position: absolute;
    top: 85px;
    left: 20px;*/
    color: #777;
}

@media ( max-width : 991px) {
    /*.num-container {
        position: relative;
        right: 0;
        top: 5px;
        height: 50px;
        margin-left: auto;
        margin-right: auto;
    }*/

    .stepwizard-step {
        width: 100%;
    }

    .stepwizard-step:has(.btn-default) {
        display: none;
    }

    .cart-icon {
        display: none;
    }

    .top-banner {
        padding: 20px 0px 0px 0px;
    }

    .header {
        display: none;
    }

    .container {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }

    .cart-container {
        width: 100%;
    }

    .stepwizard {
        width: 100%;
    }

    .price {
        position: relative;
        right: 0;
        top: 0;
    }

    .price-tile {
        width: 100%;
    }
}

.price-img {
    object-fit: cover;
    /*width: 100%;*/
    width: 100px;
    /*height: 170px;*/
    border-radius: 10px;
    /*height: 330px;
    width: 328px;
    height: 328px;*/
    margin-left: 20px;
    margin-top: -10px;
}

.num-container > i {
    line-height: 45px;
}

.num-content {
    width: 235px;
    float: right;
}

input.input-num {
    height: 46px;
    width: 80px;
    border-radius: 0;
    text-align: center;
    margin-left: 15px;
    margin-right: 15px;
    float: left;
}

select.input-num {
    height: 46px;
    width: 80px;
    border-radius: 0;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

@media ( max-width : 440px) {
    input.input-num, select.input-num {
        width: 70px;
    }
}

input.input-num::placeholder {
    visibility: hidden;
}

.badge-notify{
    background: var(--main-color);
    position: relative;
    top: -12px;
    left: -16px;
    font-size: 16px;
}

.cart-icon {
    position: fixed;
    right: 5px;
    top: 65px;
    font-size: 2.5em;
    z-index: 9;
    color: #000;
}

@media ( max-width : 991px) {
    .fixed-top {
        position: fixed;
        z-index: 9;
        margin-top: 0 !important;
        top: 0;
        left: 0;
        width: 100%;
        background: #fff;
        padding: 10px;
        box-shadow: 10px 5px 8px #ddd;
    }
}

.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover, .nav-tabs>li>a.active, .nav-tabs>li>a.active:focus, .nav-tabs>li>a.active:hover {
    background: var(--main-color);
    color: #fff;
    border-color: var(--main-color);
}

.nav>li>a {
    border-radius: 20px;
    border: none;
    padding: 5px 20px 5px 20px;
    text-decoration: none;
}

h2 {
    font-size: 1.5em;
}

.nav-tabs {
    border-bottom: none;
    margin-top: 40px;
    /*margin-bottom: 20px;*/
}

.nav-tabs>li>a:hover {
    border: none;
    background-color: #dddddd55;
}

.header {
    border-bottom: 1px solid #999;
    /*width: 90%;*/
    text-align: center;
    height: 30px;
    height: 30px;
    color: #999;
    /*font-weight: bold;*/
}

.header-name {
    float: left;
    padding-left: 20px;
}

.header-price, .header-num  {
    float: right;
}

.header-price {
    margin-right: 40px;
}

.header-num  {
    width: 200px;
}

.price-name {
    float: left;
    font-size: 14px;
    padding-top: 12px;
    margin-bottom: 0px;
    /*margin-left: 20px;*/
    margin-right: 20px;
}

/*.num-container {
    float: right;
    right: 20px;
    top: 60px;
    width: 200px;
    !*padding-top: 10px;*!
}*/

.details {
    /*float: left;*/
    clear: left;
    font-size: 14px;
    padding-top: 10px;
    /*margin: 12px 0 10px 0;*/
    /*height: 40px;*/
    overflow-y: auto;
    /*padding: 0px 200px 0px 0px;*/
    color: #777;
    /*position: absolute;
    top: 55px;
    left: 15px;*/
    width: 100%;
}

.price {
    float: right;
    /*font-size: 18px;*/
    text-align: center;
    /*font-weight: bold;*/
    /*position: absolute;
    right: 70px;
    top: 120px;*/
    /*clear: both;*/
    padding-top: 12px;
    margin-right: 40px;
}

.chose-tickets {
    float: left;
}
.chose-tickets, .chose-calendar {
    /*float: left;*/
    line-height: 30px;
    text-transform: uppercase;
    font-size: 0.8em;
    padding-right: 20px;
}

/*#calendar {
    margin-top: 40px;
}*/


/*
* Informations acheteurs.
*/
label {
    font-size: 20px;
    font-weight: 300;
    font-family: 'Source Sans Pro',sans-serif;
    margin-bottom: 5px;
}

.cart-title > label > i:before {
    content: "\f07a";
}

.email-title > label > i:before {
    content: "\f0e0";
}

.confirm-title > label > i:before {
    content: "\f058";
}

.people-title > label > i:before {
    content: "\f500";
    color: #ddd;
}

.sumup > .people-title > label > i:before {
    color: #000;
}

.user-title > label > i:before {
    content: "\f007";
    color: #ddd;
}

/*.sumup>div>.people-title > i:before {
	color: #ddd;
}*/

.buyer {
    background: #f9f9f9;
    box-shadow: 5px 5px 8px #ddd;
    padding: 20px;
    border-radius: 20px;
}

.buyers {
    background: #f9f9f9;
    box-shadow: 5px 5px 8px #ddd;
    padding: 20px;
    border-radius: 20px;
    margin-top: 10px;
    margin-bottom: 20px;
}

#infosForm {
    /*margin: 10px 0;*/
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

input.form-control, select.form-control {
    height: 45px;
    border-radius: 30px;
}

.input-group .form-control:not(:first-child):not(:last-child) {
    border-radius: 0 20px 20px 0;
}

.input-group-addon:first-child {
    border-radius: 20px 0 0 20px;
}

#agreeLink {
    /*width: 75%;*/
    margin-top: 20px;
    /*margin-left: 10%;*/
    color: #aaa;
}

.conditions {
    color: #333;
    font-size: 1em;
}

.conditions > a {
    color: #333;
    text-decoration: underline;
}

/*
* Récapitulatif.
*/
.sumup {
    /*width: 75%;*/
    margin: 40px 0 0 0;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}

/*.sumup-cart, .cart-title {
    display: none;
}*/

.sumup-buyers > .row:not(:last-child) {
    margin-bottom: 15px;
}

.sumup-cart, .sumup-buyers {
    box-shadow: 5px 5px 8px #ddd;
    border-radius: 5px;
    background: #f9f9f9;
    padding: 20px;
    margin-top: 10px;
    margin-bottom: 10px;
    border-radius: 20px;
}

#paymentBlock {
    background: #e6620036;
    padding: 15px;
    margin-bottom: 10px;
    border-radius: 20px;
}

#paymentBlock .btn-valid {
    margin-top: 65px;
}

#freePaymentButton > .btn-valid {
    margin-right: 0;
}

.secure-logos {
    margin-top: 10px;
}

.paid-icon {
    font-size: 6em;
}

.thanks-block {
    text-align: center;
    width: 50%;
    margin: 10px auto 0 auto;
}

.thanks {
    /*margin-top: 20px;*/
    font-size: 2.5em;
    font-weight: bold;
    text-transform: uppercase;
}

.thanks-block > div > img {
    width: 200px;
}

#finish {
    background: #aaa;
    color: #fff;
}

/*
* Stripe.
*/
.StripeElement {
    height: 45px;
    border-radius: 20px;
}

/*
* Responsive.
*/

@media ( max-width : 440px) {
    .details {
        font-size: 9px;
    }
    .prices-group-title {
        font-size: 1.2em;
    }
    div.non-active > p > span.chevron::before {
        height: 12px;
        width: 12px;
    }
    .prices-group-detail {
        font-size: 14px;
    }
    .col-xs-3 {
        padding-left: 2px;
        padding-right: 2px;
    }
    .container {
        /*padding-left: 2px;
        padding-left: 2px;*/
    }
}

@media ( max-width : 767px) {
    .prices-tab {
        width: 100%;
        text-align: center;
    }

    .num-content {
        clear: both;
        float: none;
        margin-right: auto;
        margin-left: auto;
    }

    .price-img-container {
        float: none;
    }

    .price-img-container > img {
        margin-left: auto;
        margin-right: auto;
    }

    .price-name {
        float: none;
        text-align: center;
        margin-bottom: 10px;
        margin-right: 0;
    }

    .price-tile {
        padding-bottom: 40px;
    }

    .price {
        width: 100%;
        margin-right: 0;
    }

    .chose-tickets {
        display: none;
    }
}

@media ( max-width : 767px) {
    #infosForm {
        width: 100%;
    }
    #agreeLink {
        width: 98%;
        margin-left: 0;
    }
    .sumup {
        width: 98%;
    }
    .prices-group {
        cursor: pointer;
    }
    .details {
        min-height: 0;
    }
    .card-expiry-cvc-container > span {
        margin-top: 5px;
    }
    .purchase-tile {
        min-height: 0;
    }
    .col-xs-3 {
        padding-left: 5px;
        padding-right: 5px;
    }
    .prices-group:nth-child(1) {
        opacity: 1;
        width: 100%;
    }
    .prices-group {
        opacity: 0.3;
        width: 33%;
        margin-bottom: 25px;
    }
    .prices-group:nth-child(1)>.prices-group-detail {
        display: inline;
    }
    .prices-group>.prices-group-detail {
        display: none;
    }
    .phone-prefix {
        margin-bottom: 20px;
    }
}

/*@media ( min-width : 768px) {
    div:has(>input) {
        width: 50%;
    }
}*/

@media ( min-width : 768px) and (max-width: 991px) {
    #infosForm {
        width: 100%;
    }
    #agreeLink {
        width: 98%;
        margin-left: 0;
    }
    .sumup {
        width: 98%;
    }
    .prices-group-title {
        min-height: 70px;
    }
    .price-name {
        min-height: 45px;
    }
    .card-expiry-cvc-container > span {
        margin-top: 5px;
    }
    /*.details {
        min-height: 72px;
    }*/
}

@media ( min-width : 992px) and (max-width: 1199px) {
    #infosForm {
        width: 100%;
    }
    #agreeLink {
        width: 98%;
        margin-left: 0;
    }
    .sumup {
        width: 98%;
    }
    .price-name {
        min-height: 45px;
    }
    .details {
        min-height: 72px;
    }
}

/* Footer */
fieldset {
    border: 3px solid #e66200;
    color: #E66200;
    padding: 20px;
    border-radius: 3px;
    margin: 0 20px;
}

fieldset > legend {
    margin: 0 auto;
    font-size: 37px;
    text-transform: uppercase;
    width: auto;
    border-bottom: 0;
    padding: 0 20px 0 20px;
}

fieldset > div > div > div > h1 {
    font-size: 17px;
    text-transform: uppercase;
}

fieldset > div > p {
    font-size: 13px;
    padding-left: 20px;
    padding-right: 20px;
    color: #896354;
    margin-bottom: 20px;
}

fieldset > div > div.titles-table {
    display: table;
    height: 70px;
    margin: 0 auto;
}

fieldset > div > div > div.titles-cell {
    display: table-cell;
    vertical-align: middle;
}

/*
* Calendar de sessions.
*/
.fc-list-item.event-book {
    cursor: pointer;
}
.fc-event-dot {
    background-color: #7ce10f !important;
}

/*
* Placement.
*/
.seatCharts-row>div.no-seat-hidden.unavailable, .seatCharts-row>div.no-seat-hidden.unavailable:active, .seatCharts-row>div.no-seat-hidden.focused {
    background-color: rgba(255, 255, 255, 0);
    cursor: default;
}

.seatCharts-container>div.seatCharts-row {
    height: auto;
    clear: both;
}

div.seatCharts-container {
    width: 882px;
    border: 1px solid #ddd;
    border-radius: 10px;
    display: inline-block;
}

div.seatCharts-seat.selected {
    font-family: 'Glyphicons Halflings';
}

div.seatCharts-cell {
    margin: 1px !important;
}

.seatCharts-legendList {
    clear: both;
}

.seatCharts-legendItem {
    width: 40%;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}

div.seatCharts-seat.selected:before {
    content: "\e013";
    position: absolute;
    margin-top: -5px;
    color: #999;
}

.seatmap-sale-bg {
    z-index: -1;
    position: absolute;
}

.seatmap-form {
    margin: 10px 0;
    width: 40%;
    margin-left: auto;
    margin-right: auto;
}

/**
* Hack pour la gestion de la taille de l'iframe afin d'avoir la place suffisante dans la height d'iframe en cas de message d'erreur.
*/
.msg-infos {
    /*min-height: 65px;*/
    margin-top: 10px;
    margin-bottom: 10px;
    visibility: visible !important; /* pour override du hidden */
    display: block !important; /* pour override du hidden */
}
/*
.sellFrameHeightHack {
    float: left;
    height: 0px;
}
.infosFrameHeightHack {
    float: left;
    height: 55px;
}
.seatMapFrameHeightHack {
    float: left;
    height: 55px;
}
.paymentFrameHeightHack {
    float: left;
    height: 0px;
}*/

/**
* Calendrier.
*/
/*
* Loading skeleton for sessions in backoffice.
 */
.calendar-skeleton {
    /*margin-top: -50px;*/
    display: table;
    content: " ";
    width: 100%;
    margin-bottom: 20px;
}

.calendar-skeleton {
    .button-1 {
        height: 40px;
        width: 200px;
        float: left;
    }
    .button-2 {
        height: 40px;
        width: 100px;
        float: right;
        margin-left: 20px;
    }
    .button-3 {
        height: 40px;
        width: 50px;
        float: right;
        margin-left: 20px;
    }
    /*.button-4 {
        height: 40px;
        width: 100px;
        float: right;
    }*/
    .content {
        margin-top: 55px;
        height: 360px;
    }
}
.calendar-skeleton.is-loading {
    .button-1, .button-2, .button-3, .button-4, .content {
        background: #eee;
        background: linear-gradient(110deg, #ececec 8%, #f5f5f5 18%, #ececec 33%);
        border-radius: 5px;
        background-size: 200% 100%;
        animation: 1.5s shine linear infinite;
    }
}

@keyframes shine {
    to {
        background-position-x: -200%;
    }
}

.fc-event:hover {
    cursor: pointer;
}

.fc-button {
    background: var(--main-color) !important;
    border-radius: 20px !important;
    border: 0;
}

.fc-button-group > .fc-button:not(:last-child) {
    border-bottom-left-radius: 20px !important;
    border-top-left-radius: 20px !important;
    border-bottom-right-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border: 0;
}

.fc-button-group > .fc-button:not(:first-child) {
    border-bottom-right-radius: 20px !important;
    border-top-right-radius: 20px !important;
    border-bottom-left-radius: 0 !important;
    border-top-left-radius: 0 !important;
    border: 0;
}

.fc a, .fc a:hover {
    text-decoration: none;
    color: #333;
}

.fc {
    margin-bottom: 20px;
}

.fc .fc-button-primary:focus {
    box-shadow: none !important;
}
/*

.discount {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}*/

/*.navbar {
 display: none;
}*/

.tab-pane {
    margin-top: 50px;
}

.infos, .payment {
    width: 100% !important;
}

.sumup {
    width: 100% !important;
}

.container {
    margin-bottom: 50px;
    padding-bottom: 20px;
}

.purchase-content .container {
    width: 100%;
}

div.disabled {
    pointer-events: none;
    opacity: 0.5;
    /* Optional: Add additional styles to convey disabled state */
    background-color: #f2f2f2;
    color: #999;
    cursor: not-allowed;
}

/**
* Override bootstrap.
 */
.form-floating > input, .form-floating > select {
    padding-bottom: 5px !important;
}

.toast {
    z-index: 99;
}

.toast .btn-close {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
}

.toast-info {
    background: #198754;
    color: #fff;
}
.toast-info i:before {
    content: "\f164";
}
.toast-error {
    background: #dc3545;
    color: #fff;
}
.toast-error i:before {
    content: "\f5b4";
}

.form-control.error {
    border-color: var(--bs-form-invalid-border-color);
    padding-right: calc(1.5em + .75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(.375em + .1875rem) center;
    background-size: calc(.75em + .375rem) calc(.75em + .375rem);
}

.form-control.valid {
    border-color: var(--bs-form-valid-border-color);
    padding-right: calc(1.5em + .75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(.375em + .1875rem) center;
    background-size: calc(.75em + .375rem) calc(.75em + .375rem);
}

.spinner-border-sm {
    --bs-spinner-border-width: 0.05em;
}

.form-floating > span > input {
	min-height: calc(3.5rem + calc(var(--bs-border-width) * 2))
}
