/* global styles */
body {
    font-family: "Patrick Hand", cursive;
    font-weight: 400;
    font-style: normal;
    background-color: #fff0f5;
    color: #444;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: 200;
    color: #fee2f5;
    transition: color 0.3s ease;
}
h1:hover, h2:hover, h3:hover, h4:hover, h5:hover, h6:hover {
    color: #ec89f0;
}
.tooltip-inner {
    max-width: 280px;
    font-size: 14px;
    background-color: #ffe4ec;
    color: #333;
    border-radius: 8px;
}

/* Buttons with gradient */
.btn-primary {
    background: linear-gradient(135deg, #feeaec, #fee2f5);
    border: none;
    color: #fff;
    border-radius: 25px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 8px rgba(255, 182, 193, 0.3);
}
.btn-primary:hover {
    background: linear-gradient(135deg, #ff9db0, #ffc2d1);
    transform: scale(1.05);
    box-shadow: 0 6px 12px rgba(255, 155, 176, 0.4);
}

/* admin styles */
.admin-header {
    background: #ffe4ec;
    padding: 10px 0;
    margin-bottom: 30px;
    border-bottom: 1px solid #f8cdd6;
}
.admin-footer {
    margin-top: 50px;
    background: #fff0f5;
    color: #777;
    padding: 20px 0;
    font-size: 13px;
    border-top: 1px solid #f8cdd6;
}
.config-left .nav-pills>li>a {
    transition: all 0.3s ease;
}
.config-left .nav-pills>li.active>a, 
.nav-pills>li.active>a:hover, 
.nav-pills>li.active>a:focus {
    background: #fff;
    border: 1px solid #f8cdd6;
    color: #ff6fae;
    border-right: none;
    border-radius: 10px 0 0 10px;
    margin-right: -1px;
    z-index: 9999;
    box-shadow: inset 0 0 5px rgba(255, 182, 193, 0.4);
}
.config-left .nav-pills>li>a:hover, 
.config-left .nav-pills>li>a:focus {
    border-radius: 10px 0 0 10px;
    color: #ff6fae;
    transform: translateX(3px);
}
.config-right {
    border: 1px solid #f8cdd6;
    background: linear-gradient(180deg, #fffafc 0%, #ffe4ec 100%);
    border-radius: 20px;
    box-shadow: 0 4px 12px rgba(255, 182, 193, 0.3);
    padding: 20px 25px;
    margin-top: 20px;
    margin-bottom: 20px;
    transition: all 0.3s ease;
}
.config-right:hover {
    box-shadow: 0 8px 16px rgba(255, 182, 193, 0.4);
}
.config-right .form-group {
    margin-bottom: 20px;
}
.config-right button.btn-primary {
    border-radius: 25px;
    background: linear-gradient(135deg, #ffb6c1, #ffd1dc);
    border: none;
    box-shadow: 0 3px 6px rgba(255, 182, 193, 0.3);
    transition: all 0.3s ease;
}
.config-right button.btn-primary:hover {
    background: linear-gradient(135deg, #ff9db0, #ffc2d1);
    transform: scale(1.05);
    box-shadow: 0 4px 10px rgba(255, 155, 176, 0.4);
}
table tbody tr td {
    vertical-align: middle !important;
    transition: background-color 0.3s ease;
}
table tbody tr:hover td {
    background-color: #fff5fa;
}
.notification-header {
    display: none;
    margin: -30px 0 30px;
}

/* front page styles */
.terminal-body {
    background: #fffafc;
    margin: 20px 0;
}
.terminal-wrapper {
    background: linear-gradient(180deg, #ffffff, #ffe9f8);
    border: 1px solid #f8cdd6;
    padding: 30px 40px;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(255, 182, 193, 0.2);
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}
.terminal-wrapper:hover {
    box-shadow: 0 0 15px rgba(255, 155, 176, 0.3);
    transform: translateY(-2px);
}
.terminal-wrapper > .page-header {
    margin-top: 0;
    border-radius: 10px;
    overflow: hidden;
}
.terminal-wrapper > .page-header > h1,
.terminal-wrapper > .page-header > h2 {
    margin-top: 0;
    color: #ff6fae;
}

/* New colorprimary class */
.colorprimary {
    color: #fff !important;
    padding: 10px 10px;
    margin-top: 0.3em;
    border-radius: 20px;
    display: inline-block;
    font-weight: bold;
}

/* Submit button */
.submit-button {
    font-size: 22px;
    background: linear-gradient(135deg, #f8c3c8, #f0c1e1);
    border: none;
    border-radius: 25px;
    color: #fff;
    padding: 10px 20px;
    transition: background-color 0.3s ease, transform 0.2s ease;
    box-shadow: 0 4px 8px rgba(255, 182, 193, 0.3);
}
.submit-button:hover {
    background: linear-gradient(135deg, #f8c3c8, #f0c1e1);
    transform: scale(1.05);
    box-shadow: 0 6px 12px rgba(255, 155, 176, 0.4);
}
.submit-button:active {
    transform: scale(0.97);
}
.submit-button .total {
    display: none;
    font-size: 17px;
    margin-bottom: 5px;
}
.submit-button .total.show {
    display: block;
}

/* Credit card image */
.card-type-image {
    background: url('../images/credit-cards.jpg') 0 0 no-repeat;
    width: 37px;
    height: 23px;
    position: absolute;
    right: 56px;
    top: 6px;
    z-index: 9999;
}
.card-type-image.mastercard { background-position: 0 0; }
.card-type-image.visa { background-position: -42px 0; }
.card-type-image.amex { background-position: -84px 0; }
.card-type-image.discover { background-position: -126px 0; }
.card-type-image.none { display: none; }

.paypal-logo {
    width: 230px;
    margin-top: -10px;
}

/* Link effects */
a {
    color: #ff6fae;
    transition: color 0.3s ease, text-shadow 0.3s ease;
}
a:hover {
    color: #ff4d94;
    text-shadow: 0 0 5px rgba(255, 182, 193, 0.5);
}

/* responsive design */
@media (max-width: 991px) {
    .terminal-body {
        margin: 0;
    }
    .terminal-wrapper {
        padding: 20px 10px;
    }
    .page-header h2 {
        font-size: 40px;
    }
    hr {
        margin: 40px 0;
    }
}

/* Split page-header into two columns */
.page-header .row {
    display: flex;
    margin: 0;
}
.page-header .header-left {
    flex: 1;
    background: linear-gradient(135deg, #feeaec, #fee2f5);
    padding: 15px;
    color: #fff;
    text-align: center;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}
.page-header .header-right {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
    border-radius: 0 10px 10px 0;
}

/* ribbon divider */
.ribbon-divider {
    background: url('../../ribbon.gif') repeat-x center;
    background-size: 80% auto;
    height: 110px;
    margin-left: -40px;
    margin-right: -40px;
}

.fontnormal {
	color: #000;
}

.subcolor {
	color: #99246c;
	font-weight: bold;
}

#card-element {
    background: #fef2ff;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 8px;
    max-width: 400px;
    margin-top: 5px;
}
#card-errors {
    color: #fa755a;
    margin-top: 8px;
    font-size: 14px;
}

.payment-option {
    display: inline-block;
    border: 2px solid transparent;
    border-radius: 15px;
    padding: 10px;
    cursor: pointer;
    transition: border-color 0.3s, background-color 0.3s;
    margin-left: 10px;
}
.payment-option input[type="radio"] {
    display: none;
}
.payment-option.selected {
    background-color: white;
    border-color: #ccc;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.payment-option img {
    border-radius: 10px;
}