:root {
  --intorry-ink: #172c3c;
  --intorry-teal: #17696d;
  --bs-primary: #2980b9;
  --bs-primary-rgb: 41, 128, 185;
  --bs-link-color: #2980b9;
  --bs-link-color-rgb: 41, 128, 185;
  --bs-link-hover-color: #20638f;
  --bs-link-hover-color-rgb: 32, 99, 143;
  --bs-focus-ring-color: rgba(41, 128, 185, .25);
}
.text-teal-dark { color: #1c626d !important; }
/* Unavailable menu destinations stay visible, with Bootstrap's disabled state. */
[data-company-page][aria-disabled="true"] { color: var(--bs-tertiary-color) !important; }
[data-company-page].btn[aria-disabled="true"] {
  --bs-btn-disabled-bg: var(--bs-tertiary-bg);
  --bs-btn-disabled-border-color: var(--bs-border-color);
  --bs-btn-disabled-opacity: 1;
}
.bg-lightblue { background-color: #3c99dc; }
.bg-orange { background-color: #f39c12; }
.bg-greensea { background-color: #16a085; }
.bg-carrot { background-color: #e67e22; }
.logo-text { font-size: 1.5rem; }
/* Sidebar appearance from the reference project. */
#sidebarInventory, #sidebarEcommerce {
  --bs-offcanvas-width: 35%;
  color: var(--bs-body-color);
  overflow-y: auto;
  box-shadow: 2px 0 6px rgba(0, 0, 0, 0.1);
}
#sidebarInventory .offcanvas-body, #sidebarEcommerce .offcanvas-body { flex: none; overflow-y: visible; }
@media (max-width: 800px) {
  #sidebarInventory, #sidebarEcommerce { --bs-offcanvas-width: 80%; }
}
@media screen and (max-height: 450px) {
  #sidebarInventory a, #sidebarEcommerce a { font-size: 20px; }
}
body { min-height: 100vh; display: flex; flex-direction: column; color: var(--intorry-ink); background: #f7f9fb; }
[hidden] { display: none !important; }
.app-header { background: #17a2b8; view-transition-name: app-header; }
.brand { font-size: 1.35rem; font-weight: 700; letter-spacing: -.04em; white-space: nowrap; }
.breadcrumb {
  --bs-breadcrumb-font-size: .875rem;
  --bs-breadcrumb-item-padding-x: .75rem;
  --bs-breadcrumb-margin-bottom: .75rem;
  --bs-breadcrumb-divider-color: #d4dbe5;
  --bs-breadcrumb-item-active-color: #171717;
  color: #98a6bb;
}
.breadcrumb a { color: inherit; text-decoration: none; }
.breadcrumb a:hover { color: var(--intorry-teal); }
.btn-primary { --bs-btn-bg: #17696d; --bs-btn-border-color: #17696d; --bs-btn-hover-bg: #115357; --bs-btn-hover-border-color: #115357; --bs-btn-active-bg: #115357; --bs-btn-active-border-color: #115357; --bs-btn-disabled-bg: #17696d; --bs-btn-disabled-border-color: #17696d; }
.btn-outline-primary { --bs-btn-color: #17696d; --bs-btn-border-color: #17696d; --bs-btn-hover-bg: #17696d; --bs-btn-hover-border-color: #17696d; --bs-btn-active-bg: #115357; --bs-btn-active-border-color: #115357; }
.nav-pills { --bs-nav-pills-link-active-bg: var(--bs-primary); }
.pagination { --bs-pagination-active-bg: var(--bs-primary); --bs-pagination-active-border-color: var(--bs-primary); --bs-pagination-focus-box-shadow: 0 0 0 .25rem var(--bs-focus-ring-color); }
.dropdown-menu { --bs-dropdown-link-active-bg: var(--bs-primary); }
.list-group { --bs-list-group-active-bg: var(--bs-primary); --bs-list-group-active-border-color: var(--bs-primary); }
.progress { --bs-progress-bar-bg: var(--bs-primary); }
.form-check-input:checked { background-color: var(--bs-primary); border-color: var(--bs-primary); }
.form-check-input:focus, .form-control:focus, .form-select:focus { border-color: #94c0dc; box-shadow: 0 0 0 .25rem var(--bs-focus-ring-color); }
.form-range::-webkit-slider-thumb { background-color: var(--bs-primary); }
.form-range::-moz-range-thumb { background-color: var(--bs-primary); }
.menu-section { font-size: 1.1rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--intorry-teal); }
.account-icon { font-size: 3rem; color: var(--intorry-teal); }
.auth-action-card { max-width: 32rem; }
#tag-color::-webkit-color-swatch-wrapper { padding: 0; }
#tag-color::-webkit-color-swatch { border-radius: 0; }
#tag-color::-moz-color-swatch { border-radius: 0; }
#tagsTableDIV input[type="color"]::-webkit-color-swatch-wrapper { padding: 0; }
#tagsTableDIV input[type="color"]::-webkit-color-swatch { border: 0; border-radius: 0; }
#tagsTableDIV input[type="color"]::-moz-color-swatch { border: 0; border-radius: 0; }
#supplier-color::-webkit-color-swatch-wrapper { padding: 0; }
#supplier-color::-webkit-color-swatch { border-radius: 0; }
#supplier-color::-moz-color-swatch { border-radius: 0; }
#customer-color::-webkit-color-swatch-wrapper { padding: 0; }
#customer-color::-webkit-color-swatch { border-radius: 0; }
#customer-color::-moz-color-swatch { border-radius: 0; }
#product-color::-webkit-color-swatch-wrapper { padding: 0; }
#product-color::-webkit-color-swatch { border-radius: 0; }
#product-color::-moz-color-swatch { border-radius: 0; }
.skip-link { position: absolute; top: -5rem; left: 1rem; z-index: 1100; }
.skip-link:focus { top: 1rem; }

/* Product suggestions retain the reference's text and matching-letter colors. */
#products-find-suggestions, #skuNavInput-suggestions {
  --bs-dropdown-color: #373a3c;
  --bs-dropdown-link-color: #373a3c;
  --bs-dropdown-link-hover-color: #2b2d2f;
  --bs-dropdown-link-hover-bg: #f5f5f5;
  --bs-dropdown-padding-y: 5px;
  --bs-dropdown-border-radius: .25rem;
  margin-top: 2px;
}
/* Tables share Products Table's compact cells and thumbnail size. */
table.table.dataTable > thead > tr > th { padding: 4px; }
table.dataTable > thead > tr > th { font-weight: bolder !important; }
table.table.dataTable > tbody > tr > td { padding: 1px; }
table.dataTable > tbody > tr > td.dt-empty { text-align: center; white-space: normal; }
table.dataTable img { width: 35px; height: 35px; margin: 0; object-fit: cover; }
/* Product Events keeps the reference's compact cells on the page and in modals. */
table.dataTable.product-events-table > thead > tr > th { padding: 4px; }
table.dataTable.product-events-table > tbody > tr > td { padding: 1px; }
#productsTableDIV input.form-control:not([type="color"]) { padding: 2px 4px; }
/* Number fields keep native validation without visible spinner arrows. */
input[type="number"] { appearance: textfield; -moz-appearance: textfield; }
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
#productsTableDIV a.btn-primary, #skuNavBtn {
  --bs-btn-bg: #2980b9;
  --bs-btn-border-color: #2980b9;
  --bs-btn-hover-bg: #226a9a;
  --bs-btn-hover-border-color: #20638f;
  --bs-btn-active-bg: #20638f;
  --bs-btn-active-border-color: #1d5c85;
  --bs-btn-focus-shadow-rgb: 73, 147, 196;
}

/* Native same-origin page transitions keep the shared header visually steady. */
@view-transition { navigation: auto; }
::view-transition-group(app-header) { animation-duration: 0s; }
::view-transition-old(app-header) { display: none; }
::view-transition-new(app-header) { animation: none; mix-blend-mode: normal; }
@media (prefers-reduced-motion: reduce) {
  ::view-transition-group(*) { animation-duration: 0s; }
}
