main > .container, main > .container-fluid
{
    padding: 70px 15px 20px;
}

.footer {
    background-color: #f5f5f5;
    font-size: .9em;
    height: 60px;
}

.footer > .container, .footer > .container-fluid {
    padding-right: 15px;
    padding-left: 15px;
}

.not-set {
    color: #c55;
    font-style: italic;
}

/* add sorting icons to gridview sort links */
a.asc:after, a.desc:after {
    content: '';
    left: 3px;
    display: inline-block;
    width: 0;
    height: 0;
    border: solid 5px transparent;
    margin: 4px 4px 2px 4px;
    background: transparent;
}

a.asc:after {
    border-bottom: solid 7px #212529;
    border-top-width: 0;
}

a.desc:after {
    border-top: solid 7px #212529;
    border-bottom-width: 0;
}

.grid-view th,
.grid-view td:last-child {
    white-space: nowrap;
}

.grid-view .filters input,
.grid-view .filters select {
    min-width: 50px;
}

.hint-block {
    display: block;
    margin-top: 5px;
    color: #999;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

/* align the logout "link" (button in form) of the navbar */
.navbar form > button.logout {
    padding-top: 7px;
    color: rgba(0, 0, 0, 0.55);
}

@media(max-width:767px) {
    .navbar form > button.logout {
        display:block;
        text-align: left;
        width: 100%;
        padding: 10px 0;
    }
}

.navbar form > button.logout:focus,
.navbar form > button.logout:hover {
    text-decoration: none;
    color: rgba(0, 0, 0, 0.75);
}

.navbar form > button.logout:focus {
    outline: none;
}

/* style breadcrumb widget as in previous bootstrap versions */
.breadcrumb {
    background-color: var(--bs-gray-200);
    border-radius: .25rem;
    padding: .75rem 1rem;
}

.breadcrumb-item > a
{
    text-decoration: none;
}

input::placeholder {
  color: black;
  opacity: 0.5;
  font-style: italic;
}

/* Login page */
.login-bg {
    min-height: 100vh;
    background: linear-gradient(160deg, #87CEEB 0%, #B0E0FF 50%, #E0F4FF 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.login-card {
    width: 100%;
    max-width: 400px;
    border-radius: .75rem;
    box-shadow: 0 8px 32px rgba(0,0,0,.15);
}

/* Dashboard sections */
.dashboard-section-header {
    cursor: pointer;
    user-select: none;
}

/* ── Ecwid Checkout Custom Overlay (step 1 only) ─────────────────── */

.ecwid-popup-content {
    position: relative !important;
}

#lmfp-overlay {
    background: #fff;
    border-radius: 4px;
}

.lmfp-co-inner {
    text-align: center;
    padding: 1.5rem;
    max-width: 320px;
    width: 100%;
}

.lmfp-co-product {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.lmfp-co-price-each {
    color: #6c757d;
    font-size: 0.95rem;
    margin-bottom: 1.75rem;
}

.lmfp-co-qty-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
    margin-bottom: 1rem;
}

.lmfp-co-qty-btn {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 2px solid #dee2e6;
    background: #fff;
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.15s, color 0.15s;
}

.lmfp-co-qty-btn:hover {
    border-color: #0d6efd;
    color: #0d6efd;
}

.lmfp-co-qty-val {
    font-size: 2rem;
    font-weight: 700;
    min-width: 2.5rem;
    display: inline-block;
}

.lmfp-co-total {
    font-size: 1.1rem;
    margin-bottom: 1.75rem;
    color: #212529;
}

.lmfp-co-pay-btn {
    display: block;
    width: 100%;
    padding: 0.85rem 1rem;
    background: #198754;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 1.05rem;
    font-weight: 600;
    cursor: pointer;
    margin-bottom: 0.85rem;
    transition: background 0.15s;
}

.lmfp-co-pay-btn:hover:not(:disabled) {
    background: #157347;
}

.lmfp-co-pay-btn:disabled {
    opacity: 0.65;
    cursor: default;
}

.lmfp-co-secure {
    color: #6c757d;
    font-size: 0.8rem;
    margin-bottom: 0;
}

/* ── Ecwid Buy Button – Checkout Modal Overrides ──────────────────── */

/* Hide newsletter/marketing opt-in */
.ec-cart-email__accept-marketing,
.ecwid-checkout-accept-marketing,
.ec-cart__email-accept-marketing {
    display: none !important;
}

/* Hide "What team member helped you" custom field */
.ec-cart-step__section--person,
.ec-cf-person,
.ecwid-cf-person,
.ec-form__row--person {
    display: none !important;
}

/* Hide "Apply a coupon or a gift card" section */
.ec-cart__discount-coupon,
.ec-cart__coupon,
.ecwid-productBrowser-coupon,
.ec-cart-step__coupon {
    display: none !important;
}

/* Hide "Looking for more? Continue shopping" link */
.ec-cart__continue-shopping,
.ecwid-productBrowser-back,
.ec-cart-step__continue-shopping {
    display: none !important;
}

/* Hide "Back to store" link in checkout step 2 (close modal instead to reset properly) */
.ec-cart-step__back,
.ec-cart__back-link,
.ecwid-cart-step-back,
.ec-cart-step--address .ec-cart-step__back-button {
    display: none !important;
}

/* Hide floating mini-cart badge (bottom-right corner) */
.ec-minicart,
.ecwid-minicart,
.ec-cart-widget {
    display: none !important;
}

/* Mobile: full-width checkout overlay */
@media (max-width: 767px) {
    .ecwid-popup-container,
    .ecwid-popup,
    .ec-wrap {
        max-width: 100% !important;
        width: 100% !important;
        border-radius: 0 !important;
        left: 0 !important;
        right: 0 !important;
        margin: 0 !important;
    }
}

/* Minimum tap target for primary checkout button */
.ec-cart__button,
.gwt-Button.ecwid-btn-checkout,
.ecwid-btn--checkout {
    min-height: 44px !important;
}

/* Hide Ecwid step-2 custom field sections by their stable generated IDs (confirmed via DevTools) */
.ec-cart-step__section--02sph6t, /* Weight Limit Details */
.ec-cart-step__section--caeavnl, /* Flight Refund Policy */
.ec-cart-step__section--sm43jlg, /* Minor Participants */
.ec-cart-step__section--gxi89yr, /* Need a gift certificate? */
.ec-cart-step__section--qxi89yr, /* Need a gift certificate? (alt) */
.ec-cart-step__section--hazcdzy  /* gift certificate recipient name */
{
    display: none !important;
}

/* Hide Order Comments field */
.ec-form__row--order_comments,
.ec-form__row--order-comments,
.ec-cf-order_comments,
.ec-cf-order-comments,
.ec-cart__body--comment,
.ec-cart-step__section--comment {
    display: none !important;
}

/* Hide Weight Limit Details custom field */
.ec-form__row--weight_limit_details,
.ec-form__row--weight-limit-details,
.ec-cf-weight_limit_details,
.ec-cf-weight-limit-details,
.ec-cf-weight_limit,
.ec-cf-weight-limit {
    display: none !important;
}

/* Hide Flight Refund Policy custom field */
.ec-form__row--flight_refund_policy,
.ec-form__row--flight-refund-policy,
.ec-cf-flight_refund_policy,
.ec-cf-flight-refund-policy,
.ec-cf-refund_policy,
.ec-cf-refund-policy {
    display: none !important;
}