
#site-header-cart{
    position:absolute;
    opacity:0;
    display:none;
    transition:opacity 400ms ease-in;
    top: calc(100%);
    right:0;
    transform: translate(-100vw,-200%);
    width:400px;
    z-index:100;
    
    padding-top:2rem;
}

.site-header-cart-inner{
    border:1px solid black;
    background-color: #fff;
}

.nav_cart{
    position:relative;
}

.nav_cart:hover #site-header-cart{
    opacity:1;
    display:block;
    transform:translateY(0);
}

#site-header-cart a{
    width:fit-content;
    background-image: none;
    display: block;
    height: fit-content;
}

/*Calendar*/

#calendar{
    position:relative;
/*     width: 200vw;
    overflow: scroll; */
}

#calendar th,#calendar table{
    margin-bottom:0;
}
#calendar::before{
    content:'';
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background-color: rgba(250, 248, 243, 0.6);
    opacity:0;
    transition:opacity 400ms ease;
    z-index:-1;
}

#calendar::after{
    content:'';
    position:absolute;
    width:50px;
    height:50px;
    top:calc(50% - 25px);
    left:calc(50% - 25px);
    background: transparent;
    border:2px solid #1a1a1a;
    border-bottom:2px solid transparent;
    border-radius:50%;
    z-index:-1;
    animation: spin 800ms linear 0s infinite;
    opacity:0;
    transition:opacity 400ms ease;
}

#calendar.loading::before,#calendar.loading::after{
    z-index:10;
    opacity:1;
}

#calendar .hide{
   visibility: hidden;
}

#calendar .fc-daygrid-event, #calendar.mrfullcalendar .fc-timegrid-event{
    white-space: normal;
    padding:.25rem;
}

.fc-daygrid-event:hover,#calendar.mrfullcalendar .fc-timegrid-event:hover{
    cursor:pointer;
}

#calendar.fc .fc-scroller-harness{
    overflow: visible;
}

.fc-daygrid-event>h3,#calendar.mrfullcalendar .fc-timegrid-event  h3 {
        font-size: .75rem;
        line-height: 110%;
        font-weight: 400;
        width: 100%;
        display: block;
        overflow: hidden;
}

/* Form error message */
.register-message {
    color: #ff0000;
    background-color: #ffe6e6; 
    padding: 12px 16px;
    margin-bottom: 16px;
    border: 1px solid #ffcccc;
    border-radius: 4px;
}

   
@media screen and (min-width:700px) {
    .fc-daygrid-event>h3{
        font-size:1rem;
    }
    #calendar.mrfullcalendar .fc-timegrid-event  h3 {
        font-size: 1rem;
        font-weight: 400;
        line-height: 105%;
    }
}
.fc-daygrid-event .popup, .fc-timegrid-event .popup{
    opacity:0;
    position: absolute;
    z-index:-1;
    width:0;
    height:fit-content;
    top:0;
    left:0;
    width:320px;
    transition:opacity 400ms ease, z-index 10ms linear 400ms;
    background-color:#faf8f3;
    border:1px solid #1a1a1a;
    box-shadow:2px 2px 4px #1a1a1a;
    padding:.5rem;
    display:none;
}

@media screen and (min-width:700px) {
    .fc-daygrid-event .popup,.fc-timegrid-event .popup{
        top:1rem;
        left:1rem;
    }
}

.fc-daygrid-event .popup a,.fc-timegrid-event .popup a{
    padding-right:1rem;
    font-weight:700;
}

.title-link{
    text-decoration: none;
    
}

.read-more{
    padding-right:3rem!important;
    color:#c43626;
}


.fc-daygrid-event.open .popup,.fc-timegrid-event.open .popup{
    display: block;
    opacity:1;
    z-index:10;
    transition:opacity 400ms ease;
}

#calendar.fc .fc-button-primary:not(:disabled).fc-button-active, #calendar.fc .fc-button-primary:not(:disabled):active{
    background-color: #C43626;
    border-color: #C43626;
    color: #fff;
}

#calendar.mrfullcalendar.fc .fc-timegrid-slot{
    height:2.5em;
} 

#calendar.mrfullcalendar .fc-timegrid-event-harness>.fc-timegrid-event{
    inset:unset;
    top:0;
    bottom:0;
    left:0;
    right:unset;
}
@media screen and (min-width:700px) {
    .isPopped{
        background:#6B614F;
        color:#fff;
        z-index:100!important;
        overflow: visible;
    }
    .isPopped .popup{
        color:#1a1a1a;
    }
    .hasSelected{
        border:1px solid #6B614F;
        z-index:100;
    }
}
@keyframes spin {
    from{
        transform:rotate(0deg);
    }
    to{
        transform:rotate(360deg);
    }
}


button.close-pop-up {
    position: absolute;
    top:.5rem;
    right:.5rem;
    background-color:rgb(71, 93, 92);
    color:#fff;
    border:none;
    border-radius:100%;
    height:2rem;
    width:2rem;
    transition:background-color 200ms ease;
}
button.close-pop-up:hover{
    cursor:pointer;
    background-color:rgb(196, 54, 38);
}

.previews.cweitems .item.class_card_item .inside {
    background-color: #fff;
}

.previews.cweitems .item.class_card_item .inside a {
    background: #475D5C;
    width: fit-content;
    padding: 1rem 2rem;
    margin-top: 1rem;
    color: #fff;
}

.previews.cweitems .item.class_card_item .inside a:hover {
    background: #C43626;
    color: #fff;
}

.previewgrid .item.class_card_item .buttons {
    display: flex;
    gap: 1rem;
}


/*Basket Stuff*/
.woocommerce-page #content input#coupon_code {
    width: 20ch;
}

.colour1 .woocommerce  .shade4,
.colour1 .woocommerce  .shade4.button.alt{
	background:#6B614F;
	color:#fff;
    border-radius:0;
}

.colour2 .woocommerce  .shade4,
.colour2 .woocommerce  .shade4.button.alt{
	background:#525A38;
	color:#fff;
    border-radius:0;
}

.colour3 .woocommerce .shade4,
.colour3 .woocommerce .shade4.button.alt{
	background:#475D5C;
	color:#fff;
    border-radius:0;
}


.colour1 .woocommerce  .shade4.button.alt:hover,
.colour2 .woocommerce  .shade4.button.alt:hover,
.colour3 .woocommerce  .shade4.button.alt:hover,
.colour1 .woocommerce  .shade4.button.alt:hover,
.colour2 .woocommerce  .shade4.button.alt:hover,
.colour3 .woocommerce  .shade4.button.alt:hover
{
	color:#fff;
	background-color:#c43626;
}

#slots {
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
    background-color: #F0EADC;
    padding: 1rem 1rem 2rem 1rem;
}

.draggable_slot {
    /* margin: 1rem; */
    border: 1px solid black;
    width: fit-content;
    padding: 2rem;
    cursor: grab;
    transition: background-color 400ms ease;
}


.draggable_slot:hover {
    background-color: #CCC2A7;
}

#venue_booking {
    overflow: hidden;
    height:0;
    transition:  opacity 400ms ease-in;
    opacity: 0;
    display:none;
}

#venue_booking.open {
    display:block;
    height:100%;
    opacity: 1;
    border: 1px solid;
    margin-top: 1rem;
}

#option_booking label,#option_booking input,#option_booking select{
    transition: opacity 400ms ease,max-height 200ms ease;
    opacity:1;
    max-height:300px;
}

#calendar_option,#option_booking{
    transition: opacity 400ms ease,max-height 200ms ease;
    opacity:1;
    overflow: hidden;
}
#booking_user_options{
    transition: opacity 400ms ease,max-height 200ms ease;
    opacity:1;
    overflow: hidden;
}
.hide{
    opacity:0!important;
    max-height:0!important;
    display:none;
}

#venue_booking_views {
    padding: 1rem 1rem 2rem;
    background-color: #F0EADC;
    margin-bottom: 2rem;
}

#calendar_option {
    padding: 1rem;
    margin-bottom: 2rem;
}
#calendar_option.hide{
    padding: 0;
    margin-bottom: 0;
}

div#bookings {
    margin: 1rem;
    width: calc(100% - 2rem);
}



#calendar{
    --fc-button-bg-color:#525A38;
    --fc-button-border-color:#525A38;
    --fc-bg-event-color:#CCC2A7;
    --fc-today-bg-color:#F0EADC;
    --fc-button-hover-bg-color:#C43626;
    --fc-button-hover-border-color:#C43626;
    --fc-event-border-color:#C43626;
    --fc-event-bg-color:#C43626;
}

#calendar button{
    border-radius:0;
    transition: all 400ms ease;
}

#calendar .fc-timegrid-event,#calendar .fc-daygrid-event{
    border-radius:0;
}

#calendar h3{
    font-size:1rem;
}

#calendar:not(.mrfullcalendar) .fc-timegrid-event .fc-event-main{
    padding:.5rem;
    scrollbar-color: #6b614f #F0EADC;
    overflow:auto;
    cursor:grab;
}

  #calendar .fc-timegrid-event .fc-event-main::-webkit-scrollbar {
    width: 10px; /* Mostly for vertical scrollbars */
    height: 10px; /* Mostly for horizontal scrollbars */
  }
  #calendar .fc-timegrid-event .fc-event-main::-webkit-scrollbar-thumb { /* Foreground */
    background: #6b614f;
  }
  #calendar .fc-timegrid-event .fc-event-main::-webkit-scrollbar-track { /* Background */
    background: #F0EADC;
  }

/* .fc-timegrid-bg-harness:has(+.fc-timegrid-bg-harness) .fc-bg-event {
    background: transparent;
}
 */
 #calendar.fc .fc-bg-event{
    opacity:1;
 }
  button.remove-event {
    position: sticky;
    top: 0;
    left: 100%;
    cursor:pointer;
    border:0;
    background-color: transparent;
}

ul#response {
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 1rem;
    width: calc(100% - 2rem);
}

ul#response h3{
    margin-bottom:.5rem;
}

ul#response li {
    flex-basis: 25%;
    padding: 1rem;
    background-color: #CCC2A7;
}

#response dt{
    font-size:1rem;
    flex-basis: 15%;
}
#response dd{
    margin-bottom: 0;
    flex-basis: 75%;
}

#response dl {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

#bookings .buttons {
    padding: 1rem;
}

#bookings .buttons button {
    padding: 1rem;
    cursor: pointer;
    transition: background-color 400ms ease;
}

#bookings .buttons button:hover {
    background-color: #C43626;
}

#info_panel {
    padding: 1rem;
}

#info_panel:empty {
    padding: 0;
    max-height: 0;
    transition: max-height 400ms ease;
    overflow: hidden;
    margin: 0;
}

form#option_booking {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .5rem;
}

form#option_booking label {font-weight: 700;}

form#option_booking input,form#option_booking select {
    padding: .5rem;
}

form#option_booking input[type=submit] {
    transition: background-color 400ms ease;
    cursor: pointer;
}

form#option_booking input[type=submit]:hover {
    background-color: red;
    color: white;
}

.instructions {
    margin-top: 1rem;
    padding: 1rem 1rem 1px 1rem;
    background-color: #F0EADC;
}



dl.variation dt {
    font-size: 1rem;
}

div#booking_user_options {
    display: flex;
    flex-wrap: wrap;
    gap: 4rem;
    padding: 1rem;
    margin-top: 2rem;
    opacity: 1;
    border: 1px solid;
    padding: 1rem;
    margin-top: 2rem;
    justify-content: space-between;
}

#booking_user_options .sbbox {
    flex-basis: 100%;
}
@media screen and (min-width:1000px) {
    #booking_user_options .sbbox {
        flex-basis: 47%;
    }
}

#booking_user_options label {
    display: block;
}

#booking_user_options input:not([type=submit],[type=checkbox]) {
    width: 300px;
    max-width: 100%;
}

#booking_user_options .login-remember label {
    display: flex;
    align-items: center;
}

#booking_user_options .login-remember label>* {
    margin: 0 .5rem 0 0;
}


/*Subscribe form*/
.subscribeform form>div{
    display: grid;
    gap: 1rem;
    margin-top: 2rem;
    grid-template-columns: 100%;
    grid-template-rows: auto auto auto auto auto;
}
@media screen and (min-width:700px) {
    .subscribeform form>div{
        grid-template-columns: repeat(4,150px);
        grid-template-rows: auto auto;
    }
}
@media screen and (min-width:1200px) {
    .subscribeform form>div{
        grid-template-columns: repeat(4,200px);
    }
}

.subscribeform input {
    color: #fff;
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid #989A9E;
    width:1
}

@media screen and (min-width:700px) {
    .subscribeform input {
        width:150px;
    }
}

@media screen and (min-width:1200px) {
    .subscribeform input {
        width:200px;
    }
}

.subscribeform input::placeholder {
    color: #fff;
    /* font-weight: 100; */
}

.subscribeform input[type="submit"] {
    font-weight: 700;
    border: 1px solid #fff;
    border-radius: 25px;
    padding: 0 2rem;
    cursor: pointer;
    transition: border 400ms ease, color 400ms ease;
}

.subscribeform input[type="submit"]:hover {
    border: 1px solid #E9E462;
    color: #E9E462;
}

#interests {
    max-height: 0;
    overflow: hidden;
    transition: max-height 400ms ease;
}

#interests.open {
    max-height: 300px;
}

#interests label {
    display:  grid;
    grid-template-columns: 20px auto;
    margin-bottom: 1rem;
    gap: 5px;
}

#interests label:first-child {
    display: block;
}

@media screen and (min-width:700px) {
    #interests {
        grid-row: 2/3;
        grid-column: 1/4;
    }
}
    


.post_type_filters {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.post_type_filters p {
    margin: 0;
}

.post_type_filters button:hover {
    background-color: #C43626;
}

.post_type_filters button {
    border: none;
    transition: background-color 400ms ease;
}

.post_type_filters button.active {
    background-color: #C43626;
}


/*Checkboxes*/

  
  input[type="checkbox"] {
    /* Add if not using autoprefixer */
    -webkit-appearance: none;
    /* Remove most all native input styles */
    appearance: none;
    /* For iOS < 15 */
    background-color: var(--form-background);
    /* Not removed via appearance */
    margin: 0;
  
    font: inherit;
    color: currentColor;
    width: 1.15em;
    height: 1.15em;
    border: 0.15em solid currentColor;
    border-radius: 0.15em;
    transform: translateY(-0.075em);
  
    display: inline-grid;
    place-content: center;
  }
  
  input[type="checkbox"]::before {
    content: "";
    width: 0.65em;
    height: 0.65em;
    transform: scale(0);
    transform-origin: bottom left;
    transition: 120ms transform ease-in-out;
    box-shadow: inset 1em 1em var(--form-control-color);
    /* Windows High Contrast Mode */
    background-color: #000;
    align-self: center;

  }

  .woocommerce form .form-row .input-checkbox{
    display: inline-grid;
   

  }

  input[type="checkbox"]:checked::before {
    transform: scale(1);
  }
  
  input[type="checkbox"]:focus {
    outline: max(2px, 0.15em) solid currentColor;
    outline-offset: max(2px, 0.15em);
  }
  
/* Event sidebar and select menus etc*/

.hdk_events_select.display, .sbbin form, #class_card_validator {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.sbbin label{
    flex-basis: 100%;

}

.sbbin .payment_options{
    flex-basis: 100%;
}

.sbbin .payment_options label {
    margin-bottom: .5rem;
    display: inline-block;
    width: 100%;
}

.sbbin .slider::-webkit-slider-thumb {
    background: #6B614F; /* Green background */

}
  
.sbbin .slider::-moz-range-thumb {

    background: #6B614F; /* Green background */

}

.sbbin select, .sbbin input
 {
    padding: .5rem;
    background-color: #FAF8F3;
}
.sbbin input[type=range] {
    padding: 0.5rem 0;
    max-width: 99%;
}
.sbbin>.select2{
    max-height:unset;
    opacity:1
}

.sbbin input[type=number] {
    width: 6ch;
}

.sbbin select {
    display: block;
    font-size: 1rem;
    color: #1a1a1a;
    padding:0.5rem 2rem 0.5rem 0.5rem;
    width: 100%;
    max-width: 100%; /* useful when width is set to anything other than 100% */
    box-sizing: border-box;
    margin: 0;
    border: 1px solid #1a1a1a;
    box-shadow: none;
    border-radius: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: #FAF8F3;
    /* note: bg image below uses 2 urls. The first is an svg data uri for the arrow icon, and the second is the gradient. 
      for the icon, if you want to change the color, be sure to use `%23` instead of `#`, since it's a url. You can also swap in a different svg icon or an external image reference
      
    */
    background-image: url('img/down_arrow.svg');
    background-repeat: no-repeat;
    /* arrow icon position (1em from the right, 50% vertical) , then gradient position*/
    background-position: right .7em top 50%;
    /* icon size, then gradient */
    background-size: .65em auto;
  }
  /* Hide arrow icon in IE browsers */
  .sbbin select::-ms-expand {
    display: none;
  }
  /* Hover style */
  .sbbin select:hover {
    border-color: #888;
  }
  /* Focus style */
  .sbbin select:focus {
    border-color: #aaa;
    /* It'd be nice to use -webkit-focus-ring-color here but it doesn't work on box-shadow */
    box-shadow: 0 0 1px 3px #C43626;
    box-shadow: 0 0 0 3px -moz-mac-focusring;
    color: #1a1a1a; 
    outline: none;
  }
  
  /* Set options to normal weight */
  .sbbin select option {
    font-weight:normal;
  }

  .sbbin select>option:hover {
    background-color:#6B614F;
    color:white;
  }
  
  /* Support for rtl text, explicit support for Arabic and Hebrew */
  *[dir="rtl"] .sbbin select, :root:lang(ar) .sbbin select, :root:lang(iw) .sbbin select {
    background-position: left .7em top 50%, 0 0;
    padding: .6em .8em .5em 1.4em;
  }
  
  /* Disabled styles */
  .sbbin select:disabled, .sbbin select[aria-disabled=true] {
    color: graytext;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22graytext%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
      linear-gradient(to bottom, #ffffff 0%,#e5e5e5 100%);
  }
  
  .sbbin select:disabled:hover, .sbbin select[aria-disabled=true] {
    border-color: #aaa;
  }

 .buttons .add_to_cart_button~a {
    margin-left: 1rem;
    transition:all 400ms ease;
}
.hdk_events_select .buttons{
    flex-basis:100%;
}
.buttons .add_to_cart_button~a:hover {
    background-color:#C43626;
    color:#fff;
}

.sbbin input[type=submit]{
    background: #6B614F;
    color: #ffffff;
    border-color: #6B614F;
    transition: all 400ms ease;
    cursor: pointer;
}
.sbbin input[type=submit]:hover{
    background: #c43626;
    color: #ffffff;
    border-color: #c43626;
}

.payment_options .base {
    margin-bottom: 1rem;
    font-weight: 700;
}

/*Mini Cart*/


li.woocommerce-mini-cart-item.mini_cart_item img {
    width: 50px;
    height: 50px;
    object-fit: cover;
    grid-row: 1/3;
    grid-column: 2/3;
    background-color:#CCC2A7;
}

li.woocommerce-mini-cart-item.mini_cart_item {
    display: grid;
    gap: 5px;
    margin: 0 0 1rem 0;
    grid-template-columns: 15px 50px 1fr;
    grid-template-rows: auto auto;
}

ul.woocommerce-mini-cart.cart_list.product_list_widget {}

.site-header-cart-inner {
    padding: 1rem;
}

.site-header-cart-inner .remove.remove_from_cart_button {
    grid-row: 1/2;
    grid-column: 1/2;
    align-self: center;
    justify-self: center;
}

.site-header-cart-inner .quantity {
    grid-row: 2/3;
    grid-column: 3/4;
}

.woocommerce-mini-cart__buttons.buttons a {
    display: inline-block;
    padding: 0.5rem 1rem;
    border-width: 1px;
    border-style: solid;
    background: #6B614F;
    color: #ffffff;
    border-color: #6B614F;
    height: auto;
    transition: all 400ms ease;
}

.woocommerce-mini-cart__buttons.buttons a:hover{
    background-color: #C43626;
    color: #fff;
}


.woocommerce-mini-cart__buttons.buttons {
    display: flex;
    gap: 1rem;
}

.product_name {
    grid-column: 3/4;
    grid-row: 1/2;
}

.product_details {
    grid-row: 2/3;
    grid-column: 3/4;
}

.product_details dl, .product_details dt, .product_details dd, .product_details p {
    margin-bottom: 0;
}

/*Journal*/
#buythisissue .amount,#buythisissue label{
    display:block;
    margin:1rem 0;
}

#buythisissue .amount{
    font-weight:700;
}

.woocommerce-error::before{
    color:#C43626;
}

.sbbin ul.woocommerce-error{
    border-top-color:#C43626;
    margin:0 !important;
}


#open_waiting_list{
    background: #6B614F;
    color: #ffffff;
    border-color: #6B614F;
    display: inline-block;
    padding: 1.3em 1.7em;
    border-width: 1px;
    border-style: solid; 
    transition:all 400ms ease;
    margin-bottom:1rem;
    margin-top:1rem;
}   
#open_waiting_list:hover{
    background: #c43626;
    color: #ffffff;
    border-color: #c43626;
}

.advert{
    display:block;
    position:relative;
    width:350px;
    max-width:95vw;
    padding-top:100%;
    margin-bottom: 1rem;
}
.advert img{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
    object-fit: cover;
}

.sbbin form p {
    flex-basis: 100%;
}

.hdk_events_select+.hdk_events_select {
    margin-top: 2rem;
}

.friends {
    flex-basis: 100%;
}

.buttons.journal_buttons {
    display: flex;
    /* flex-direction: column; */
    justify-content: center;
    gap: .5rem;
    flex-wrap: wrap;
    text-align: center;
    height: fit-content;
    align-items: center;
}

.buttons.journal_buttons>h3 {
    flex-basis: 100%;
    height: fit-content;
}

.buttons.journal_buttons>span {
    flex-basis: 100%;
}

input#journal_quantity {
    width: 5ch;
    margin: 0;
}

.buttons.journal_buttons>.buttons {
    flex-basis: 100%;
    text-align: center;
    margin: 0;
}

select#subscription_select {
    margin-bottom: 1rem;
}

.coupon {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}


.woocommerce-error, .woocommerce-info, .woocommerce-message {
    border: 1px solid #1a1a1a;
    background-color: #CCC2A7;
    padding: 2rem;
}

.woocommerce-error{
    border-color:#C43626;
    background-color:#F0EADC;
}

.woocommerce-error::before, .woocommerce-info::before, .woocommerce-message::before {
    display: none;
}

/*Validator*/
div#validators .inner {
    display: flex;
    flex-wrap: wrap;
    gap: 2%;
}
@media screen and (min-width:1000px) {
    div#validators .inner .sbbox {
        flex-basis: 49%;
    }
}

div#validators .inner>h2 {
    flex-basis: 100%;
}

div#validators .inner .sbbox.ticket_table {
    flex-basis: 100%;
}

div#validators .inner .sbbox.ticket_table .button-secondary {
    display: none;
}

div#validators .inner .sbbox.ticket_table .button-secondary {
    display: none;
}

div#hdk_attendee_report table,div#hdk_waiting_list table {
    width: 100%;
    width: max-content;
}

div#hdk_attendee_report select.ticket_status_switcher {
    width: 19ch;
    display: inline-block;
    margin-left: 1rem;
    float:right;

}

.table_scroll {
    overflow-x: scroll;
}

div#hdk_attendee_report td, div#hdk_waiting_list td {
    border-bottom: 1px dotted black;
    word-break:break-all;
}

table.loading::after, form.loading::after {
    content: '';
    position: fixed;
    top: 50%;
    left: 50%;
    width: 2rem;
    height: 2rem;
    border: 1rem solid black;
    border-radius: 2rem;
    border-bottom: 1rem solid transparent;
    animation: spinner 800ms ease-in-out 0ms infinite;
}

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

/*Merch*/
.merch .iteminfo h3 {
    margin-bottom: 0;
}

/*Waiver*/
.waiver_text {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: opacity 400ms ease, max-height 200ms ease;
}

.waiver_text:target {
    max-height: 1000px;
    opacity: 1;
}

.grecaptcha-badge {
    display: none !important;
}

span.custom-gateway-fee {
    background-color: #989A9E;
    padding: 0.2rem;
    font-size: .8rem;
}


#booking_user_options .waiver_form.sbbox {
    flex-basis: 100%;
}

#booking_user_options .waiver_form.sbbox .waiver_para {
    max-width: 680px;
    margin-bottom:1rem;
}

#booking_user_options .waiver_form.sbbox .max-height {
    max-height: 55vh;
    overflow: hidden scroll;
}

.waiver_form .buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

input#journal_quantity {
    margin-bottom: 1rem;
    display: block;
}

div#buythisissue .buttons+h3 {
    margin-top: 2rem;
}

.duet-date__cell{
    padding-right:0;
}

#venue_booking:has(#calendar_option.hide) {
    overflow: visible;
}
#venue_booking:has(#calendar_option.hide) form#option_booking{
    overflow: visible;
}

form#option_booking .duet-date select {
    padding: 0 0.1rem;
    font-size: .85rem;
}

p.no_bookings {
    padding: 2rem 1rem;
    margin: 0;
    font-weight: 600;
}
.merchandise{
    display: grid;
    grid-template-columns:repeat(4,minmax(auto,300px));
    gap:2rem;
}

.merchandise .item{
   
}


.merchandise{
    grid-template-columns: repeat(3,minmax(auto,300px));
}


@media(max-width:1050px){
    .merchandise{
        grid-template-columns: repeat(2,minmax(auto,300px));
    }
}

@media(max-width:500px){
    .merchandise{
        grid-template-columns: 1fr;
    }
}
.merchandise .inside{
    display:grid;
    grid-template-rows: 300px auto auto auto 1fr;
    grid-template-columns: 1fr;
    height:100%;
    align-items: end;
}

.merchandise .inside .variations_form{
    display:grid;
    grid-template-rows: 1fr auto;
}

.merchandise .variations tr {
    display: flex;
    align-items: center;
    padding:0.5rem;
    border:1px solid #6b614f;
    margin-top:0.5rem
}
.merchandise .variations tr .label{
    padding-right:1rem;
}
.merchandise .variations tr th, .merchandise .variations tr td, .merchandise .variations tr select {
    margin: 0;
    padding-right:0;
}

p.stock.in-stock {
    display: none;
}

.merchandise .variations tr select {
    padding: 0 0.5rem;
    width: 20ch;
}

.merchandise .reset_variations{
    display:none !important;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt{
    color: #fff;
    background-color: #C43626;
    border-radius:0;
    font-size:1rem;
    transition:background-color 300ms ease;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover{
    background-color: #525A38;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled:hover{
    background-color: #6B614F;
    color: #fff;
}

