.fields-wrapper-verify {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
}

.field-group-verify {
    display: flex;
}

.field-group-verify input {
    margin-right: 5px;
    text-align: center;
    width: 50px;
    border: solid 1px darkgrey;
    background-color: #f8f8f8;
}

.hyphen-verify {
    margin: 0 10px;
}



.font-size-lg{font-size:1.2em!important}.font-size-md{font-size:1em!important}.font-size-sm{font-size:.8em!important}.font-size-xs{font-size:.6em!important}
.strong {
    font-weight: bold;
}

.mt-1{margin-top:1em!important}.mt-2{margin-top:2em}.mt-3{margin-top:3em}.mt-4{margin-top:4em}.mt-5{margin-top:5em}
.mb-1{margin-bottom:1em!important}.mb-2{margin-bottom:2em}.mb-3{margin-bottom:3em}.mb-4{margin-bottom:4em}.mb-5{margin-bottom:5em}
.ml-1{margin-left:1em!important}.ml-2{margin-left:2em}.ml-3{margin-left:3em}.ml-4{margin-left:4em}.ml-5{margin-left:5em}
.mr-1{margin-right:1em!important}.mr-2{margin-right:2em}.mr-3{margin-right:3em}.mr-4{margin-right:4em}.mr-5{margin-right:5em}

.pt-1{padding-top:1em!important}.pt-2{padding-top:2em!important}.pt-3{padding-top:3em!important}.pt-4{padding-top:4em!important}.pt-5{padding-top:5em!important}
.pb-1{padding-bottom:1em!important}.pb-2{padding-bottom:2em!important}.pb-3{padding-bottom:3em!important}.pb-4{padding-bottom:4em!important}.pb-5{padding-bottom:5em!important}
.pl-1{padding-left:1em!important}.pl-2{padding-left:2em!important}.pl-3{padding-left:3em!important}.pl-4{padding-left:4em!important}.pl-5{padding-left:5em!important}
.pr-1{padding-right:1em!important}.pr-2{padding-right:2em!important}.pr-3{padding-right:3em!important}.pr-4{padding-right:4em!important}.pr-5{padding-right:5em!important}

.text-left{text-align:left!important}.text-center{text-align:center!important}.text-right{text-align:right!important}

/* cart page ItemLocationsController.items */
.wrapper {
    width: 899px;
    background-color: #fff;
    border: 0;
    margin: 0 auto
}

.register {
    margin-left: 7px
}

.register img {
    margin: 0 auto
}

.cart {
    margin-top: 5px
}

.cart .empty {
    padding-right: 8px
}

.content-listings {
    padding: 10px
}

.text-below-cart {
    width: 100%
}

.program-listing {
    width: 100%;
    margin-top: 20px;
    clear: both
}

.program-header {
    height: 36px;
}

.program-box {
    border: 1px solid #cecece;
    margin-left: 13px;
    display: inline-table;
    margin-bottom: 4%;
    padding: 5px;
    width: 21.4%;
    min-height: 315px
}

.box-add-cart {
    width: 100%
}

.box-add {
    width: 100%;
    display: inline-block
}

.box-add input[type=submit] {
    float: right
}

.box-cart {
    width: 100%;
    display: inline-block
}

.main-container .large-3 {
    border: 1px solid #cecece;
    margin-bottom: 10px
}
/* end cart page ItemLocationsController.items */

.pull-left{float:left!important}.pull-right{float:right!important}

/* mail chimp */
#mc_embed_signup {
    background: #fff;
    clear: left;
    font: 14px Helvetica, Arial, sans-serif;
}

#mc_embed_signup .mc-field-group {
    padding-bottom: 0 !important;
}
/* end mail chimp */

/* Custom button styles */
.btn-primary {
    border: 5px solid #D83171;
    border-radius: 50px;
    box-shadow: 0px 4px 0px 0px rgba(228, 50, 146, 0.5);
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 1rem;
    padding: 0.3rem 1rem;
    display: inline-block;
    background-color: #D83171;
    color: #fff;
    font-family: 'Oswald', sans-serif;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.25s ease-out, color 0.25s ease-out, box-shadow 0.25s ease-out;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: #b32962;
    border-color: #b32962;
    color: #fff;
    box-shadow: 0px 2px 0px 0px rgba(228, 50, 146, 0.3);
}

.btn-primary:focus {
    outline: none;
    box-shadow: 0px 0px 0px 3px rgba(216, 49, 113, 0.5);
}

[data-whatinput=mouse] .btn-primary, 
[data-whatinput=mouse] button {
    outline: 0;
}

.btn-tertiary {
    border: 5px solid #64BABC;
    border-radius: 50px;
    box-shadow: 0px 4px 0px 0px rgba(100, 186, 188, 0.5);
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 1rem;
    padding: 0.3rem 1rem;
    display: inline-block;
    background-color: #64BABC;
    color: #fff;
    font-family: 'Oswald', sans-serif;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.25s ease-out, color 0.25s ease-out, box-shadow 0.25s ease-out;
}

.btn-tertiary:hover,
.btn-tertiary:focus,
.btn-tertiary:active {
    background-color: #51A1A2;
    border-color: #51A1A2;
    color: #fff;
    box-shadow: 0px 2px 0px 0px rgba(100, 186, 188, 0.3);
}

.btn-tertiary:focus {
    outline: none;
    box-shadow: 0px 0px 0px 3px rgba(100, 186, 188, 0.5);
}

/* LaunchYourKid Theme Styles */
:root {
    --lyk-teal: #6ec3c3;
    --lyk-pink: #f5a3c7;      /* Lighter pink - matches dashboard */
    --lyk-green: #8dd14c;
    --lyk-purple: #9b59b6;    /* Softer purple - matches dashboard */
    --lyk-yellow: #f1c40f;
    --lyk-orange: #f3bd48;
    --lyk-red: #e74c3c;
    --lyk-blue: #3498db;
}

/* Hero Section */
.hero-section {
    background: linear-gradient(135deg, var(--lyk-teal) 0%, var(--lyk-pink) 100%);
    position: relative;
    overflow: hidden;
}

.hero-bg-pattern {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0.1;
    background-image: repeating-linear-gradient(45deg, 
        transparent, 
        transparent 10px, 
        rgba(255,255,255,.1) 10px, 
        rgba(255,255,255,.1) 20px);
}

.hero-content {
    position: relative;
    z-index: 1;
}

.hero-logo {
    position: relative;
    z-index: 1;
}

/* Color utility classes */
.bg-lyk-teal { background-color: var(--lyk-teal) !important; }
.bg-lyk-pink { background-color: var(--lyk-pink) !important; }
.bg-lyk-green { background-color: var(--lyk-green) !important; }
.bg-lyk-purple { background-color: var(--lyk-purple) !important; }
.bg-lyk-yellow { background-color: var(--lyk-yellow) !important; }
.bg-lyk-orange { background-color: var(--lyk-orange) !important; }

.text-lyk-teal { color: var(--lyk-teal) !important; }
.text-lyk-pink { color: var(--lyk-pink) !important; }
.text-lyk-green { color: var(--lyk-green) !important; }
.text-lyk-purple { color: var(--lyk-purple) !important; }
.text-lyk-yellow { color: var(--lyk-yellow) !important; }
.text-lyk-orange { color: var(--lyk-orange) !important; }

.border-lyk-teal { border-color: var(--lyk-teal) !important; }
.border-lyk-pink { border-color: var(--lyk-pink) !important; }
.border-lyk-green { border-color: var(--lyk-green) !important; }
.border-lyk-purple { border-color: var(--lyk-purple) !important; }
.border-lyk-yellow { border-color: var(--lyk-yellow) !important; }
.border-lyk-orange { border-color: var(--lyk-orange) !important; }

/* Dashboard Cards */
.dashboard-card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border-width: 2px !important;
}

.dashboard-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0,0,0,0.1) !important;
}

.dashboard-card .card-header {
    font-weight: 600;
    border-radius: 0 !important;
}

/* Icon Circle for Dashboard Cards */
.icon-circle {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    flex-shrink: 0;
    font-size: 1.125rem;
}

/* Badge styles */
.badge-lyk-teal { 
    background-color: var(--lyk-teal) !important;
    color: white !important;
}

.badge-lyk-pink {
    background-color: var(--lyk-pink) !important;
    color: white !important;
}

.badge-lyk-green {
    background-color: var(--lyk-green) !important; 
    color: white !important;
}

.badge-lyk-purple {
    background-color: var(--lyk-purple) !important;
    color: white !important;
}

.badge-lyk-yellow {
    background-color: var(--lyk-yellow) !important;
    color: #333 !important;
}

.badge-lyk-orange {
    background-color: var(--lyk-orange) !important;
    color: white !important;
}

/* Item Cards for shop */
.item-card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border-width: 2px !important;
    height: 100%;
}

.item-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0,0,0,0.1) !important;
}

.item-card .card-header {
    font-weight: 600;
    border-radius: 0 !important;
}

/* Empty state styling */
.empty-state-icon {
    font-size: 4rem;
    opacity: 0.3;
    margin-bottom: 1rem;
}

/* Table responsive wrapper */
.table-responsive {
    border-radius: 0.25rem;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

/* Custom alert styles */
.alert-lyk-info {
    background-color: #e8f5f5;
    border-color: var(--lyk-teal);
    color: #2c5c5c;
}

.btn-quaternary {
    border: 5px solid #624496;
    border-radius: 50px;
    box-shadow: 0px 4px 0px 0px rgba(98, 68, 150, 0.5);
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 1rem;
    padding: 0.3rem 1rem;
    display: inline-block;
    background-color: #624496;
    color: #fff;
    font-family: 'Oswald', sans-serif;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.25s ease-out, color 0.25s ease-out, box-shadow 0.25s ease-out;
}

.btn-quaternary:hover,
.btn-quaternary:focus,
.btn-quaternary:active {
    background-color: #4E3677;
    border-color: #4E3677;
    color: #fff;
    box-shadow: 0px 2px 0px 0px rgba(98, 68, 150, 0.3);
}

.btn-quaternary:focus {
    outline: none;
    box-shadow: 0px 0px 0px 3px rgba(98, 68, 150, 0.5);
}
/* end Custom button styles */

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

.add-to-cart-button {
    background-color: #ff69b4; /* Pink background */
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 20px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.add-to-cart-button:hover {
    background-color: #ff1493; /* Darker pink on hover */
}

.add-to-cart-button:active {
    background-color: #4169e1; /* Blue when clicked */
}

.label-shopping-cart {
    font-weight: bold !important;
    color: #624496 !important;
}
.label-shopping-cart-disclaimer-checkbox {
    font-weight: normal;
    color: #624496 !important;
    font-weight: bold;
}
.label-shopping-cart {
    font-weight: normal;
    color: #624496 !important;
}



/* cart choose-child messages for ajax calls */
.cart-success-message {
    color: #23A9B2; /* Same color used in the success cases */
    position: relative;
    bottom: 5px;
    top: 1px;
    font-weight: 700;
}

.cart-error-message {
    color: #EF2C72; /* Same color used in the error cases */
    position: relative;
    bottom: 5px;
    top: 1px;
    font-weight: 700;
}

a.cart-remove-program-link {
    color: #EF2C72; /* Matches the error message color */
    text-decoration: underline;
    cursor: pointer;
}
/* end cart choose-child messages for ajax calls */

.border-bottom {
    border-bottom: 2px solid #64babc !important;
}
.border-top {
    border-top: 2px solid #64babc !important;
}





/* TOP NAVBAR FOR LOGGED-IN USERS */
.myuser-nav-top-navbar {
    background-color: #51a1a2 !important;
}

.myuser-nav-top-navbar-nav .myuser-nav-top-nav-link {
    color: #ffffff;
    font-weight: 500;
    transition: color 0.3s ease;
}

.myuser-nav-top-navbar-nav .myuser-nav-top-nav-link:hover {
    color: #004d4f;
}

.myuser-nav-top-navbar-toggler {
    border-color: #ffffff;
}

.myuser-nav-top-navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

@media (max-width: 991.98px) {
    .myuser-nav-top-navbar-collapse {
        background-color: #64babc;
        padding: 1rem;
    }
}
/* END TOP NAVBAR FOR LOGGED-IN USERS */




/* TABLES */

/* Base table styles */
.table {
    width: 100%;
    margin-bottom: 1rem;
    color: #495057;
    background-color: transparent;
    border-collapse: collapse;
}

.table th,
.table td {
    padding: 0.75rem;
    vertical-align: top;
    border-top: 1px solid #dee2e6;
}

.table thead th {
    vertical-align: bottom;
    border-bottom: 2px solid #dee2e6;
    font-weight: 600;
    /* Remove background-color from here */
}

/* New styles for gradient header */
.table thead {
    background: linear-gradient(to bottom, #f8f9fa 0%, #e9ecef 100%);
}

.table thead th {
    padding: 1rem 0.75rem; /* Slightly increase padding for better appearance */
    color: #495057;
    text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.5); /* Add subtle text shadow for depth */
}

.table tbody + tbody {
    border-top: 2px solid #dee2e6;
}

/* Bordered table */
.table-bordered {
    border: 1px solid #dee2e6;
}

.table-bordered th,
.table-bordered td {
    border: 1px solid #dee2e6;
}

/* Striped rows */
.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(0, 0, 0, 0.05);
}

/* Hover effect */
.table-hover tbody tr:hover {
    background-color: rgba(0, 0, 0, 0.075);
}

/* Responsive table */
.table-responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Table sizes */
.table-sm th,
.table-sm td {
    padding: 0.3rem;
}

.table-md th,
.table-md td {
    padding: 0.5rem;
}

.table-lg th,
.table-lg td {
    padding: 1rem;
}

/* Custom styles similar to Porto Admin */
.table th {
    text-transform: uppercase;
    font-size: 0.85rem;
    font-weight: 600;
}

.table td {
    font-size: 0.9rem;
}

.table .fas {
    font-size: 1rem;
}

.table .text-success {
    color: #47a447;
}

.table .text-danger {
    color: #d2322d;
}

/* Pagination footer */
.card-footer {
    background-color: #f8f9fa;
    border-top: 1px solid #dee2e6;
    padding: 0.75rem 1.25rem;
}

/* Add box shadow for a card-like effect */
.table-responsive {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    border-radius: 4px;
}



/* Porto Admin Breadcrumb Delimiters */
.breadcrumb {
    display: flex;
    align-items: center;
    margin: 0px 0px 18px 0px;
    padding: 0;
}

.breadcrumb li {
    position: relative;
    display: inline-flex;
    align-items: center;
    line-height: 1;
    vertical-align: middle;
    padding-right: 10px;
    padding-left: 4px;
}

.breadcrumb li:not(:last-child):after {
    content: '/';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    color: #77797c;
    line-height: 1;
}

.breadcrumb li.active {
    font-weight: 700 !important;
    color: #000000 !important;
    /* font-size: 16px !important; */
    line-height: 1;
}

.breadcrumb li a {
    line-height: 1;
    display: inline-flex;
    align-items: center;
}

.breadcrumb li a.active {
    font-weight: 700 !important;
}


