html {
    -webkit-tap-highlight-color: rgba(195,215,117,0);
}

.datepicker.dropdown-menu {
    border-radius: 10px;
    border-color: #e0d4f7;
    box-shadow: 0 4px 16px rgba(114, 73, 205, 0.15);
}
.datepicker table tr td,
.datepicker table tr th {
    border-radius: 6px;
}
.datepicker .datepicker-switch,
.datepicker .prev,
.datepicker .next {
    color: #397961;
    font-weight: 600;
}
.datepicker thead tr:first-child th:hover,
.datepicker tfoot tr th:hover {
    background: #f0e9ff;
    color: #397961;
}
.datepicker table tr td.day:hover,
.datepicker table tr td.day.focused {
    background: #f0e9ff;
    color: #397961;
}
.datepicker table tr td.today,
.datepicker table tr td.today:hover {
    background-color: #e9d8fd;
    border-color: #c4a0f5;
    color: #5a34a8;
    font-weight: 600;
}
.datepicker table tr td.active,
.datepicker table tr td.active:hover,
.datepicker table tr td span.active,
.datepicker table tr td span.active:hover {
    background-color: #397961 !important;
    border-color: #5a34a8 !important;
    color: #fff !important;
    text-shadow: none;
}
.datepicker table tr td.old,
.datepicker table tr td.new {
    color: #c4b5e8;
}
.input-group.date .input-group-addon {
    background: #f0e9ff;
    border-color: #c4a0f5;
    color: #397961;
    cursor: pointer;
}

.list-group a {
    color: #333;
    border-color: #ede8f8;
}
.list-group a:hover {
    background-color: #f0e9ff;
    color: #397961;
    border-color: #ede8f8;
}

.list-group a.active,
.list-group a.active:hover,
.list-group a:focus {
    background-color: #f0e9ff;
    color: #397961;
}

/*.btn .fa:hover,*/
/*button .fa:hover,*/
/*.btn-group .fa:hover,*/
/*.input-group-btn .fa:hover,*/
/*.button-group .fa:hover {*/
/*    color: #397961;*/
/*}*/

/*.btn-qty .fa:hover {*/
/*    color: inherit !important;*/
/*}*/

body {
    color: #000;
    background-image: none;
    background-attachment: fixed;
}
.h3,
h3 {
    color: #000;
}
.h1, .h2, .h5,
h1, h2, h5 {
    color: #000;
}
.h4, .h6,
h4, h6 {
    color: #000;
}
.h4.modal-title,
h4.modal-title {
    color: initial !important;
}
a {
    color: #000;
}

a:hover {
    color: #397961 ;
}

.article-descr-col
,.article-content
,.popup-login-modal
,.tab-content
,.contact-details
,#login
,#login label
{
    color: #424242;
}
.article-descr-col h3
,.article-content h3
,.popup-login-modal h3
,.tab-content h3
,.contact-details h3
,#login h3
{
    color: #424242;
}
.article-descr-col h1, .article-descr-col h2, .article-descr-col h5
,.article-content h1, .article-content h2, .article-content h5
,.popup-login-modal h1, .popup-login-modal h2, .popup-login-modal h5
,.tab-content h1, .tab-content h2, .tab-content h5
,.contact-details h1, .contact-details h2, .contact-details h5
,#login h1, #login h2, #login h5
{
    color: #424242;
}
.article-descr-col h4, .article-descr-col h6
,.article-content h4, .article-content h6
,.popup-login-modal h4, .popup-login-modal h6
,.tab-content h4, .tab-content h6
,.contact-details h4, .contact-details h6
,#login h4, #login h6
{
    color: #424242;
}
.refine_categories li {
    list-style: none;
    padding-left: 25px;
    background: url(../../image/bullet.svg) left 6px no-repeat;
    background-size: 10px 10px;
}
.report-status {
    text-align: center;
    color: red;
    font-size: 12px;
}
.control-label {
    text-align: left !important;
}
/*#headerDiv{
	background-color:white;
	border-bottom: 1px solid #eee;
	box-shadow: 0px 0px 30px rgba(66, 70, 59, 0.95)!important;
}*/
legend {
    color: #585f57;
}
a.thumbnail.active, a.thumbnail:focus, a.thumbnail:hover {
    border-color: #517860;
}
.alert-info {
    color: #45788a;
    background-color: #f6f6f6;
    border-color: #c5cdbb;
}
/* Gradient to all drop down menus */
.dropdown-menu li > a:hover {
    color: #FFF;
    background-color: #888;
    background-image: none;
}


/* ── Modern tables – new_themes ── */
.table-striped > tbody > tr:nth-of-type(odd),
.table-striped > tbody > tr:nth-of-type(even) {
    background-color: transparent;
}
.table-striped > tbody > tr:hover {
    background-color: #f7f7fb !important;
}

.table-bordered {
    border-collapse: collapse;
    border-spacing: 0;
    border-radius: 0;
    border: none;
    box-shadow: none;
}
.table-bordered th,
.table-bordered td {
    border: none !important;
    border-bottom: 1px solid #efefef !important;
    padding: 8px 10px;
}
.table-bordered thead th {
    background: #fff !important;
    border-bottom: 2px solid #e0e0e0 !important;
    color: #7b8794;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 10px 10px;
    text-align: left;
}
.table-bordered tbody tr:last-child td {
    border-bottom: none !important;
}

/* Wrap tables in a card-like container */
.table-responsive {
    border-radius: 10px;
    box-shadow: 0 1px 8px rgba(60,60,80,0.07);
    border: 1px solid #ececec;
    /* overflow: hidden; */
}
/* But don't double-style list-layout's table-responsive (has own shadow) */
.list-layout .table-responsive {
    border: none;
    box-shadow: none;
    border-radius: 0;
    overflow: visible;
}
#cart > .btn,
#cart_offer > .btn{
    font-size: 16px;
}
#cart .dropdown-menu {
    background: #fefefe;
}
#cart_offer .dropdown-menu {
    background: #fefefe;
    min-width: 100%;
}
caption {
    color: #397961!important;
}

/* top */
#top {
    background-color: #397961;
    border-bottom: 1px solid #397961;
    padding: 4px 0px 3px 0;
    margin: 0 0 20px 0;
    min-height: 40px;
}
#top .btn-link, .top-links li, .top-links a {
    color: #eee;
    text-shadow: 0 1px 0 #fff;
    text-decoration: none;
}

#top .dropdown-menu li{
    padding: 0px 8px 0px 8px;
}
#top .dropdown-menu li > a {
   margin-top: 5%;
}

#top .dropdown-menu li > a:hover {
    color: #FFF;
    background-color: #397961;
    border-radius: 10px;
}
.top-links .dropdown-menu a:hover {
    color: #FFF;
}
#top .dropdown-menu {
    border-radius: 10px;
    overflow: hidden;
}
/* menu */
#menu {
    background-color: #F1F5F9;
    background-image: none;
    border-color: #F1F5F9;
    border-radius: 10px;
}
#menu .nav > li > a {
    color: #000;
    text-shadow: none;
    font-weight: 600;
    font-size: 110%;
}

#menu .dropdown-menu li{
    padding: 0px 8px 0px 8px;
}

#menu .nav > li > a:hover,
#menu .nav > li.open > a {
    border-color: #F1F5F9!important;
    color: #397961!important;
    background-color: #F1F5F9;
}

#menu [data-header-offer] a {
    color: #fff !important;
}

#menu .dropdown-menu {
    background-color: #fff;
    border-radius: 10px;
}
#menu .dropdown-inner a {
    color: #000;
    background-color: #fff;
    border-radius: 10px;
    margin-top: 5%;
    font-size: medium;
}
#menu .dropdown-inner li a:hover {
    color: #fff!important;
    background-color: #397961;
    background-image: none;
    border-radius: 10px;
}
#menu .see-all {
    border-top: 1px solid #397961;
}
#menu .see-all:hover, #menu .see-all:focus {
    color: #fff!important;
    background-color: #397961;
    background-image: none;
    border-radius: 10px;
}
#menu [data-header-offer] {
	background: #397961;
	border-radius: 12px;
}
#menu [data-header-offer] a {
  color: #fff;
}

.custom-hdr-cls h3
,.custom-hdr-cls .h3 {
    font-weight: 600;
    margin: 12px 0px;
}
footer {
    padding: 0 !important;
    max-width: 95% !important;
    overflow: hidden;
}
footer .footer-inner {
    border-radius: 10px;
    margin: 2%;
    padding: 1%;
}
footer h5 {
    font-size: 13px;
    font-weight: bold;
    color: #e3e3e3;
}
footer a {
    color: #e0e2e5;
}
footer a:hover, footer a:focus {
    text-decoration: underline;
    color: #e0e2e5;
}

.btn-default {
    color: #000;
    background-color: #fff;
    background-image: none;
    border: 1px solid #000;
    text-shadow: none;
    font-weight: 500;
}
.btn-default.active.focus, .btn-default.active:focus, .btn-default.active:hover, .btn-default:active.focus, .btn-default:active:focus, .btn-default:active:hover, .open>.dropdown-toggle.btn-default.focus, .open>.dropdown-toggle.btn-default:focus, .open>.dropdown-toggle.btn-default:hover
,.btn-default.active, .btn-default:active, .open>.dropdown-toggle.btn-default
,.btn-default:hover, .btn-default:focus
{
    color: #000;
    background-color: #e1e3e3;
    border: 1px solid #000;
}
.btn-default.disabled, .btn-default.disabled.active, .btn-default.disabled.focus, .btn-default.disabled:active, .btn-default.disabled:focus, .btn-default.disabled:hover, .btn-default[disabled], .btn-default[disabled].active, .btn-default[disabled].focus, .btn-default[disabled]:active, .btn-default[disabled]:focus, .btn-default[disabled]:hover, fieldset[disabled] .btn-default, fieldset[disabled] .btn-default.active, fieldset[disabled] .btn-default.focus, fieldset[disabled] .btn-default:active, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default:hover {
    background-color: #e3dfdf;
    color: #999;
    border-color: #ccc;
    text-shadow: none;
    opacity: 1;
}
.btn-inverse {
    background-color: #F1F5F9;
    background-image: none;
    border-color: #F1F5F9;
    border-radius: 10px;
}
.btn-inverse:hover, .btn-inverse:active, .btn-inverse.active, .btn-inverse.disabled, .btn-inverse[disabled] {
    color: #397961!important;
    border-color: #397961!important;
    background-image: none;
    background-color: #F1F5F9 !important;
}
.open > .btn-inverse.btn {
    color: #397961 !important;
    background-color: #F1F5F9 !important;
}
.open > .btn-inverse.btn .fa{
    color: #397961;
}
.open > .btn-inverse.btn:hover {
    color: #397961;
}
.open > .btn-inverse.btn:hover .fa{
    color: #397961;
}
/* product list */
.product-thumb {
    background-color: white;
}

/* ── Grid card – rounded corners, spacing & hover lift ── */
.grid-layout .product-layout.product-grid {
    margin-bottom: 20px;
    padding-left: 10px !important;
    padding-right: 10px !important;
    position: relative;
    z-index: 1;
}
/* When a card is hovered, bring it above all siblings so popup is never clipped */
.grid-layout .product-layout.product-grid:hover {
    z-index: 100;
}
.grid-layout .product-thumb.product_row {
    border-radius: 20px;
    overflow: visible;
    position: relative;
    box-shadow: 0 2px 12px rgba(114, 73, 205, 0.10);
    border: 1px solid rgba(114, 73, 205, 0.12);
    transition: box-shadow 0.2s, transform 0.2s;
}
/* Restore rounded corners on image without clipping the popup */
.grid-layout .product-thumb.product_row > .image {
    border-radius: 20px 20px 0 0;
    overflow: hidden;
}
/* Popup box – white card with shadow, anchored below the icon */
.grid-layout .product-thumb.product_row .box-on-hov {
    position: relative;
    display: inline-block;
}
.grid-layout .product-thumb.product_row .box-read-full {
    position: absolute;
    right: 0;
    top: 100%;
    margin-top: 6px;
    z-index: 9999;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.18);
    min-width: 220px;
    padding: 10px;
    white-space: normal;
    margin-left: 0;
}
/* Arrow pointing up toward the icon */
.grid-layout .product-thumb.product_row .box-read-full:after {
    content: "";
    display: block;
    position: absolute;
    top: -10px;
    right: 12px;
    width: 0;
    height: 0;
    border-width: 0 9px 10px;
    border-style: solid;
    border-color: transparent transparent #ddd transparent;
}
.grid-layout .product-thumb.product_row:hover {
    box-shadow: 0 6px 24px rgba(114, 73, 205, 0.18);
    transform: translateY(-3px);
}

/* ── Wishlist button – floating top-right corner ── */
.grid-layout .product-thumb.product_row .wishlist-float-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 10;
    border-radius: 50% !important;
    width: 36px;
    height: 36px;
    padding: 0;
    background: rgba(255, 255, 255, 0.92) !important;
    border: 1px solid rgba(114, 73, 205, 0.25) !important;
    color: #e0396c !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.13);
    transition: background 0.2s, color 0.2s, transform 0.15s, border-color 0.2s;
}
.grid-layout .product-thumb.product_row .wishlist-float-btn:hover {
    background: #e0396c !important;
    color: #fff !important;
    border-color: #e0396c !important;
    transform: scale(1.12);
}

/* ── Bottom action bar – compact, rounded ── */
.grid-layout .product-thumb.product_row .input-group {
    display: flex !important;
    align-items: center;
    gap: 5px;
    padding: 8px 10px;
    border-top: 1px solid #f0ebff;
    background: #f8f7ff;
    margin: 0 !important;
    border-radius: 0 0 20px 20px;
}

/* Quantity input – small & rounded */
.grid-layout .product-thumb.product_row .input-group .form-control.product_quantity {
    display: block !important;
    flex: 1 1 0;
    min-width: 0;
    max-width: 52px;
    height: 32px !important;
    padding: 4px 6px;
    font-size: 13px;
    text-align: center;
    border-radius: 8px !important;
    border: 1px solid #ddd !important;
    box-shadow: none !important;
    transition: border-color 0.18s;
    /* hide the native number spinner arrows */
    -moz-appearance: textfield;
}
.grid-layout .product-thumb.product_row .input-group .form-control.product_quantity::-webkit-inner-spin-button,
.grid-layout .product-thumb.product_row .input-group .form-control.product_quantity::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.grid-layout .product-thumb.product_row .input-group .form-control.product_quantity:focus {
    border-color: #397961 !important;
    outline: none;
}

/* ── +/- qty buttons (list-layout table) ── */
.list-layout .list-qty-stepper .btn-qty {
    border-radius: 50% !important;
    height: 26px !important;
    width: 26px !important;
    min-width: 26px;
    padding: 0 !important;
    font-size: 11px !important;
    background: #f0ebff !important;
    color: #397961 !important;
    border: 1px solid rgba(114, 73, 205, 0.30) !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, transform 0.12s;
}
.list-layout .list-qty-stepper .btn-qty:hover {
    background: #397961 !important;
    color: #fff !important;
    transform: scale(1.12);
}
.list-layout .list-qty-stepper .input-group-btn {
    width: auto !important;
    vertical-align: middle !important;
}
.list-layout .list-qty-stepper.input-group {
    display: flex !important;
    align-items: center;
    flex-wrap: nowrap;
}
.list-layout .list-qty-stepper .form-control.product_quantity {
    min-width: 50px;
    max-width: 70px;
}

/* ── +/- qty buttons ── */
.grid-layout .product-thumb.product_row .input-group-btn .btn-qty {
    border-radius: 50% !important;
    height: 28px !important;
    width: 28px !important;
    min-width: 28px;
    padding: 0 !important;
    font-size: 11px !important;
    background: #f0ebff !important;
    color: #397961 !important;
    border: 1px solid rgba(114, 73, 205, 0.30) !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, transform 0.12s;
}
.grid-layout .product-thumb.product_row .input-group-btn .btn-qty:hover {
    background: #397961 !important;
    color: #fff !important;
    transform: scale(1.12);
}

/* Button group – override Bootstrap table layout */
.grid-layout .product-thumb.product_row .input-group-btn {
    display: flex !important;
    gap: 5px;
    width: auto !important;
    white-space: normal !important;
    font-size: inherit !important;
    vertical-align: unset !important;
}

/* All action buttons – round pill */
.grid-layout .product-thumb.product_row .input-group-btn .btn {
    border-radius: 50% !important;
    height: 32px !important;
    width: 32px !important;
    min-width: 32px;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    font-size: 13px !important;
    float: none !important;
    margin-left: 0 !important;
    position: relative !important;
    z-index: 1 !important;
    transition: background 0.18s, color 0.18s, transform 0.15s, border-color 0.18s;
}

/* Cart button – brand filled */
.grid-layout .product-thumb.product_row .input-group-btn .button-cart {
    background: #397961 !important;
    color: #fff !important;
    border-color: #397961 !important;
}
.grid-layout .product-thumb.product_row .input-group-btn .button-cart:hover {
    background: #325045 !important;
    border-color: #325045 !important;
    transform: scale(1.10);
}

/* Stored-cart button – outlined */
.grid-layout .product-thumb.product_row .input-group-btn .open-stored-carts-modal {
    background: #fff !important;
    color: #397961 !important;
    border: 1px solid rgba(114, 73, 205, 0.40) !important;
}
.grid-layout .product-thumb.product_row .input-group-btn .open-stored-carts-modal:hover {
    background: #f0ebff !important;
    border-color: #397961 !important;
    transform: scale(1.10);
}

/* Compare button – light outlined */
.grid-layout .product-thumb.product_row .input-group-btn .btn[onclick*="compare"] {
    background: #fff !important;
    color: #397961 !important;
    border: 1px solid rgba(114, 73, 205, 0.40) !important;
}
.grid-layout .product-thumb.product_row .input-group-btn .btn[onclick*="compare"]:hover {
    background: #f0ebff !important;
    border-color: #397961 !important;
    transform: scale(1.10);
}

.product-thumb .price {
    color: #216eb9;
}
.product-thumb .price-old {
    color: #929a83;
}
.product-thumb .price-tax {
    color: #8a9c7d;;
}
.product-thumb .button-group button {
    color: #fefefe;
    background-color: #397961!important;
}
.product-thumb .button-group button:hover {
    color: #fefefe;
    background-color: #82a8a8!important;
}
.product-thumb .button-group button i.fa:hover{
    color: #fefefe;
}
.product-table .price-new {
    color: #32a081;
    font-weight: bold;
}
.product-table .price-old {
    color: #929a83;
    text-decoration: line-through;
}
.product-table button:not(.btn) {
    background: none;
    border: none;
}

.order_table [data-customer_order_no]
,.order_table [data-erp_order_no]
,.order_table [data-start_date]
,.order_table [data-finalized_date]{
    display:none;
}

.article-descr-col {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 150px;
    max-width: 340px;
}
.descr-col {
    width: 150px;
}
.box-read-full{
    background-color: #eee;
    border: 1px solid #666;
    box-shadow: 0px 0px 20px rgba(66, 70, 59, 0.95)!important;
}
.box-read-full:after {
    border-color: #eee transparent;
}

.box-read-full a {
    text-decoration: underline;
    font-size: 10px;
    font-style: italic;
}

.customer-title {
    font-size: 120%;
    font-weight: bold;
    border: 2px solid;
    border-radius: 15px;
    padding: 5px;
    background: #fff;
}

.customer-data-content .cd-input-cls:not(.cd-pharm-name):not(.cd-month-purchase){
    background-color: #fff;
    text-align: right!important;
    height: 25px;
    cursor: auto;
}
.customer-data-content .cd-pharm-name,
.customer-data-content .cd-month-purchase {
    background-color: #fff!important;
    cursor: auto !important;
}

.move_to_offers-content .select-col{
    width: 10%;
}

/* PARAGGELIES */
.timologia-content .co-kin-net_value{
    text-align:right;
}

.btn-primary {
    color: #eee;
    background-color: #397961;
    background-image: none;
    border-color: #397961;
}
.btn-primary:hover {
    color: #fff;
    background-color: #325045;
    border-color: #325045;
}
.btn-primary .fa {
    color: #fff;
}
.btn-primary.active.focus, .btn-primary.active:focus, .btn-primary.active:hover, .btn-primary:active.focus, .btn-primary:active:focus, .btn-primary:active:hover, .open>.dropdown-toggle.btn-primary.focus, .open>.dropdown-toggle.btn-primary:focus, .open>.dropdown-toggle.btn-primary:hover
{
    color: #fff;
    background-color: #325045;
    border-color: #325045;
}

.btn-primary:hover .fa,
.btn-primary:focus .fa,
.btn-primary:active .fa,
.btn-primary.active .fa {
    /* color: #000 !important; */
}

.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover {
    color: #fefefe;
    background-color: #325045;
    border-radius: 15px;
}
.nav>li>a:focus, .nav>li>a:hover {
    text-decoration: none;
    background-color: #b6b3eb;
    border-radius: 15px;
}

.nav-tabs {
}

/* Bootstrap.min override */
nav .container-fluid {
    margin: 0 auto!important;
}
.container-fluid {
    padding: 0px !important;
    /*width: 92%;*/
    margin: 5px auto 5px!important;
    max-width: 95% !important;
}
.inner-content {
    box-shadow: 0px 0px 30px rgba(66, 70, 59, 0.95)!important;
    -webkit-box-shadow: 0px 0px 30px rgba(66, 70, 59, 0.95)!important;
    padding: 10px 20px;
    border-radius: 0px;
    background: #fff!important;
    border-radius: 10px;
}
input, select, select option{
    background-color: #fff;
}
.btn-link {
     color: #397961!important;
}
#login > .btn .fa{
    color: #397961;
}
.btn-link.init {
    color: #23A1D1;
}
.btn-link.init:hover {
    color: #397961;
    text-decoration: none;
}
div.required .control-label:before {
    color: #f17406;
}
.image-additional a {
    border: 1px solid #c6d0bc;
}
.thumbnail {
    border: 1px solid #c6d0bc;
}
img:focus {
    outline: none;
}
.btn-danger {
    background-color: #fefefe;
    background-image: none;
    border-color: #da2a2a;
    color: #da2a2a;
}
.btn-danger.focus, .btn-danger:focus {
    color: #fff;
    background-color: #edcfd9;
    border-color: #da2a2a;
    outline: 1px auto #da2a2a
}
 .btn-danger.active:focus, .btn-danger.active:hover, .btn-danger:active.focus, .btn-danger:active:focus, .btn-danger:active:hover, .open>.dropdown-toggle.btn-danger.focus, .open>.dropdown-toggle.btn-danger:focus, .open>.dropdown-toggle.btn-danger:hover {
    background-color: #edcfd9;
    border-color: #da2a2a;
    outline: 1px auto #f77934;
}
.btn-danger.active, .btn-danger:active, .open>.dropdown-toggle.btn-danger {
    color: #fff;
    background-color: #edcfd9;
    border-color: #da2a2a;
}
.btn-danger:hover {
    background-color: #edcfd9;
    border-color: #da2a2a;
    outline: 1px auto #f7a884;
    background-image: none;
}
.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover {
    background-color:#edcfd9;
    border-color: #d43f3a
}
.btn-danger .fa {
    color: #da2a2a
}
.btn-info {
    background-color: #669678;
    background-image: none;
    border-color: #669678 #669678 #669678;
}
.btn-info.focus, .btn-info:focus {
    background-color: #75a185;
    border-color: #75a185;
    outline: 1px auto #75a185;
}
.btn-info:hover, .btn-info:active, .btn-info.active, .btn-info.disabled, .btn-info[disabled] {
    background-color: #75a185;
    border-color: #75a185;
}
.btn-info.active.focus, .btn-info.active:focus, .btn-info.active:hover, .btn-info:active.focus, .btn-info:active:focus, .btn-info:active:hover, .open>.dropdown-toggle.btn-info.focus, .open>.dropdown-toggle.btn-info:focus, .open>.dropdown-toggle.btn-info:hover {
    background-color: #75a185;
    border-color: #75a185;
}

/* owl.carusel override */
.owl-wrapper-outer {
    border: 4px solid #ffffff;
}
.owl-controls .owl-page span {
    background: rgba(0, 153, 73, 0.4);
}
.owl-controls .owl-page.active span {
    background: rgba(0, 153, 73, 0.9);
}
.owl-carousel .owl-buttons div {
    color: #eee;
}
.owl-carousel:hover .owl-buttons div {
    opacity: 0.9;
}

.product-thumb-column .caption-column {
    padding: 0 20px;
    border: 1px solid #397961;
}
.product-thumb-column {
    margin-bottom:0;
    background: #fff;
}
.right-pos {
    float: right;
    padding-right: 8px;
    margin-top: 0;
}
.column-preview {
    white-space: nowrap;
    overflow:hidden !important;
    text-overflow: ellipsis;
}

.center-hdr {
    text-align: center;
}
.txt-right {
    text-align: right;
    float: right;
}
.txt-left {
    text-align: left;
    float: left;
}

/* Modern Search Bar */
#search.search-modern {
    position: relative;
}

#search.search-modern .search-input {
    width: 100%;
    height: 44px;
    padding: 10px 50px 10px 20px;
    border-radius: 25px;
    border: 2px solid #d0d0d0;
    font-size: 15px;
    transition: 0.2s;
}

#search.search-modern .search-input:focus {
    border-color: #397961;
    box-shadow: 0 0 0 3px rgba(99,147,147,0.15);
    outline: none;
}

#search.search-modern .search-btn {
    position: absolute;
    right: 6px;
    top: 5px;
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 50%;
    background: #fff;
    color: darkgrey;
    cursor: pointer;
    transition: 0.2s;
}

#search.search-modern .search-btn:hover {
    color: #397961;
}

.easy-autocomplete-container{
    z-index: 10;
}

#shipping_method > .row > .col-md-6,
#payment_method > .row > .col-md-6
 {
  width: 100%;
}


.cart-total .price-new {
    font-weight: 600;
}
.cart-total .price-old {
    color: #999;
    text-decoration: line-through;
    margin-left: 10px;
}

.glyphicon-refresh-animate {
    -animation: spin 1.7s infinite linear;
    -webkit-animation: spin2 1.7s infinite linear;
}

@-webkit-keyframes spin2 {
    from { -webkit-transform: rotate(0deg);}
    to { -webkit-transform: rotate(360deg);}
}

@keyframes spin {
    from { transform: scale(1) rotate(0deg);}
    to { transform: scale(1) rotate(360deg);}
}

.form-control {
    border-radius: 15px;
}

.breadcrumb {
    display: none !important;
}

.breadcrumb {
    background-color: #fefefe;
    border: none;
}
.breadcrumb > li:after {
    width: 14px;
    height: 14px;
    top: 1px;
    right: -2px;
}

.well {
    background-color: #dbd4f1;
}

/* ── Newsblog Articles Grid Card ── */
.row > .product-layout { position: relative; z-index: 1; }
.row > .product-layout:hover { z-index: 100; }

.nb-grid-card {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
  box-shadow: 0 2px 8px rgba(0,0,0,0.07);
  transition: box-shadow 0.2s, transform 0.2s;
}
/* Restore rounded corners on image (overflow:hidden moved here) */
.nb-grid-card .nb-image {
  border-radius: 14px 14px 0 0;
  overflow: hidden;
}
.nb-grid-card:hover {
  box-shadow: 0 6px 20px rgba(114,73,205,0.13);
  transform: translateY(-2px);
}
.nb-grid-card .nb-image a {
  display: block;
}
.nb-grid-card .nb-image img {
  width: 100%;
  display: block;
  border-radius: 14px 14px 0 0;
}
.nb-grid-card .nb-meta {
  padding: 8px 14px 0 14px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}
.nb-grid-card .nb-date-badge {
  background: #f0ebff;
  color: #397961;
  border-radius: 8px;
  padding: 4px 8px;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  cursor: default;
  border: none;
}
.nb-grid-card .nb-date-text {
  display: none;
}
.nb-grid-card .nb-caption {
  padding: 10px 14px 6px 14px;
  flex: 1;
  overflow-x: hidden;
  max-width: 100%;
}
.nb-grid-card .nb-caption h4 {
  margin: 0 0 6px 0;
  font-size: 15px;
  font-weight: 700;
}
.nb-grid-card .nb-caption h4 a {
  color: #333;
  text-decoration: none;
}
.nb-grid-card .nb-caption h4 a:hover {
  color: #397961;
}
.nb-grid-card .nb-footer {
  padding: 8px 14px 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #f0ebff;
  gap: 8px;
}
.nb-grid-card .nb-btn-more {
  background: #397961;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 6px 16px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: background 0.2s;
}
.nb-grid-card .nb-btn-more:hover {
  background: #325045;
}
.nb-grid-card .nb-views-badge {
  background: #f0ebff;
  color: #397961;
  border-radius: 8px;
  padding: 4px 8px;
  font-size: 13px;
  display: inline-flex;
  align-items: center;
  cursor: default;
  border: none;
}
/* ── List-layout +/- qty stepper ── */
.list-qty-stepper {
    display: flex !important;
    align-items: center;
    min-width: 110px;
    max-width: 160px;
}
.list-qty-stepper .input-group-btn .btn {
    height: 30px;
    width: 28px;
    padding: 0;
    font-size: 14px;
    border-radius: 8px !important;
    background: #f0ebff;
    color: #397961;
    border: 1px solid rgba(114, 73, 205, 0.35);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, transform 0.12s;
}
.list-qty-stepper .input-group-btn .btn:hover {
    background: #397961;
    color: #fff;
    border-color: #397961;
    transform: scale(1.10);
}
.list-qty-stepper .form-control.product_quantity {
    height: 30px !important;
    text-align: center;
    border-radius: 8px !important;
    border: 1px solid rgba(114, 73, 205, 0.30) !important;
    -moz-appearance: textfield;
}
.list-qty-stepper .form-control.product_quantity::-webkit-inner-spin-button,
.list-qty-stepper .form-control.product_quantity::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.featured-image-wrap {
    position: relative;
    overflow: hidden;
}
.btn-wishlist-overlay {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 3;
    width: 34px;
    height: 34px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.88);
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
    color: #397961;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s, color 0.2s, transform 0.15s;
    opacity: 0;
}
.featured-image-wrap:hover .btn-wishlist-overlay,
.product-thumb:hover .btn-wishlist-overlay {
    opacity: 1;
}
.btn-wishlist-overlay:hover {
    background: #397961;
    color: #fff;
    transform: scale(1.12);
}

/* ── Featured: actions row (stepper + buttons side by side) ── */
.featured-actions-wrap {
    padding: 8px 8px 6px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

/* ── Qty stepper – search-style (buttons float inside input) ── */
.qty-stepper-wrap {
    position: relative;
    flex-shrink: 0;
    width: 108px;
}
.qty-stepper-wrap input.product_quantity {
    width: 100%;
    height: 34px;
    padding: 4px 32px;
    border-radius: 25px !important;
    border: 2px solid #d0d0d0 !important;
    text-align: center;
    font-size: 14px;
    transition: border-color 0.2s, box-shadow 0.2s;
    -moz-appearance: textfield;
    box-shadow: none !important;
}
.qty-stepper-wrap input.product_quantity::-webkit-inner-spin-button,
.qty-stepper-wrap input.product_quantity::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.qty-stepper-wrap input.product_quantity:focus {
    border-color: #397961;
    box-shadow: 0 0 0 3px rgba(114, 73, 205, 0.12);
    outline: none;
}
.qty-stepper-wrap .btn-qty {
    position: absolute;
    top: 4px;
    width: 26px;
    height: 26px;
    border: none;
    border-radius: 50%;
    background: #fff;
    color: #888;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    line-height: 1;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s;
}
.qty-stepper-wrap .btn-qty:hover {
    color: #397961;
}
.qty-stepper-wrap .btn-qty-minus { left: 4px; }
.qty-stepper-wrap .btn-qty-plus  { right: 4px; }

/* ── Action buttons next to stepper ── */
.featured-btn-group {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: nowrap;
}
.featured-btn-group .btn {
    border-radius: 8px !important;
    padding: 5px 9px;
    font-size: 13px;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
}

/* ── List layout: same stepper inside cart-input ── */
.cart-input .qty-stepper-wrap {
    width: 120px;
}

/* ── Product table: overflow visible so popup is not clipped ── */
.product-table.table-bordered { overflow: visible; }
.product-table.table-bordered thead tr:first-child th:first-child { border-top-left-radius: 9px; }
.product-table.table-bordered thead tr:first-child th:last-child  { border-top-right-radius: 9px; }
.product-table.table-bordered tbody tr:last-child td:first-child  { border-bottom-left-radius: 9px; }
.product-table.table-bordered tbody tr:last-child td:last-child   { border-bottom-right-radius: 9px; }

/* ── List layout: allow popup to escape all overflow containers ── */
.list-layout,
.list-layout .table-responsive,
.row.category_products,
.row.latest_products { overflow: visible !important; }

/* Anchor popup to the product-name cell */
.list-layout .product-name { position: relative; }
.list-layout .product-name .box-on-hov { position: relative; display: inline-block; }
.list-layout .product-name .box-read-full {
    position: absolute;
    right: 0; top: 100%;
    margin-top: 4px;
    z-index: 9999;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 4px 18px rgba(0,0,0,0.18);
    min-width: 220px;
    padding: 10px;
    overflow: visible !important;
    height: auto !important;
}
.list-layout .product-name .box-read-full .table-responsive { overflow: visible !important; }
.list-layout .product-name .box-read-full:after {
    content: "";
    position: absolute;
    top: -10px; right: 12px;
    border: 9px solid transparent;
    border-top: 0;
    border-bottom-color: #ddd;
}
.list-layout .product_row:hover { position: relative; z-index: 10; }

/* ── offer_list ── */
.offer-thumb {
    border-radius: 16px;
    overflow: visible;
    margin: 10px;
}
.offer-thumb .image {
    overflow: hidden;
    border-radius: 16px 16px 0 0;
}
.offer-thumb .caption {
    padding: 0 20px;
    min-height: 100px;
}
.offer-thumb .button-group button {
    width: 80%;
    background-color: #397961 !important;
    color: #fefefe;
    border-radius: 20px !important;
    margin: 2px;
}
.offer-thumb .button-group button + button {
    width: 15%;
}
.offer-thumb .button-group button:hover {
    background-color: #325045 !important;
    color: #fefefe;
}
.btn-download-float {
    position: absolute;
    top: 10px;
    right: 10px;
    background-color: #397961;
    color: #fefefe;
    border: none;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    transition: background-color 0.2s;
}
.btn-download-float:hover {
    background-color: #325045 !important;
}

.info-page-header {
    margin-bottom: 28px;
}
.info-page-title {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 10px;
}

.info-page-body {
    border: 1px solid #e8f0e9;
    border-radius: 8px;
    padding: 30px 36px;
    font-size: 15px;
}
.info-page-body h2,
.info-page-body h3 {
    color: #3d6b41;
    margin-top: 24px;
    margin-bottom: 10px;
}

:root {
    --sidebar-width: 260px;
    --top-height: 42px;
    --header-height: 95px;
    --primary: #008f7a;
    --primary-soft: #e7f6f3;
    --border: #e5eaf0;
    --text: #132238;
    --muted: #6b7280;
}

/* General body layout */
body.common-home {
    background: #f7fafc;
    color: var(--text);
}

/* Keep top nav fixed on top */
#top {
    position: fixed;
    top: 0;
    left: var(--sidebar-width);
    right: 0;
    height: var(--top-height);
    z-index: 1050;
    border-bottom: 1px solid var(--border);
    margin: 0;
}

/* Header stays under top nav, to the right of sidebar */
header {
    position: fixed;
    top: var(--top-height);
    left: var(--sidebar-width);
    right: 0;
    min-height: var(--header-height);
    z-index: 1040;
    background: #ffffff;
    border-bottom: 1px solid var(--border);
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.04);
}

/* Optional: hide old header logo because logo now lives in sidebar */
header #logo {
    display: none;
}

/* Sidebar menu */
#menu.sidebar-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: var(--sidebar-width);
    height: 100vh;
    z-index: 1060;
    background: #ffffff;
    border-right: 1px solid var(--border);
    margin: 0;
    border-radius: 0;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 18px 14px;
    box-shadow: 4px 0 20px rgba(15, 23, 42, 0.04);
}

/* Sidebar logo */
#menu .sidebar-logo {
    padding: 0 8px 22px;
    margin-bottom: 12px;
    border-bottom: 1px solid #f0f3f7;
}

#menu .sidebar-logo img {
    max-width: 160px;
    height: auto;
}

/* Remove Bootstrap navbar behavior */
#menu.navbar {
    min-height: 100vh;
    border: none;
}

#menu .navbar-header {
    display: none;
}

#menu .navbar-collapse {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    padding: 0;
    border: 0;
    box-shadow: none;
}

/* Vertical menu */
#menu .nav.navbar-nav,
#menu .nav.navbar-nav.pull-right {
    float: none !important;
    width: 100%;
    margin: 0;
}

#menu .nav.navbar-nav > li {
    float: none;
    width: 100%;
    margin-bottom: 4px;
}

#menu .nav.navbar-nav > li > a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 11px 14px;
    color: #334155;
    font-weight: 600;
    font-size: 14px;
    border-radius: 10px;
    background: transparent;
    transition: all 0.18s ease;
}

#menu .nav.navbar-nav > li > a:hover,
#menu .nav.navbar-nav > li.open > a,
#menu .nav.navbar-nav > li.active > a {
    color: var(--primary);
    background: var(--primary-soft);
}

/* Add icons before main menu items using Font Awesome */

#menu .nav.navbar-nav > li > a > .fa::before {
  margin-right: 10px;
}

#menu .nav.navbar-nav > li > a:before {
    font-family: FontAwesome;
    display: inline-block;
    width: 22px;
    margin-right: 10px;
    font-weight: normal;
    color: currentColor;
}

/* Dropdowns become inline submenu sections */
#menu .dropdown-menu {
    position: static;
    float: none;
    width: 100%;
    min-width: 0;
    margin: 4px 0 8px;
    padding: 4px 0 4px 34px;
    background: transparent;
    border: none;
    box-shadow: none;
}

#menu .dropdown-inner {
    display: block;
}

#menu .dropdown-inner ul {
    display: block;
    width: 100%;
}

#menu .dropdown-menu li a,
#menu .see-all {
    display: block;
    padding: 8px 12px;
    color: var(--muted);
    font-size: 13px;
    border-radius: 8px;
    white-space: normal;
}

#menu .dropdown-menu li a:hover,
#menu .see-all:hover {
    color: var(--primary);
    background: #f1faf8;
    text-decoration: none;
}

/* Sidebar: disable hover-based dropdown — controlled by JS accordion instead */
#menu .dropdown:hover .dropdown-menu {
    display: none;
}

/* ===== Sidebar Two-Section Layout ===== */

.sidebar-section {
    margin-bottom: 4px;
}

.sidebar-section-title {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    color: var(--muted);
    padding: 14px 14px 5px;
    margin: 0;
    user-select: none;
}

.sidebar-divider {
    border: none;
    border-top: 1px solid var(--border);
    margin: 10px 0;
}

/* ===== Sidebar toggle links (items with submenus) ===== */

#menu .sidebar-toggle-link {
    display: flex;
    align-items: center;
    width: 100%;
    cursor: pointer;
}

/* Icon in static section links */
#menu .sidebar-icon {
    width: 22px;
    text-align: center;
    margin-right: 8px;
    font-size: 14px;
    flex-shrink: 0;
}

/* ===== Caret ===== */

.sidebar-caret {
    margin-left: auto;
    font-size: 11px;
    color: var(--muted);
    transition: transform 0.25s ease, color 0.25s ease;
    flex-shrink: 0;
}

/* Rotated + highlighted caret when submenu is open */
#menu li.sidebar-item-open > .sidebar-toggle-link .sidebar-caret {
    transform: rotate(180deg);
    color: var(--primary);
}

/* Highlight the toggle link itself when open */
#menu li.sidebar-item-open > .sidebar-toggle-link {
    color: var(--primary);
    background: var(--primary-soft);
    border-radius: 10px;
}

/* ===== Sidebar submenu (accordion) ===== */

.sidebar-submenu {
    display: none;
    list-style: none;
    padding: 4px 0 6px 36px;
    margin: 2px 0 0;
}

.sidebar-submenu > li > a {
    display: block;
    padding: 7px 12px;
    color: var(--muted);
    font-size: 13px;
    border-radius: 8px;
    white-space: normal;
    text-decoration: none;
    transition: color 0.15s ease, background 0.15s ease;
}

.sidebar-submenu > li > a:hover {
    color: var(--primary);
    background: var(--primary-soft);
    text-decoration: none;
}

/* "See all" item at bottom of category submenu */
.sidebar-submenu > li.sidebar-see-all > a {
    font-style: italic;
    border-top: 1px solid var(--border);
    margin-top: 4px;
    padding-top: 8px;
    border-radius: 0 0 8px 8px;
}

/* Push all page content to the right of sidebar and below fixed top/header */
.homepage,
footer {
    margin-left: var(--sidebar-width) !important;
}

body > .container-fluid
/*#content */
{
    margin-left: calc(var(--sidebar-width) + 10px) !important;
    margin-right: 10px !important;
}

body > .container-fluid
/*#content */
{
    margin-top: calc(var(--top-height) + 10px) !important;
}

/* Main page area starts below fixed top + header */
.homepage {
    padding-top: calc(var(--top-height) + var(--header-height) + 24px);
}

/* Footer alignment */
footer {
    background: #014545;
    border-top: 1px solid var(--border);
}

/* Make containers use full available width */
header .container-fluid,
#top .container-fluid,
footer .container-fluid {
    width: 100%;
}

/* Improve top nav spacing */
#top .container-fluid {
    height: var(--top-height);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#top .top-links {
    margin: 0;
}

#top ul {
    margin-bottom: 0;
}

/* Header content alignment */
header .container-fluid {
    padding-top: 16px;
    padding-bottom: 16px;
}

/* Optional: modernize cart button */
#cart > .btn {
    border-radius: 10px;
    background: var(--primary);
    border-color: var(--primary);
}

/* Mobile layout */
@media (max-width: 767px) {
    :root {
        --sidebar-width: 0px;
        --top-height: 42px;
        --header-height: auto;
    }

    #top {
        left: 0;
    }

    header {
        position: relative;
        top: var(--top-height);
        left: 0;
        right: 0;
    }

    #menu.sidebar-menu {
        top: var(--top-height);
        width: 280px;
        transform: translateX(-100%);
        transition: transform 0.2s ease;
    }

    body.sidebar-open #menu.sidebar-menu {
        transform: translateX(0);
    }

    #menu .navbar-header {
        display: block;
    }

    #menu .sidebar-logo {
        display: block;
    }

    .homepage,
    #content,
    footer {
        margin-left: 0;
    }

    .homepage {
        padding-top: 70px;
    }

    .mobile-menu-toggle {
        display: inline-flex;
    }
}

.mobile-menu-toggle {
    border: 0;
    background: #ffffff;
    color: #0f766e;
    font-size: 20px;
    padding: 6px 10px;
    margin-right: 8px;
}

/* ===================================================================
   TOP BAR REDESIGN — Search · Help · Customer · Cart in #top
   =================================================================== */

/* 1. Update layout variables: taller top bar, no separate header */
:root {
    --top-height: 64px;
    --header-height: 0px;
}

/* 2. Collapse the now-empty <header> element */
header {
    min-height: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* 3. Top bar container — full-width flex row */
#top .container-fluid {
    height: var(--top-height) !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 16px !important;
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: flex-start;
}

/* 4. Actions flex row fills remaining space */
.top-bar-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
    min-width: 0;
}

/* ── 5. Search ── */
.top-bar-search {
    flex: 1;
    min-width: 0;
    max-width: 400px;
}

.top-bar-search #search {
    margin: 0;
    width: 100%;
}

#top #search.search-modern .search-input {
    height: 38px;
    background: #fff;
    border: 2px solid #e5eaf0;
    border-radius: 20px;
    color: #1e293b;
    padding: 6px 16px 6px 42px;
    font-size: 14px;
    transition: border-color 0.2s, box-shadow 0.2s;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
}

#top #search.search-modern .search-input::placeholder {
    color: #9ca3af;
}

#top #search.search-modern .search-input:focus {
    border-color: #397961;
    box-shadow: 0 0 0 3px rgba(57, 121, 97, 0.18);
    outline: none;
    color: #1e293b;
}

#top #search.search-modern .search-btn {
    background: transparent;
    color: #9ca3af;
    top: 3px;
    left: 8px;
    right: auto;
}

#top #search.search-modern .search-btn:hover,
#top #search.search-modern .search-btn:focus {
    color: #397961;
    outline: none;
}

/* Autocomplete dropdown must appear above everything */
#top .easy-autocomplete-container {
    z-index: 1300;
}

/* ── 6. Help / Tutorial — plain link, no border ── */
.top-bar-help {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 6px;
    color: #397961;
    background: transparent;
    border: none;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    white-space: nowrap;
    flex-shrink: 0;
    transition: color 0.18s ease;
    margin-left: auto;
}

.top-bar-help .fa {
    font-size: 16px;
}

.top-bar-help:hover {
    color: #2a5e43;
    text-decoration: none;
}

.top-bar-help:focus {
    outline: 2px solid #397961;
    outline-offset: 2px;
    color: #397961;
    text-decoration: none;
}

/* ── 7. Account Dropdown ── */
.top-bar-customer {
    position: relative;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.top-bar-customer .dropdown-toggle {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 4px 6px;
    color: #334155;
    background: transparent;
    border: none;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
}

.top-bar-customer .dropdown-toggle:hover,
.top-bar-customer .dropdown-toggle:focus {
    color: #397961;
    text-decoration: none;
    outline: none;
}

.top-bar-customer .dropdown-toggle .fa-user-circle {
    font-size: 20px;
    color: #397961;
    flex-shrink: 0;
}

.top-bar-customer .dropdown-toggle .fa-caret-down {
    font-size: 12px;
    color: #397961;
}

/* Override the global .customer-title inside #top */
#top .customer-title {
    margin: 0;
    font-size: 13px;
    font-weight: 600;
    color: inherit;
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    max-width: 220px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-shadow: none;
    line-height: 1.3;
    display: inline;
}

.top-bar-customer .dropdown-menu {
    min-width: 160px;
    border-radius: 4px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
    padding: 4px 0;
    margin-top: 4px;
}

.top-bar-customer .dropdown-menu > li > a {
    padding: 8px 16px;
    font-size: 13px;
    color: #334155;
    white-space: nowrap;
}

.top-bar-customer .dropdown-menu > li > a:hover {
    background-color: #f0fdf4;
    color: #397961;
}

/* ── 8. Cart ── */
.top-bar-cart {
    flex-shrink: 0;
}

/* Cart — brand green fill, white text (≥ 4.7:1), 3 px radius */
#top .top-bar-cart #cart > .btn,
#top .top-bar-cart #cart_offer > .btn {
    background: #397961;
    color: #fff;
    border: 2px solid #397961;
    border-radius: 3px;
    font-size: 14px;
    font-weight: 600;
    padding: 6px 16px;
    height: 38px;
    line-height: 1.4;
    transition: background 0.18s, border-color 0.18s;
}

#top .top-bar-cart #cart > .btn:hover,
#top .top-bar-cart #cart_offer > .btn:hover {
    background: #2d6248;
    border-color: #2d6248;
    color: #fff;
}

#top .top-bar-cart #cart > .btn:focus,
#top .top-bar-cart #cart_offer > .btn:focus {
    outline: 2px solid #397961;
    outline-offset: 2px;
}

/* Cart dropdown positioned correctly */
#top .top-bar-cart .dropdown-menu {
    z-index: 1200;
    right: 0;
    left: auto;
    min-width: 300px;
}

/* ── 9. Utility area (currency / language) — visually hidden, kept functional ── */
.top-bar-utility {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* ── 10. #top white background — overrides the early green ── */
#top {
    background-color: #fff;
    border-bottom: 1px solid #e5eaf0;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

/* ── Cart bottom toolbar ── */
.cart-bottom-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 10px;
}

.cart-bottom-toolbar .btn-group:last-child {
    margin-left: auto;
}

/* ── 11. Mobile responsive ── */
@media (max-width: 767px) {
    :root {
        --top-height: 56px;
    }

    .top-bar-actions {
        gap: 6px;
    }

    .top-bar-help-label {
        display: none;
    }

    #top .customer-title {
        max-width: 120px;
        font-size: 11px;
    }
}