/* Relicita: shared workspace and bidder experience. Keep business rules in views. */
:root {
  --rx-ink: #17352f;
  --rx-accent: #176b57;
  --rx-soft: #edf7f2;
  --rx-border: #dce7e1;
}
.rx-workspace, .rx-bidder {
  background: #f6f8f5;
  color: #203a34;
  font-size: 1rem;
  line-height: 1.65;
  --bf-blue: #176b57;
  --bf-blue-dark: #105542;
  --bf-blue-light: #edf7f2;
  --bf-radius: .65rem;
  --bf-radius-lg: 1rem;
}
.rx-skip { position: fixed; top: -100px; left: 1rem; z-index: 10000; padding: .8rem 1rem; background: white; color: #17352f; border: 2px solid #176b57; border-radius: .5rem; }
.rx-skip:focus { top: .5rem; }
:where(.rx-workspace, .rx-bidder) :focus-visible { outline: 3px solid #a34c10; outline-offset: 3px; }
:where(.rx-workspace, .rx-bidder) .btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: .25rem; border-radius: .65rem; font-weight: 600; white-space: normal; }
:where(.rx-workspace, .rx-bidder) .btn-primary { background: #176b57; border-color: #176b57; }
:where(.rx-workspace, .rx-bidder) .btn-primary:hover { background: #105542; border-color: #105542; }
:where(.rx-workspace, .rx-bidder) .btn-outline-primary { color: #176b57; border-color: #176b57; }
:where(.rx-workspace, .rx-bidder) .btn-outline-primary:hover { color: white; background: #176b57; }
:where(.rx-workspace, .rx-bidder) .form-control,
:where(.rx-workspace, .rx-bidder) .form-select { min-height: 46px; font-size: 1rem; border-color: #aebfb7; border-radius: .6rem; }
:where(.rx-workspace, .rx-bidder) .form-text { color: #52655e; font-size: .875rem; line-height: 1.55; }
:where(.rx-workspace, .rx-bidder) .bf-card,
:where(.rx-workspace, .rx-bidder) .bf-stat,
.rx-bidder .bp-card, .rx-bidder .bp-auction-card { border-color: var(--rx-border); border-radius: 1rem; box-shadow: 0 3px 14px #183c2f06; }
.rx-workspace .bf-card-header { background: #f9fbf8; font-size: 1rem; }
.rx-workspace .bf-page-header { flex-wrap: wrap; gap: 1rem; margin-bottom: 1.5rem; }
.rx-workspace .bf-page-header h1 { font-size: clamp(1.6rem, 3vw, 2.15rem); letter-spacing: -.035em; color: var(--rx-ink); }
.rx-workspace .bf-navbar, .rx-bidder .bp-nav { background: #fff; border-bottom: 1px solid var(--rx-border); padding: .85rem 0; }
.rx-workspace .bf-navbar .navbar-brand img { filter: none !important; }
.rx-workspace .bf-navbar .navbar-toggler { color: #17352f !important; min-width: 44px; min-height: 44px; }
.rx-workspace #mainNav .navbar-nav .nav-link,
.rx-bidder .bp-nav .nav-link { color: #39554b !important; font-size: .9rem; padding: .6rem .7rem !important; min-height: 44px; opacity: 1; }
.rx-bidder .bp-nav .nav-link[aria-current="page"] { background: #edf7f2; color: #105542 !important; }
.rx-workspace #mainNav .navbar-nav { gap: .35rem; }
.rx-workspace #mainNav .navbar-nav .nav-link {
  display: flex; align-items: center; gap: .4rem; border-radius: 0;
  background: transparent; border-bottom: 2px solid transparent;
  padding: .65rem .65rem !important; opacity: 1;
}
.rx-workspace #mainNav .nav-link:hover { color: #105542 !important; border-bottom-color: #c5d6ce; }
.rx-workspace #mainNav .nav-link[aria-current="page"] { color: #105542 !important; border-bottom-color: #176b57; font-weight: 650; }
.rx-workspace #mainNav .nav-link[aria-expanded="true"] { background: #f5f7f6; border-bottom-color: #aabdb3; }
.rx-workspace #mainNav .nav-account-label { display: block; max-width: 15rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rx-workspace #mainNav .nav-account .nav-link > i,
.rx-workspace #mainNav .dropdown-toggle::after { flex-shrink: 0; }
.rx-workspace #mainNav .dropdown-menu { padding: .45rem; border: 1px solid #e1e8e4; border-radius: .5rem; box-shadow: 0 10px 28px #17352f14; }
.rx-workspace #mainNav .dropdown-item { padding: .65rem .8rem; border-radius: .25rem; color: #39554b; }
.rx-workspace #mainNav .dropdown-item:hover,
.rx-workspace #mainNav .dropdown-item:focus { background: #f1f5f3; color: #105542; }
.rx-workspace #mainNav .dropdown-item[aria-current="page"] { background: #f1f5f3; color: #105542; font-weight: 650; }
.rx-workspace #mainNav .nav-account-identity .dropdown-header { white-space: normal; overflow-wrap: anywhere; max-width: 24rem; }
.rx-workspace #mainNav .nav-link-logout { justify-content: center; width: 44px; }
@media (max-width: 1399.98px) {
  .rx-workspace #mainNav .navbar-nav { padding-top: .8rem; gap: .15rem; align-items: stretch; }
  .rx-workspace #mainNav .navbar-nav .nav-link { padding: .75rem .8rem !important; }
  .rx-workspace #mainNav .nav-link[aria-current="page"] { border-bottom-color: transparent; box-shadow: inset 3px 0 #176b57; }
  .rx-workspace #mainNav .nav-account-label { max-width: none; white-space: normal; overflow-wrap: anywhere; min-width: 0; }
  .rx-workspace #mainNav .dropdown-menu { box-shadow: none; margin: .25rem 0 .7rem .8rem; }
}
.rx-hero { background: #eaf4ed; border: 1px solid #d8e8da; border-radius: 1.2rem; padding: clamp(1.2rem, 3vw, 2rem); margin-bottom: 1.5rem; }
.rx-eyebrow { color: #386b54; text-transform: uppercase; letter-spacing: .11em; font-size: .75rem; font-weight: 750; margin-bottom: .5rem; }
.rx-hero h1, .rx-hero h2 { color: #17352f; letter-spacing: -.035em; }
.rx-hero p { max-width: 65ch; }
.rx-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1rem 0 1.5rem; }
.rx-step { background: #fff; border: 1px solid var(--rx-border); border-radius: .9rem; padding: 1.1rem; min-width: 0; }
.rx-step strong { display: block; color: #17352f; margin-bottom: .35rem; }
.rx-step p { color: #52655e; font-size: .9rem; margin: 0 0 .65rem; }
.rx-step a { color: #105542; font-weight: 650; text-underline-offset: 3px; }
.rx-note { background: #f0f6fa; border-left: 3px solid #5886a0; border-radius: .5rem; padding: 1rem; color: #2d4b5f; font-size: .9rem; }
.rx-settings-nav { display: flex; gap: .5rem; flex-wrap: wrap; margin: 1.25rem 0; }
.rx-settings-nav a { padding: .6rem 1rem; background: #fff; border: 1px solid var(--rx-border); border-radius: 2rem; color: #17352f; text-decoration: none; }
[id="connect-stripe"], [id="payments-form"], [id="company-profile"] { scroll-margin-top: 1rem; }
.rx-workspace .admin-sidebar { background: #edf3ee; border-right: 1px solid var(--rx-border); }
.rx-workspace .admin-sidebar nav a { color: #365748 !important; min-height: 44px; white-space: normal; }
.rx-workspace .admin-sidebar nav a:hover, .rx-workspace .admin-sidebar nav a[aria-current="page"] { background: #d9e9dc; color: #143f2d !important; }
.rx-workspace .admin-content { background: transparent; }
.rx-workspace .admin-sidebar-title { color: #42614d !important; }
.rx-workspace .table-responsive { border-radius: .75rem; }
.rx-workspace .bf-table th { text-transform: none; letter-spacing: 0; font-size: .85rem; background: #f3f7f3; }
.rx-bidder .bp-auction-card { padding: 1.5rem; }
.rx-bidder .bp-footer { color: #586b62; }
.rx-workspace .wizard-step { min-height: 64px; font-size: .85rem; line-height: 1.3; }
.rx-workspace .wizard-step.is-active { color: #105542; }
.rx-workspace .wizard-step.is-active span, .rx-workspace .wizard-step.is-complete span { background: #176b57; }
.rx-workspace .choice-card:has(input:checked) { border-color: #176b57; background: #edf7f2; }
@media (max-width: 1199.98px) and (min-width: 992px) {
  .rx-workspace #mainNav .navbar-nav { flex-wrap: wrap; }
}
@media (max-width: 767.98px) {
  .rx-steps { grid-template-columns: 1fr; gap: .65rem; }
  .rx-step { padding: 1rem; }
  .rx-workspace #main-content, .rx-bidder #main-content { padding-top: 1.2rem !important; }
  .rx-workspace .bf-page-header > .btn { width: 100%; }
  .rx-workspace .admin-sidebar { border-right: 0; border-bottom: 1px solid var(--rx-border); }
  .rx-workspace .admin-sidebar nav a { min-width: 0; }
  .rx-workspace .admin-content-inner { padding: 1rem .5rem !important; }
  .rx-workspace .bf-card.p-4 { padding: 1.1rem !important; }
  .rx-workspace .wizard-stepper { gap: .2rem; }
  .rx-workspace .wizard-actions { flex-wrap: wrap; }
  .rx-bidder .bp-auction-card { padding: 1rem; }
  .rx-bidder .bp-auction-card > .d-flex { flex-wrap: wrap; }
  :where(.rx-workspace, .rx-bidder) .input-group { flex-wrap: nowrap; }
  :where(.rx-workspace, .rx-bidder) h1 { overflow-wrap: anywhere; }
  :where(.rx-workspace, .rx-bidder) .flex-fill { min-width: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .rx-bidder .bp-live-dot { animation: none; }
  :where(.rx-workspace, .rx-bidder) * { scroll-behavior: auto !important; transition: none !important; }
}
