/* Shared storefront palette. Loaded after module styles; catalogue data is untouched. */
:root {
  --nb-color-ink: #000;
  --nb-color-action: #e51c24;
  --nb-color-action-hover: #d8161d;
  --nb-color-link: #b8162d;
  --nb-color-link-hover: #921123;
  --nb-color-soft: #fff1f2;
  --nb-color-line: #efbdc4;
  --bs-primary: #b8162d;
  --bs-primary-rgb: 184, 22, 45;
  --bs-primary-text-emphasis: #921123;
  --bs-primary-bg-subtle: #fff1f2;
  --bs-primary-border-subtle: #efbdc4;
  --bs-link-color: #b8162d;
  --bs-link-color-rgb: 184, 22, 45;
  --bs-link-hover-color: #921123;
  --bs-link-hover-color-rgb: 146, 17, 35;
  --bs-focus-ring-color: rgba(184, 22, 45, .25);
  --bs-heading-color: #000;
}
body { accent-color: var(--nb-color-link); }
::selection { background: #f8d8dc; color: #000; }
a { color: var(--nb-color-link); }
a:hover { color: var(--nb-color-link-hover); }

/* Bootstrap keeps component colours separately from its root tokens. */
.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--nb-color-action);
  --bs-btn-border-color: var(--nb-color-action);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--nb-color-action-hover);
  --bs-btn-hover-border-color: var(--nb-color-action-hover);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--nb-color-link);
  --bs-btn-active-border-color: var(--nb-color-link);
  --bs-btn-focus-shadow-rgb: 184, 22, 45;
  --bs-btn-disabled-color: #555b63;
  --bs-btn-disabled-bg: #d8dbe0;
  --bs-btn-disabled-border-color: #d8dbe0;
}
.btn-outline-primary {
  --bs-btn-color: var(--nb-color-link);
  --bs-btn-border-color: var(--nb-color-link);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--nb-color-link);
  --bs-btn-hover-border-color: var(--nb-color-link);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--nb-color-link-hover);
  --bs-btn-active-border-color: var(--nb-color-link-hover);
  --bs-btn-focus-shadow-rgb: 184, 22, 45;
  --bs-btn-disabled-color: #555b63;
  --bs-btn-disabled-border-color: #bfc4cc;
}
.btn-primary, .btn-primary:hover, .btn-primary:focus-visible, .btn-primary:active,
.btn-outline-primary:hover, .btn-outline-primary:focus-visible, .btn-outline-primary:active,
.btn-outline-primary.active, .btn-outline-primary.show, .btn-check:checked + .btn-outline-primary {
  color: #fff;
}
.btn-outline-primary { color: var(--nb-color-link); }
.btn-check:not(:checked) + .btn-outline-primary:hover { color: var(--nb-color-link); }
.btn-link, .btn-basic {
  --bs-btn-color: var(--nb-color-link);
  --bs-btn-hover-color: var(--nb-color-link-hover);
  --bs-btn-active-color: var(--nb-color-link-hover);
  --bs-btn-focus-shadow-rgb: 184, 22, 45;
}
.btn-close { --bs-btn-close-focus-shadow: 0 0 0 .25rem rgba(184, 22, 45, .25); }
body .btn-primary:disabled, body .btn-primary.disabled {
  color: #555b63;
  background-color: #d8dbe0;
  border-color: #d8dbe0;
}

.form-control:focus, .form-select:focus, .form-check-input:focus {
  border-color: var(--nb-color-link);
  box-shadow: 0 0 0 .25rem rgba(184, 22, 45, .2);
}
.form-check-input:checked, .form-check-input[type="checkbox"]:indeterminate {
  background-color: var(--nb-color-link);
  border-color: var(--nb-color-link);
}
:is(.form-control, .form-select, .form-check-input):is(.is-valid, .valid):focus,
.was-validated :is(.form-control, .form-select, .form-check-input):valid:focus {
  border-color: var(--bs-form-valid-border-color, #198754);
  box-shadow: 0 0 0 .25rem rgba(var(--bs-success-rgb), .25);
}
:is(.form-control, .form-select, .form-check-input):is(.is-invalid, .error):focus,
.was-validated :is(.form-control, .form-select, .form-check-input):invalid:focus {
  border-color: var(--bs-form-invalid-border-color, #dc3545);
  box-shadow: 0 0 0 .25rem rgba(var(--bs-danger-rgb), .25);
}
.form-switch .form-check-input:focus:not(:checked) {
  --bs-form-switch-bg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23b8162d'/%3E%3C/svg%3E");
}
.form-range::-webkit-slider-thumb { background-color: var(--nb-color-link); }
.form-range::-moz-range-thumb { background-color: var(--nb-color-link); }
.form-range:focus::-webkit-slider-thumb { box-shadow: 0 0 0 1px #fff, 0 0 0 .25rem rgba(184, 22, 45, .25); }
.form-range:focus::-moz-range-thumb { box-shadow: 0 0 0 1px #fff, 0 0 0 .25rem rgba(184, 22, 45, .25); }
.form-range::-webkit-slider-thumb:active { background-color: #e9a5b0; }
.form-range::-moz-range-thumb:active { background-color: #e9a5b0; }

.nav, .navbar {
  --bs-nav-link-color: #000;
  --bs-nav-link-hover-color: #000;
  --bs-navbar-color: #000;
  --bs-navbar-hover-color: #000;
  --bs-navbar-active-color: #000;
}
.nav-pills { --bs-nav-pills-link-active-bg: var(--nb-color-soft); --bs-nav-pills-link-active-color: #000; }
.nav-link:focus-visible { box-shadow: 0 0 0 .25rem rgba(184, 22, 45, .25); }
.pagination {
  --bs-pagination-color: #000;
  --bs-pagination-hover-color: #000;
  --bs-pagination-focus-color: #000;
  --bs-pagination-active-bg: var(--nb-color-link);
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-border-color: var(--nb-color-link);
  --bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(184, 22, 45, .25);
}
.dropdown-menu {
  --bs-dropdown-link-color: #000;
  --bs-dropdown-link-hover-color: #000;
  --bs-dropdown-link-active-bg: var(--nb-color-soft);
  --bs-dropdown-link-active-color: #000;
}
.list-group {
  --bs-list-group-active-bg: var(--nb-color-soft);
  --bs-list-group-active-border-color: var(--nb-color-line);
  --bs-list-group-active-color: #000;
}
.accordion {
  --bs-accordion-btn-color: #000;
  --bs-accordion-active-color: #000;
  --bs-accordion-active-bg: var(--nb-color-soft);
  --bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(184, 22, 45, .25);
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m2 5 6 6 6-6' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m2 5 6 6 6-6' fill='none' stroke='%23b8162d' stroke-width='1.5'/%3E%3C/svg%3E");
}
.accordion-button { color: #000 !important; }
[data-bs-theme="dark"] .accordion-button::after {
  --bs-accordion-btn-icon: inherit;
  --bs-accordion-btn-active-icon: inherit;
}
.progress { --bs-progress-bar-bg: var(--nb-color-link); }
.table-primary {
  --bs-table-color: #000;
  --bs-table-bg: var(--nb-color-soft);
  --bs-table-border-color: var(--nb-color-line);
  --bs-table-striped-bg: #fbe7ea;
  --bs-table-striped-color: #000;
  --bs-table-hover-bg: #f8dce1;
  --bs-table-hover-color: #000;
  --bs-table-active-bg: #f8dce1;
  --bs-table-active-color: #000;
}
.alert-info { --bs-alert-color: #343434; --bs-alert-bg: #f3f3f3; --bs-alert-border-color: #dedede; --bs-alert-link-color: #b8162d; }

/* Titles and wayfinding stay black; ordinary content links carry the red accent. */
body :is(.product-miniature__title, .product-line__title, .nb-opc-product__name,
  .ps-searchbar__result-name, .nb-home__product-card h3 a, .nb-layout-card h3 a,
  .breadcrumb-link, .nb-topnav__inner a, .ps-mainmenu__tree-link, .ps-mainmenu--mobile .menu a, .menu__link,
  .ps-categorytree__item-link, .left-block__title-link, .search-filters__link,
  .subcategory__link, .account-menu__link, .my-account__link, .nav-link,
  .nb-product-tabs__button, .nb-opc-back-link, .nano24-footer__links a) {
  color: #000 !important;
}
body#product .nb-buy-card h1 { color: #000; }
#header :is(nav a:not(.btn), .header-block__action-btn, .nano24-menu a:not(.btn)),
#footer nav[aria-label="Cumpărături"] a,
#footer nav[aria-label="Contul tău"] a,
#footer h2 a { color: #000 !important; }
#footer nav[aria-label="Asistență clienți"] a { color: var(--nb-color-link) !important; }
#footer .nano24-footer__secure a { color: var(--nb-color-link); }
.nb-home { --nb-ink: #000; --nb-red: var(--nb-color-action); }
.nb-home__category-card--blue { background: #f5f5f5; }
@media (max-width: 700px) {
  .nb-home__category-cta { display: inline-flex; align-items: center; min-height: 36px; padding: 8px; font-size: 13px; line-height: 1.4; }
}
/* Keep category labels inside the card when two columns leave little room beside a photo. */
@media (max-width: 600px) {
  .nb-home__category-card { flex-direction: column; align-items: stretch; }
  .nb-home__category-card img { width: 100%; height: 128px; flex: 0 0 auto; border-radius: 0; }
  .nb-home__category-info { flex: 1; min-width: 0; padding: 12px; }
  .nb-home__category-cta { margin-top: auto; }
}

.nb-opc-section a, .nb-opc-support a, .nb-opc-footer a, .nb-opc-recovery a,
.nb-home__review-summary a, .page-product .nb-trusted-reviews__source a,
#footer .nano24-footer__contact a { color: var(--nb-color-link); }
.nb-description-pattern--catalogue a:not(.nb-description-media a),
.nb-description-pattern--catalogue a :where(span, strong, em) { color: var(--nb-color-link) !important; }
.page-product .nb-trusted-reviews__more {
  color: var(--nb-color-link);
  border-color: var(--nb-color-link);
  background: #fff;
}
.page-product .nb-trusted-reviews__more:hover { background: var(--nb-color-soft); }
.page-product .nb-trusted-card__verified { background: var(--nb-color-link); }
.nb-consent__actions button { color: var(--nb-color-link); border-color: var(--nb-color-link); }
.nb-consent__actions button:hover { color: #fff; background: var(--nb-color-link); }
.nb-opc-section .btn-primary, .nb-home__button, .nb-home__category-cta,
.nb-layout-card__cart button, .nb-buy-card .add-to-cart, .nb-mobile-buy button,
.product-miniature .product-miniature__add, .product-miniature .product-miniature__details {
  background-color: var(--nb-color-action);
  border-color: var(--nb-color-action);
  color: #fff;
}
.nb-opc-section .btn-primary:hover, .nb-home__button:hover,
.nb-layout-card__cart button:hover, .nb-buy-card .add-to-cart:hover, .nb-mobile-buy button:hover,
.product-miniature .product-miniature__add:hover, .product-miniature .product-miniature__details:hover {
  background-color: var(--nb-color-action-hover);
  border-color: var(--nb-color-action-hover);
  color: #fff;
}
.nb-opc-section #payment-confirmation button:disabled { background: #d8dbe0; border-color: #d8dbe0; color: #555b63; }
body :is(.btn-primary, .add-to-cart):is(:disabled, .disabled),
body .nb-mobile-buy button:disabled,
body .nb-layout-card__cart button:disabled {
  background: #d8dbe0 !important;
  border-color: #d8dbe0 !important;
  color: #555b63 !important;
}

/* Confirmation remains a success message, with the owner-approved pale-red surface. */
body#order-confirmation .alert-success {
  --bs-alert-color: #000;
  --bs-alert-bg: #fff1f2;
  --bs-alert-border-color: #efbdc4;
  --bs-alert-link-color: #b8162d;
  --bs-success-rgb: 239, 189, 196;
}

/* These native utilities are layered !important rules; override in the same layer. */
@layer utilities {
  .link-primary:hover, .link-primary:focus {
    color: var(--nb-color-link-hover) !important;
    text-decoration-color: var(--nb-color-link-hover) !important;
  }
  .text-info { color: #555 !important; }
  .bg-info, .text-bg-info { background-color: #eceeef !important; color: #000 !important; }
  .border-info { border-color: #d6d6d6 !important; }
}
