/* KIRE client area — match the marketing terminal chrome.
   Does not change billing logic. Visual layer only. */

@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Source+Sans+3:wght@400;600&display=swap");

:root {
  --k-bg: #0b0d10;
  --k-bg2: #101318;
  --k-bg3: #15191f;
  --k-hover: #1b212a;
  --k-green: #00bff6;
  --k-green-dim: #0089b3;
  --k-glow: rgba(0, 191, 246, 0.14);
  --k-amber: #e6b325;
  --k-text: #c5cdd6;
  --k-dim: #8b939e;
  --k-bright: #eef2f6;
  --k-line: #232833;
  --k-mono: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
  --k-sans: "Source Sans 3", "Source Sans Pro", "Open Sans", sans-serif;
}

html, body {
  background: var(--k-bg) !important;
  color: var(--k-text) !important;
  font-family: var(--k-sans) !important;
}

h1, h2, h3, h4, h5, h6,
.navbar-main,
.logo-text,
.kire-wordmark {
  font-family: var(--k-mono) !important;
  font-weight: 500 !important;
  color: var(--k-bright);
}
h2 { font-size: 1.25rem !important; line-height: 1.3; }
#order-slider h1,
#order-slider h2,
#order-slider h3 {
  font-size: 1.15rem !important;
  line-height: 1.3;
}

a { color: var(--k-green); }
a:hover { color: var(--k-bright); }

/* status bar injected in header.tpl */
.kire-status {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  height: 34px;
  padding: 0 1rem;
  background: #080a0c;
  border-bottom: 1px solid var(--k-line);
  color: var(--k-dim);
  font-family: var(--k-mono);
  font-size: 12px;
  letter-spacing: 0.02em;
  white-space: nowrap;
  overflow-x: auto;
}
.kire-status .host { color: var(--k-green); }
.kire-status .sep { color: var(--k-line); }
.kire-status .ok { color: var(--k-green-dim); }
.kire-status a { color: var(--k-dim); text-decoration: none; }
.kire-status a:hover { color: var(--k-green); }

section#header {
  background: var(--k-bg) !important;
  border-radius: 0 !important;
  border-bottom: 1px solid var(--k-line);
  padding: 12px 0 !important;
}
section#header .logo img { display: none; }
section#header .kire-wordmark {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  line-height: 1;
}
section#header .kire-wordmark .brand-prompt {
  display: inline-flex;
  align-items: baseline;
  font-family: var(--k-mono);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
}
section#header .kire-wordmark .u {
  color: var(--k-green);
  text-shadow: 0 0 14px var(--k-glow);
}
section#header .kire-wordmark .at,
section#header .kire-wordmark .h,
section#header .kire-wordmark .p {
  color: var(--k-dim);
  font-weight: 400;
}
section#header .kire-wordmark .h { font-weight: 500; }
section#header .kire-wordmark .cur {
  display: inline-block;
  width: 0.48em;
  height: 0.95em;
  margin-left: 0.22em;
  background: var(--k-green);
  box-shadow: 0 0 10px var(--k-glow);
  transform: translateY(0.14em);
  animation: kireBlink 1.05s steps(1) infinite;
}
@keyframes kireBlink {
  50% { opacity: 0; }
}
section#header .kire-wordmark:hover { text-decoration: none; }
section#header .kire-wordmark:hover .u { color: var(--k-bright); text-shadow: none; }
section#header .logo-text {
  color: var(--k-green) !important;
  font-size: 1.4em !important;
}

section#header .top-nav > li > a {
  color: var(--k-dim) !important;
  font-family: var(--k-mono);
  font-size: 12px;
}
section#header .top-nav > li > a:hover { color: var(--k-green) !important; }
section#header .top-nav .btn,
section#header .primary-action .btn {
  background: transparent !important;
  border: 1px solid var(--k-amber) !important;
  color: var(--k-amber) !important;
  border-radius: 0 !important;
  font-family: var(--k-mono);
  font-size: 12px;
}
section#header .primary-action .btn:hover {
  background: var(--k-amber) !important;
  color: var(--k-bg) !important;
}

#main-menu,
.navbar-main {
  background: var(--k-bg2) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--k-line) !important;
  border-radius: 0 !important;
  font-family: var(--k-mono) !important;
  min-height: 44px;
}
.navbar-main .navbar-nav > li > a {
  color: var(--k-dim) !important;
  font-size: 13px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}
.navbar-main .navbar-nav > li > a:hover,
.navbar-main .navbar-nav > .active > a,
.navbar-main .navbar-nav > .open > a,
.navbar-main .navbar-nav > .active > a:hover,
.navbar-main .navbar-nav > .open > a:hover {
  color: var(--k-green) !important;
  background: var(--k-glow) !important;
}
.navbar-main .dropdown-menu {
  background: #0e1115 !important;
  border: 1px solid var(--k-line) !important;
  border-radius: 0 !important;
}
.navbar-main .dropdown-menu > li > a { color: var(--k-text) !important; }
.navbar-main .dropdown-menu > li > a:hover {
  background: var(--k-green) !important;
  color: var(--k-bg) !important;
}
.navbar-main li.account { background: transparent !important; }
.navbar-main .navbar-toggle { border-color: var(--k-line) !important; }
.navbar-main .navbar-toggle .icon-bar { background: var(--k-green) !important; }

.navbar-main .navbar-nav > li.nav-term-item {
  display: flex;
  align-items: center;
  padding: 4px 0 4px 8px;
}
.navbar-main .navbar-nav > li.nav-term-item > a.nav-term {
  display: flex !important;
  align-items: center;
  gap: 0.4rem;
  padding: 0.12rem 0.5rem 0.12rem 0.12rem !important;
  border: 1px solid var(--k-green-dim);
  color: var(--k-green) !important;
  background: rgba(0, 191, 246, 0.06) !important;
  line-height: 1;
  text-decoration: none;
}
.navbar-main .navbar-nav > li.nav-term-item > a.nav-term:hover,
.navbar-main .navbar-nav > li.nav-term-item > a.nav-term:focus {
  border-color: var(--k-green);
  background: var(--k-glow) !important;
  color: var(--k-green) !important;
  box-shadow: 0 0 14px rgba(0, 191, 246, 0.14);
}
.navbar-main .nav-term-icon {
  display: block;
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  background-color: #0b0d10;
  background-image: url("/site/img/nav-terminal.png?v=20260911chrome");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 36px 36px;
}
.navbar-main .nav-term-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.1rem;
}
.navbar-main .nav-term-ssh {
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--k-dim);
}
.navbar-main a.nav-term:hover .nav-term-ssh { color: var(--k-green-dim); }
.navbar-main .nav-term-name {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--k-green);
}
@media (max-width: 767px) {
  .navbar-main .navbar-nav > li.nav-term-item {
    padding: 8px 15px 12px;
    justify-content: center;
  }
  .navbar-main .navbar-nav > li.nav-term-item > a.nav-term {
    justify-content: center;
    padding: 0.35rem 0.7rem !important;
  }
}

section#main-body {
  background: var(--k-bg) !important;
  color: var(--k-text);
}
.main-content { color: var(--k-text); }

.panel,
.panel-default,
.panel-sidebar,
.card {
  background: var(--k-bg3) !important;
  border: 1px solid var(--k-line) !important;
  border-radius: 0 !important;
  color: var(--k-text) !important;
  box-shadow: none !important;
}
.panel-heading,
.panel-default > .panel-heading,
.panel-sidebar > .panel-heading,
.card-header {
  background: var(--k-bg2) !important;
  border-bottom: 1px solid var(--k-line) !important;
  color: var(--k-green) !important;
  font-family: var(--k-mono);
  font-size: 13px;
  border-radius: 0 !important;
}
.panel-body,
.card-body { color: var(--k-text) !important; }
.panel-footer,
.card-footer {
  background: var(--k-bg2) !important;
  border-top: 1px solid var(--k-line) !important;
  color: var(--k-dim) !important;
}

.list-group-item {
  background: var(--k-bg3) !important;
  border-color: var(--k-line) !important;
  color: var(--k-text) !important;
}
.list-group-item:hover,
.list-group-item.active,
a.list-group-item:hover {
  background: var(--k-hover) !important;
  color: var(--k-green) !important;
  border-color: var(--k-line) !important;
}

.tiles .tile {
  background: var(--k-bg3) !important;
  border: 1px solid var(--k-line) !important;
  color: var(--k-text) !important;
}
.tiles .tile:hover {
  border-color: var(--k-green-dim) !important;
  background: var(--k-hover) !important;
}

.btn {
  border-radius: 0 !important;
  font-family: var(--k-mono);
  font-size: 13px;
}
.btn-primary,
.btn-success,
.btn-info {
  background: transparent !important;
  border: 1px solid var(--k-green) !important;
  color: var(--k-green) !important;
}
.btn-primary:hover,
.btn-success:hover,
.btn-info:hover,
.btn-primary:focus,
.btn-success:focus {
  background: var(--k-green) !important;
  color: var(--k-bg) !important;
  border-color: var(--k-green) !important;
}
.btn-default,
.btn-secondary {
  background: transparent !important;
  border: 1px solid var(--k-line) !important;
  color: var(--k-text) !important;
}
.btn-default:hover {
  border-color: var(--k-green) !important;
  color: var(--k-green) !important;
  background: transparent !important;
}
.btn-danger {
  background: transparent !important;
  border: 1px solid #e85d5d !important;
  color: #e85d5d !important;
}

.form-control,
.form-control:focus,
select.form-control,
textarea.form-control {
  background: var(--k-bg2) !important;
  border: 1px solid var(--k-line) !important;
  color: var(--k-bright) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
label { color: var(--k-dim); font-family: var(--k-mono); font-size: 12px; font-weight: 400; }

.table { color: var(--k-text); }
.table > thead > tr > th {
  border-bottom-color: var(--k-line) !important;
  color: var(--k-dim);
  font-family: var(--k-mono);
  font-weight: 400;
  font-size: 12px;
}
.table > tbody > tr > td { border-top-color: var(--k-line) !important; }
.table-striped > tbody > tr:nth-of-type(odd) { background: var(--k-bg2) !important; }
.table-hover > tbody > tr:hover { background: var(--k-hover) !important; }
.dataTables_wrapper { color: var(--k-text); }

.pagination > li > a,
.pagination > li > span {
  background: var(--k-bg3) !important;
  border-color: var(--k-line) !important;
  color: var(--k-text) !important;
}
.pagination > .active > a,
.pagination > .active > span {
  background: var(--k-green) !important;
  border-color: var(--k-green) !important;
  color: var(--k-bg) !important;
}

.alert { border-radius: 0; }
.alert-info { background: var(--k-glow); border-color: var(--k-green-dim); color: var(--k-bright); }
.alert-success { background: var(--k-glow); border-color: var(--k-green-dim); color: var(--k-bright); }
.alert-warning { background: rgba(230,179,37,0.12); border-color: var(--k-amber); color: var(--k-bright); }
.alert-danger { background: rgba(232,93,93,0.12); border-color: #e85d5d; color: var(--k-bright); }

.breadcrumb {
  background: transparent !important;
  font-family: var(--k-mono);
  font-size: 12px;
}
.breadcrumb a { color: var(--k-dim); }
.breadcrumb .active { color: var(--k-green); }

section#home-banner {
  background: var(--k-bg2) !important;
  border-bottom: 1px solid var(--k-line);
  color: var(--k-text);
}
section#home-banner h2 {
  color: var(--k-green) !important;
  font-family: var(--k-mono) !important;
}
.home-shortcuts {
  background: var(--k-bg3) !important;
  border-bottom: 1px solid var(--k-line);
}
.home-shortcuts li a { color: var(--k-text) !important; }
.home-shortcuts li a:hover { color: var(--k-green) !important; }

.sidebar .panel-heading { color: var(--k-green) !important; }

.popover {
  background: #0e1115;
  border: 1px solid var(--k-line);
  color: var(--k-text);
}
.popover-title {
  background: var(--k-bg2);
  border-bottom: 1px solid var(--k-line);
  color: var(--k-green);
  font-family: var(--k-mono);
}
.popover.bottom > .arrow:after { border-bottom-color: #0e1115; }

.modal-content {
  background: var(--k-bg3);
  border: 1px solid var(--k-line);
  border-radius: 0;
  color: var(--k-text);
}
.modal-header, .modal-footer {
  background: var(--k-bg2);
  border-color: var(--k-line);
}

.logincontainer {
  background: var(--k-bg3);
  border: 1px solid var(--k-line);
  padding: 24px;
}

section#footer {
  background: #080a0c !important;
  border-top: 1px solid var(--k-line) !important;
  color: var(--k-dim) !important;
  font-family: var(--k-mono);
  font-size: 12px;
}
section#footer a { color: var(--k-text); }
section#footer a:hover { color: var(--k-green); }
section#footer .back-to-top i {
  background: var(--k-bg3) !important;
  color: var(--k-green) !important;
  border-radius: 0 !important;
}
.kire-foot-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 1rem;
  margin-bottom: 0.6rem;
}
.kire-colophon { color: var(--k-dim); }

/* cart / order form sitting inside the client area */
#order-standard_cart .products .product,
#order-standard_cart .categories-collapsed,
#order-standard_cart .panel-addon {
  background: var(--k-bg3) !important;
  border: 1px solid var(--k-line) !important;
  color: var(--k-text) !important;
}
#order-standard_cart .products .product header,
#order-standard_cart .panel-addon .panel-price {
  background: var(--k-bg2) !important;
  color: var(--k-bright) !important;
}
#order-standard_cart .products .product header span { color: var(--k-green) !important; }
#order-standard_cart .sub-heading { border-top-color: var(--k-line) !important; }
#order-standard_cart .sub-heading span,
#order-standard_cart .sub-heading-borderless span {
  background: var(--k-bg) !important;
  color: var(--k-green) !important;
  font-family: var(--k-mono);
}
#order-standard_cart label { color: var(--k-dim) !important; }
#order-standard_cart .panel-addon .panel-body label { color: var(--k-text) !important; }

.text-muted { color: var(--k-dim) !important; }
.well {
  background: var(--k-bg2) !important;
  border-color: var(--k-line) !important;
  color: var(--k-text);
}

@media (max-width: 767px) {
  .kire-status { font-size: 11px; }
}

/* Card Type on checkout (bare select, not .form-control) */
select#cctype,
select#cctype option,
select#inputCardType,
select#inputCardType option {
  background-color: #101318 !important;
  color: #eef2f6 !important;
  border: 1px solid #2e3542 !important;
  color-scheme: dark;
}

/* Checkout captcha: light pad so the GD image is readable on dark theme */
#kire-checkout-captcha {
  margin: 18px auto;
  padding: 14px 16px;
  max-width: 380px;
  background: #eef3f8;
  color: #101318;
  border: 1px solid #2e3542;
  text-align: center;
}
#kire-checkout-captcha p {
  margin: 0 0 10px 0;
  color: #101318;
  font-size: 13px;
}
#kire-checkout-captcha img,
#kire-checkout-captcha #inputCaptchaImage {
  display: inline-block;
  vertical-align: middle;
  width: 200px;
  height: 48px;
  background: #cfe6ff;
  border: 1px solid #8aa0b5;
}
#kire-checkout-captcha #inputCaptcha {
  display: inline-block;
  vertical-align: middle;
  width: 7em;
  height: 48px;
  margin-left: 10px;
  background: #ffffff !important;
  color: #101318 !important;
  border: 1px solid #2e3542 !important;
  font-size: 20px;
  letter-spacing: 0.12em;
  text-align: center;
}

/* Invoice pay summary (index.php?rp=/cart/invoice/{id}/pay)
   Default is #f8f8f8 with inherited light text. Visual only. */
.invoice-summary,
#invoiceIdSummary {
  background-color: var(--k-bg2) !important;
  border: 1px solid var(--k-line) !important;
  color: var(--k-text) !important;
  height: auto;
  min-height: 0;
}
.invoice-summary h2,
#invoiceIdSummary h2 {
  color: var(--k-bright) !important;
  font-family: var(--k-mono) !important;
}
.invoice-summary p,
.invoice-summary strong,
.invoice-summary td,
.invoice-summary th,
.invoice-summary .table,
.invoice-summary-table,
.invoice-summary-table td {
  color: var(--k-text) !important;
  border-color: var(--k-line) !important;
}
.invoice-summary .table,
.invoice-summary-table table {
  background-color: transparent !important;
}
.invoice-summary .table > tbody > tr > td,
.invoice-summary .table > tbody > tr > th,
.invoice-summary .table-striped > tbody > tr:nth-of-type(odd) {
  background-color: transparent !important;
  border-top-color: var(--k-line) !important;
}
.invoice-summary td.total-row,
.invoice-summary-table td.total-row {
  background-color: var(--k-bg3) !important;
  color: var(--k-bright) !important;
  font-weight: 600;
}
#frmPayment .control-label {
  color: var(--k-dim) !important;
}

/* 2026-08-29: ticket markdown editor was white-on-white.
   all.min.css sets .md-editor>textarea.markdown-editor { background:#fff }
   while this file sets textarea.form-control { color: --k-bright }.
   Same widget on submitticket.php and viewticket.php. */
.md-editor {
  border-color: var(--k-line) !important;
  background: var(--k-bg2) !important;
}
.md-editor > .btn-toolbar {
  background-color: var(--k-bg3) !important;
}
.md-editor > .md-preview,
.md-editor > textarea.markdown-editor {
  background-color: var(--k-bg2) !important;
  color: var(--k-bright) !important;
  border-top-color: var(--k-line) !important;
  border-bottom-color: var(--k-line) !important;
}
.md-editor .btn-default,
.md-editor .btn-toolbar .btn {
  background: transparent !important;
  border-color: var(--k-line) !important;
  color: var(--k-text) !important;
}
.markdown-editor-status {
  color: var(--k-dim) !important;
}

/* 2026-08-29b: compose contrast. Cover textarea/md-input/focus so typed
   text is not dark-on-dark after the dark-bg override. Same widget on
   submitticket.php and viewticket.php. Thread body too. */
.md-editor textarea,
.md-editor textarea.markdown-editor,
.md-editor textarea.md-input,
.md-editor textarea.form-control,
.md-editor > textarea:focus,
.md-editor .md-preview {
  background-color: #0b0d10 !important;
  color: #f5f7fa !important;
  caret-color: #f5f7fa !important;
}

/* 2026-09-09: DURABLE white-pane ticket/KB contrast — do not set light text on white panes */
.ticket-reply,
.ticket-reply.staff {
  background-color: #fff !important;
  color: #111 !important;
}
.ticket-reply .date,
.ticket-reply .user,
.ticket-reply .user .name,
.ticket-reply .user .type,
.ticket-reply .message,
.ticket-reply .attachments,
.ticket-reply .attachments *,
.ticket-reply .message *,
.ticket-reply.markdown-content,
.ticket-reply .markdown-content,
.ticket-reply .markdown-content p,
.ticket-reply .markdown-content li,
.ticket-reply .markdown-content span,
.ticket-reply .markdown-content td,
.ticket-reply .markdown-content th {
  color: #111 !important;
}
.ticket-reply .user {
  background-color: #f8f8f8 !important;
}
.ticket-reply.staff .user {
  background-color: #f2f9ff !important;
}
.ticket-reply .attachments {
  background-color: #f8f8f8 !important;
}
.ticket-reply a,
.ticket-reply .message a,
.ticket-reply .markdown-content a,
.ticket-reply .attachments a {
  color: #0a6b2d !important;
}
.ticket-reply a:hover,
.ticket-reply .message a:hover,
.ticket-reply .markdown-content a:hover,
.ticket-reply .attachments a:hover {
  color: #06401a !important;
}
.ticket-reply .markdown-content pre,
.ticket-reply .markdown-content code,
.ticket-reply .message pre,
.ticket-reply .message code {
  background-color: #444 !important;
  color: #f8f8f8 !important;
}
.kb-article-content {
  background-color: #fff !important;
  color: #111 !important;
}
.kb-article-content p,
.kb-article-content li {
  color: #111 !important;
}

/* 2026-09-05: cart Configure contrast — light product/summary boxes vs dark theme text */
#order-standard_cart .product-info,
#order-standard_cart .product-info .product-title,
#order-standard_cart .product-info p,
#order-standard_cart .summary-container,
#order-standard_cart .summary-container *,
#order-standard_cart .order-summary .product-name,
#order-standard_cart .order-summary .product-group,
#order-standard_cart .order-summary .summary-totals,
#order-standard_cart .order-summary .total-due-today,
#order-standard_cart .order-summary .total-due-today .amt {
  color: #1a1a1a !important;
}
#order-standard_cart .product-info,
#order-standard_cart .summary-container {
  background-color: #f8f8f8 !important;
}
#order-standard_cart .order-summary h2 {
  color: #fff !important;
}
#order-standard_cart .order-summary .loader {
  color: #efefef !important;
}
/* 2026-09-06: KIRE client-area tables FOR GOOD
   all.min.css forces .table td/th { background:#fff !important }
   while dark theme body text is light grey — grey-on-white (same class as cart).
   Keep light table surfaces; force dark text. Do not restyle .label.status. */

.table-container,
.table-container .dataTables_wrapper,
.dataTables_wrapper,
table.table,
table.table-list,
table.dataTable {
  color: #222 !important;
}

.table > thead > tr > th,
.table > thead > tr > td,
table.dataTable thead th,
table.dataTable thead td {
  color: #111 !important;
  background-color: #f0f2f5 !important;
  border-bottom-color: #cfd5dd !important;
  font-weight: 600 !important;
}

.table > tbody > tr > td,
.table > tbody > tr > th,
.table > tfoot > tr > td,
.table > tfoot > tr > th,
table.dataTable tbody td,
table.dataTable tbody th {
  color: #222 !important;
  background-color: #ffffff !important;
  border-top-color: #e3e7ec !important;
}

.table-striped > tbody > tr:nth-of-type(odd) > td,
.table-striped > tbody > tr:nth-of-type(odd) > th,
table.dataTable.stripe tbody tr.odd > td,
table.dataTable.display tbody tr.odd > td {
  background-color: #f7f8fa !important;
  color: #222 !important;
}

.table-hover > tbody > tr:hover > td,
.table-hover > tbody > tr:hover > th,
.table.table-list > tbody > tr:hover > td,
table.dataTable.hover tbody tr:hover > td,
table.dataTable.display tbody tr:hover > td {
  background-color: #eef3f8 !important;
  color: #111 !important;
}

/* Links inside tables: readable on white (not light theme green-on-white wash) */
.table-container table.table td a:not(.btn),
.table-container table.dataTable td a:not(.btn),
table.table-list td a:not(.btn) {
  color: #0a6b2d !important;
}
.table-container table.table td a:not(.btn):hover,
.table-container table.dataTable td a:not(.btn):hover {
  color: #06401a !important;
}

/* DataTables chrome */
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate,
.dataTables_wrapper label {
  color: #222 !important;
}
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select {
  background-color: #ffffff !important;
  color: #111 !important;
  border: 1px solid #cfd5dd !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
  color: #222 !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current {
  color: #111 !important;
  background: #eef3f8 !important;
  border-color: #cfd5dd !important;
}

/* Invoice page: crypto Pay Now matches Auth.net/PPCP primary */
.invoice-container .payment-btn-container #btnPayWithCryptoPayPal,
.payment-btn-container #btnPayWithCryptoPayPal {
  display: inline-block;
  margin-top: 8px;
}

/* 2026-09-08: cart Apply Promo / Validate Code contrast (regression fix)
   Root: theme .btn-default uses color:var(--k-text)=#c5cdd6 on transparent.
   Cart promo sits on white/light chrome → light-on-light (barely visible).
   Target (Erik/CoS): dark readable text on white Validate Code button.
   Do not restyle .label.status. */

#order-standard_cart #applyPromo button[name="validatepromo"],
#order-standard_cart #applyPromo .btn.btn-default.btn-block,
#order-standard_cart #applyPromo button.btn-default,
#order-standard_cart .view-cart-tabs .promo button[name="validatepromo"],
#order-standard_cart .view-cart-tabs .promo .btn.btn-default,
#order-standard_cart button[name="validatepromo"].btn-default {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: 1px solid #cfd5dd !important;
  color: #111111 !important;
  text-shadow: none !important;
  -webkit-text-fill-color: #111111 !important;
}
#order-standard_cart #applyPromo button[name="validatepromo"]:hover,
#order-standard_cart #applyPromo button[name="validatepromo"]:focus,
#order-standard_cart #applyPromo .btn.btn-default.btn-block:hover,
#order-standard_cart #applyPromo .btn.btn-default.btn-block:focus,
#order-standard_cart .view-cart-tabs .promo button[name="validatepromo"]:hover,
#order-standard_cart .view-cart-tabs .promo button[name="validatepromo"]:focus,
#order-standard_cart button[name="validatepromo"].btn-default:hover,
#order-standard_cart button[name="validatepromo"].btn-default:focus {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border-color: #1f7a32 !important;
  color: #0b3d16 !important;
  -webkit-text-fill-color: #0b3d16 !important;
}


#order-standard_cart #applyPromo .view-cart-promotion-code,
#order-standard_cart #applyPromo label,
#order-standard_cart #applyPromo .field-icon,
#order-standard_cart #applyPromo .form-group {
  color: #222 !important;
}
#order-standard_cart #applyPromo #inputPromotionCode,
#order-standard_cart #applyPromo input.field.form-control {
  background-color: #ffffff !important;
  color: #111 !important;
  border: 1px solid #cfd5dd !important;
}
#order-standard_cart #applyPromo #inputPromotionCode::placeholder {
  color: #667085 !important;
  opacity: 1;
}
#order-standard_cart a[href*="removepromo"].btn-default {
  background-color: #ffffff !important;
  border: 1px solid #cfd5dd !important;
  color: #222 !important;
}
#order-standard_cart a[href*="removepromo"].btn-default:hover {
  border-color: #1f7a32 !important;
  color: #1f7a32 !important;
  background-color: #ffffff !important;
}

/* Tab titles above Apply Promo Code on light cart chrome */
#order-standard_cart .view-cart-tabs .nav-tabs > li > a,
#order-standard_cart .panel-promo .nav-tabs > li > a {
  color: #222 !important;
}
#order-standard_cart .view-cart-tabs .nav-tabs > li.active > a,
#order-standard_cart .view-cart-tabs .nav-tabs > li.active > a:hover,
#order-standard_cart .view-cart-tabs .nav-tabs > li.active > a:focus {
  color: #111 !important;
  background-color: #f8f8f8 !important;
}

/* 2026-09-11: invoice/quote HTML logo 40% of prior full-width mark */
.invoice-header img,
.invoice-col > p > img[title] {
  width: 358px; /* 894 * 0.4 */
  max-width: 40%;
  height: auto;
}
