body {
  background: #071016;
  color: #e6edf3;
}
.navbar {
  border-bottom: 1px solid #22313b;
}
.navbar .container-fluid {
  gap: 12px;
}
.navbar-brand {
  min-width: 0;
}
.navbar .btn {
  min-width: 84px;
}
.navbar-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.live-navbar-actions {
  flex: 1 1 640px;
  gap: 14px;
  justify-content: flex-end;
  min-width: 0;
}
.navbar-league-field {
  align-items: center;
  display: inline-flex;
  gap: 8px;
  min-width: 260px;
}
.navbar-league-field span {
  color: #91a7b7;
  font-size: 0.82rem;
  font-weight: 700;
  white-space: nowrap;
}
.navbar-league-field select {
  min-width: 170px;
}
.navbar-main-tabs {
  background: #0f171e;
  border: 1px solid #2a3a45;
  display: inline-flex;
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
}
.nav-view-tab {
  min-width: 104px;
  white-space: nowrap;
}
.brand-icon {
  flex: 0 0 auto;
  height: 52px;
  object-fit: contain;
  width: 64px;
}
.brand-label {
  display: grid;
  gap: 2px;
  line-height: 1.05;
}
.brand-name {
  font-weight: 700;
}
.brand-version {
  color: #91a7b7;
  font-size: 0.72rem;
  font-weight: 600;
}
.app-shell {
  --category-menu-width: 236px;
  --category-rail-width: 44px;
  --category-sidebar-width: calc(var(--category-menu-width) + var(--category-rail-width));
  display: grid;
  grid-template-columns: var(--category-menu-width) minmax(0, 1fr);
  gap: 22px;
  min-height: calc(100vh - 76px);
  overflow-x: clip;
  transition: grid-template-columns 0.18s ease, gap 0.18s ease;
}
.app-shell.categories-drawer-open:not(.categories-drawer-pinned) {
  grid-template-columns: var(--category-sidebar-width) minmax(0, 1fr);
}
.app-shell.categories-drawer-collapsed {
  gap: 14px;
  grid-template-columns: var(--category-rail-width) minmax(0, 1fr);
}
.side-panel {
  background: #101920;
  border: 1px solid #1f2c36;
  border-radius: 4px;
  align-self: start;
  overflow: hidden;
  position: relative;
  transition: transform 0.18s ease;
  width: var(--category-menu-width);
}
.app-shell.categories-drawer-collapsed .side-panel {
  transform: translateX(calc(var(--category-menu-width) * -1));
  width: var(--category-sidebar-width);
}
.app-shell.categories-drawer-open:not(.categories-drawer-pinned) .side-panel {
  width: var(--category-sidebar-width);
}
.category-sidebar-toggle {
  align-items: center;
  background: #101920;
  border: 0;
  border-left: 1px solid #22313b;
  color: #8fe8cf;
  cursor: pointer;
  display: flex;
  font-size: 1.8rem;
  font-weight: 800;
  justify-content: center;
  line-height: 1;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  transition: background-color 0.16s ease, color 0.16s ease, right 0.16s ease, width 0.16s ease, box-shadow 0.16s ease;
  width: var(--category-rail-width);
  z-index: 2;
}
.category-sidebar-toggle:hover,
.category-sidebar-toggle:focus-visible {
  background: #17232d;
  box-shadow: inset 2px 0 0 rgba(0, 209, 154, 0.45), 0 0 18px rgba(0, 209, 154, 0.08);
  color: #b9ffec;
  outline: none;
  width: calc(var(--category-rail-width) + 4px);
}
.category-sidebar-toggle-icon {
  transform: translateY(-1px);
  transition: transform 0.16s ease;
}
.category-sidebar-toggle:hover .category-sidebar-toggle-icon,
.category-sidebar-toggle:focus-visible .category-sidebar-toggle-icon {
  transform: translate(2px, -1px);
}
.app-shell.categories-drawer-pinned .category-sidebar-toggle {
  display: none;
}
.app-shell.categories-drawer-open:not(.categories-drawer-pinned) .side-title,
.app-shell.categories-drawer-open:not(.categories-drawer-pinned) .category-list {
  width: calc(var(--category-menu-width) - 2px);
}
.app-shell.categories-drawer-open:not(.categories-drawer-pinned) .category-sidebar-toggle {
  background: rgba(16, 25, 32, 0.96);
}
.app-shell.categories-drawer-open:not(.categories-drawer-pinned) .category-sidebar-toggle:hover .category-sidebar-toggle-icon,
.app-shell.categories-drawer-open:not(.categories-drawer-pinned) .category-sidebar-toggle:focus-visible .category-sidebar-toggle-icon {
  transform: translate(-2px, -1px);
}
.app-shell.categories-drawer-collapsed .side-title,
.app-shell.categories-drawer-collapsed .category-list {
  pointer-events: none;
  visibility: hidden;
}
.side-title {
  background: #17232d;
  color: #aeb9c4;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  padding: 13px 18px;
  text-transform: uppercase;
}
.category-list {
  display: grid;
}
.category-button {
  align-items: center;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  color: #d5dde5;
  display: grid;
  grid-template-columns: 34px 1fr auto;
  gap: 10px;
  padding: 10px 16px;
  text-align: left;
}
.category-button:hover,
.category-button.active {
  background: #1a2630;
  color: #00d19a;
}
.category-button img,
.category-placeholder {
  height: 30px;
  object-fit: contain;
  width: 30px;
}
.category-placeholder {
  background: #26333e;
  border-radius: 4px;
  display: block;
}
.category-button small {
  color: #788692;
}
.main-panel {
  background: #17222b;
  border: 1px solid #22313b;
  border-radius: 4px;
  padding: 24px;
}
.hero-bar {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
}
.hero-bar h1 {
  font-size: 2rem;
  font-weight: 750;
  margin: 14px 0 6px;
}
.hero-bar p {
  color: #aab6c2;
  margin: 0;
  max-width: 820px;
}
.crumbs {
  color: #91a7b7;
  font-size: 0.92rem;
}
.language-switch {
  background: #0f171e;
  border: 1px solid #2b3b47;
  display: inline-flex;
  flex: none;
}
.lang-btn {
  background: transparent;
  border: 0;
  color: #9baab5;
  font-weight: 700;
  padding: 8px 12px;
}
.lang-btn.active {
  background: #00a77a;
  color: #06110e;
}
.filters-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(220px, 1fr) minmax(150px, 0.65fr) minmax(170px, 0.75fr) minmax(260px, 1.2fr);
}
.market-filters {
  margin-bottom: 12px;
}
.form-field {
  display: grid;
  gap: 6px;
}
.form-field span,
.summary-label,
.muted-status {
  color: #a7adb5;
  font-size: 0.85rem;
}
.loading-inline,
.loading-block {
  align-items: center;
  color: #aab6c2;
  display: inline-flex;
  gap: 8px;
}
.loading-block {
  display: flex;
  padding: 8px 0;
}
.loading-spinner {
  animation: loading-spin 0.8s linear infinite;
  border: 2px solid #2a3a45;
  border-radius: 50%;
  border-top-color: #00d19a;
  flex: none;
  height: 16px;
  width: 16px;
}
@keyframes loading-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .loading-spinner {
    animation-duration: 2.4s;
  }
}
.form-control,
.form-select {
  background-color: #101920;
  border-color: #2a3a45;
  color: #e6edf3;
}
.action-row {
  align-items: center;
  display: flex;
  gap: 10px;
  margin: 12px 0 16px;
}
.main-view-tab {
  background: transparent;
  border: 0;
  color: #aab6c2;
  font-size: 0.92rem;
  font-weight: 700;
  padding: 8px 14px;
}
.main-view-tab.active {
  background: #00a77a;
  color: #06110e;
}
.view-hidden {
  display: none !important;
}
.summary-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(140px, 1fr));
  gap: 12px;
}
.summary-strip > div {
  background: #101920;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  padding: 12px;
}
.summary-strip strong {
  display: block;
  font-size: 1.15rem;
  margin-top: 4px;
}
.lot-panel {
  background: #101920;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  margin-bottom: 16px;
  padding: 16px;
}
.lot-panel-header {
  align-items: start;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}
.lot-panel h2 {
  font-size: 1.1rem;
  margin: 0 0 6px;
}
.lot-panel p {
  color: #91a7b7;
  margin: 0;
}
.lot-subtabs {
  align-items: center;
  border-bottom: 1px solid rgba(148, 163, 184, 0.18);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 14px;
}
.lot-subtab {
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  color: #91a7b7;
  cursor: pointer;
  font-size: 0.86rem;
  padding: 8px 2px 9px;
}
.lot-subtab.active {
  border-bottom-color: #60a5fa;
  color: #eff6ff;
}
.lot-search-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(220px, 1fr) minmax(260px, 1.4fr) 120px;
}
.lot-market-grid {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(320px, 1fr) 140px 120px minmax(170px, auto);
}
.base-market-price-field {
  min-width: 0;
}
.form-field .base-market-price-filter {
  align-items: center;
  color: inherit;
  display: inline-grid;
  font-size: inherit;
  gap: 6px;
  grid-template-columns: 36px 68px 42px;
  justify-content: start;
  width: max-content;
}
.base-market-operator-select,
.base-market-price-value,
.base-market-currency-select {
  height: 32px;
}
.base-market-operator-select {
  font-weight: 800;
  padding: 0 4px;
  text-align: center;
  width: 36px;
}
.base-market-price-value {
  padding: 4px 6px;
  text-align: center;
  width: 68px;
}
.form-field .base-market-currency-picker {
  color: #e6edf3;
  display: inline-block;
  font-size: 0.72rem;
  height: 32px;
  position: relative;
  width: 42px;
}
.base-market-currency-select {
  color: transparent;
  inset: 0;
  padding: 0;
  position: absolute;
  width: 42px;
}
.base-market-currency-select option {
  background: #101920;
  color: #e6edf3;
}
.base-market-currency-picker img,
.base-market-currency-picker span {
  left: 50%;
  max-height: 20px;
  max-width: 20px;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.base-market-currency-picker span {
  font-weight: 800;
  line-height: 1;
}
.base-market-activity-toggle {
  align-items: center;
  color: #b8c4ce;
  display: inline-flex;
  font-size: 0.88rem;
  gap: 8px;
  min-height: 34px;
}
.base-market-activity-toggle input {
  accent-color: #60a5fa;
  height: 16px;
  width: 16px;
}
.lot-results {
  display: grid;
  gap: 12px;
}
.base-market-results {
  display: grid;
  gap: 10px;
}
.base-market-sort-row {
  align-items: stretch;
  background: rgba(32, 46, 56, 0.85);
  border: 1px solid rgba(148, 163, 184, 0.16);
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(260px, 1.2fr) repeat(4, minmax(110px, 0.55fr));
  padding: 0 9px;
}
.base-market-sort-button {
  align-items: center;
  background: transparent;
  border: 0;
  color: #91a7b7;
  display: flex;
  font-size: 0.76rem;
  font-weight: 700;
  gap: 8px;
  justify-content: space-between;
  min-height: 36px;
  padding: 8px 3px;
  text-align: left;
}
.base-market-sort-button:hover,
.base-market-sort-button.active {
  color: #00d19a;
}
.base-market-sort-button span:first-child {
  min-width: 0;
  overflow-wrap: anywhere;
}
.base-market-row {
  align-items: start;
  background: rgba(255, 255, 255, 0.014);
  border: 1px solid rgba(148, 163, 184, 0.12);
  border-left: 3px solid #7bb7ff;
  color: inherit;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(260px, 1.2fr) repeat(4, minmax(110px, 0.55fr));
  padding: 10px 12px;
  text-align: left;
}
.base-market-row.active {
  background: rgba(37, 99, 235, 0.08);
  outline: 1px solid rgba(96, 165, 250, 0.34);
}
.base-market-row strong,
.base-market-row span,
.base-market-row small {
  min-width: 0;
  overflow-wrap: anywhere;
}
.base-market-main {
  display: grid;
  gap: 3px;
}
.base-market-title-line,
.base-market-detail-title {
  align-items: center;
  display: flex;
  gap: 10px;
  min-width: 0;
}
.base-market-icon {
  align-items: center;
  background: rgba(96, 165, 250, 0.08);
  border: 1px solid rgba(148, 163, 184, 0.18);
  display: inline-flex;
  flex: 0 0 38px;
  height: 38px;
  justify-content: center;
  overflow: hidden;
  width: 38px;
}
.base-market-icon img {
  display: block;
  height: 100%;
  object-fit: contain;
  width: 100%;
}
.base-market-icon-lg {
  flex-basis: 52px;
  height: 52px;
  width: 52px;
}
.base-market-icon-fallback::before {
  background: #94a3b8;
  border-radius: 50%;
  content: "";
  display: block;
  height: 18px;
  width: 18px;
}
.base-market-icon-armour::before { background: #60a5fa; }
.base-market-icon-robe::before { background: #a78bfa; }
.base-market-icon-helmet::before { background: #f59e0b; }
.base-market-icon-boots::before { background: #22c55e; }
.base-market-icon-ring::before { background: #facc15; }
.base-market-icon-amulet::before { background: #fb7185; }
.base-market-icon-belt::before { background: #c084fc; }
.base-market-icon-staff::before { background: #38bdf8; }
.base-market-icon-sceptre::before { background: #f97316; }
.base-market-icon-wand::before { background: #818cf8; }
.base-market-icon-bow::before { background: #34d399; }
.base-market-icon-crossbow::before { background: #2dd4bf; }
.base-market-icon-focus::before { background: #e879f9; }
.base-market-icon-shield::before { background: #93c5fd; }
.base-market-main strong {
  color: #dbeafe;
  font-size: 0.92rem;
}
.base-market-row > div:not(.base-market-main) {
  display: grid;
  gap: 2px;
}
.base-market-price-stack {
  display: grid;
  gap: 1px;
}
.base-market-price-stack strong {
  color: #f8fafc;
  font-size: 0.9rem;
}
.base-market-price-stack small {
  color: #91a7b7;
  font-size: 0.72rem;
  font-weight: 500;
}
.base-market-row span {
  color: #f8fafc;
  font-size: 0.9rem;
  font-weight: 600;
}
.base-market-row small,
.base-market-label {
  color: #91a7b7;
  font-size: 0.76rem;
}
.base-market-detail {
  margin: 10px 0 12px;
}
.base-market-detail-card {
  background: rgba(15, 23, 30, 0.75);
  border: 1px solid rgba(96, 165, 250, 0.18);
  display: grid;
  gap: 12px;
  padding: 12px;
}
.base-market-detail-head {
  align-items: start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.base-market-detail-head strong {
  color: #dbeafe;
  display: block;
  font-size: 0.95rem;
}
.base-market-detail-head small {
  color: #91a7b7;
  display: block;
  font-size: 0.78rem;
}
.base-market-summary {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}
.base-market-summary div,
.base-market-sample {
  background: rgba(148, 163, 184, 0.06);
  border: 1px solid rgba(148, 163, 184, 0.12);
  display: grid;
  gap: 2px;
  padding: 7px;
}
.base-market-summary span,
.base-market-sample small {
  color: #91a7b7;
  font-size: 0.74rem;
}
.base-market-summary strong,
.base-market-sample strong {
  color: #f8fafc;
  font-size: 0.88rem;
}
.base-market-samples {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.base-market-currency-breakdown {
  border-top: 1px solid rgba(148, 163, 184, 0.12);
  display: grid;
  gap: 7px;
  padding-top: 8px;
}
.base-market-currency-breakdown > strong {
  color: #dbeafe;
  font-size: 0.86rem;
}
.base-market-currency-breakdown > div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.base-market-currency-breakdown span {
  background: rgba(148, 163, 184, 0.06);
  border: 1px solid rgba(148, 163, 184, 0.12);
  display: grid;
  gap: 1px;
  min-width: 150px;
  padding: 6px 7px;
}
.base-market-currency-breakdown small {
  color: #91a7b7;
  font-size: 0.72rem;
}
.base-market-context-note {
  color: #91a7b7;
  font-size: 0.8rem;
  margin: 0;
}
.lot-card {
  background: rgba(255, 255, 255, 0.014);
  border-left: 3px solid #7f8e99;
  cursor: pointer;
  padding: 12px 0 12px 12px;
}
.lot-card.active {
  background: rgba(37, 99, 235, 0.08);
  outline: 1px solid rgba(96, 165, 250, 0.35);
}
.lot-card:focus-visible {
  outline: 2px solid #60a5fa;
  outline-offset: 2px;
}
.lot-card.cheap {
  border-left-color: #25e7a1;
}
.lot-card.expensive {
  border-left-color: #ffd166;
}
.lot-card.fair {
  border-left-color: #7bb7ff;
}
.lot-card-grid {
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(260px, 1.2fr) repeat(3, minmax(150px, 0.7fr)) minmax(160px, 0.8fr);
}
.lot-title {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 42px minmax(0, 1fr);
}
.lot-title img {
  height: 42px;
  object-fit: contain;
  width: 42px;
}
.lot-title strong,
.lot-title small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}
.lot-title small,
.lot-card-label,
.lot-card-note {
  color: #91a7b7;
  font-size: 0.82rem;
}
.lot-card-value {
  display: block;
  margin-top: 4px;
}
.lot-focus-button {
  background: rgba(148, 163, 184, 0.08);
  border: 1px solid #344653;
  border-radius: 4px;
  color: #dbeafe;
  cursor: pointer;
  font-size: 0.78rem;
  margin-top: 8px;
  padding: 5px 8px;
}
.seller-lot-profile-panel {
  margin: 12px 0;
}
.seller-base-summary-panel {
  margin: 12px 0;
}
.seller-base-summary {
  background: rgba(15, 23, 30, 0.62);
  border: 1px solid rgba(148, 163, 184, 0.16);
  display: grid;
  gap: 10px;
  padding: 12px;
}
.seller-base-summary-head {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}
.seller-base-summary-head strong {
  color: #dbeafe;
  font-size: 0.9rem;
}
.seller-base-summary-head span {
  color: #91a7b7;
  font-size: 0.78rem;
}
.seller-base-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}
.seller-base-card {
  background: rgba(148, 163, 184, 0.07);
  border: 1px solid rgba(148, 163, 184, 0.15);
  color: inherit;
  cursor: pointer;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 8px;
  text-align: left;
}
.seller-base-card span,
.seller-base-card small {
  min-width: 0;
  overflow-wrap: anywhere;
}
.seller-base-card span {
  color: #dbe8ef;
  font-size: 0.82rem;
  font-weight: 600;
}
.seller-base-card strong {
  color: #f8fafc;
  font-size: 0.95rem;
}
.seller-base-card small {
  color: #91a7b7;
  font-size: 0.74rem;
}
.seller-base-card:hover {
  border-color: rgba(96, 165, 250, 0.5);
}
.lot-stat-profile {
  background: rgba(15, 23, 30, 0.75);
  border: 1px solid rgba(96, 165, 250, 0.2);
  display: grid;
  gap: 10px;
  padding: 12px;
}
.lot-stat-profile-head {
  align-items: start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.lot-stat-profile-head > div:first-child > span,
.lot-stat-profile-head > div:first-child > strong {
  color: #dbeafe;
  display: block;
  font-size: 0.9rem;
  font-weight: 600;
}
.lot-stat-profile-head small {
  color: #91a7b7;
  font-size: 0.78rem;
}
.lot-profile-price-strip {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  min-width: 260px;
}
.lot-profile-price-strip span {
  background: rgba(148, 163, 184, 0.08);
  border: 1px solid rgba(148, 163, 184, 0.14);
  color: #91a7b7;
  font-size: 0.78rem;
  padding: 5px 7px;
}
.lot-profile-price-strip strong {
  color: #f8fafc;
}
.lot-stat-row {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(220px, 1fr) minmax(360px, auto);
}
.lot-stat-main {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.lot-stat-main span,
.lot-stat-main strong {
  color: #cbd5e1;
  font-size: 0.82rem;
  min-width: 0;
  overflow-wrap: anywhere;
}
.lot-stat-main small {
  color: #91a7b7;
  font-size: 0.76rem;
}
.lot-stat-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}
.lot-stat-check {
  align-items: center;
  background: rgba(148, 163, 184, 0.08);
  border: 1px solid #344653;
  border-radius: 4px;
  color: #cbd5e1;
  cursor: pointer;
  display: inline-flex;
  font-size: 0.76rem;
  gap: 5px;
  min-height: 28px;
  padding: 4px 7px;
  white-space: nowrap;
}
.lot-stat-check input {
  accent-color: #60a5fa;
  height: 14px;
  margin: 0;
  width: 14px;
}
.lot-stat-check:has(input:checked) {
  background: rgba(37, 99, 235, 0.42);
  border-color: #60a5fa;
  color: #eff6ff;
}
.lot-stat-range {
  display: inline-grid;
  gap: 4px;
  grid-template-columns: 56px 56px;
}
.lot-stat-range input {
  background: #0f171e;
  border: 1px solid #344653;
  border-radius: 4px;
  color: #dbe8ef;
  font-size: 0.76rem;
  min-height: 28px;
  min-width: 0;
  padding: 4px 5px;
}
.lot-profile-similar {
  border-top: 1px solid rgba(148, 163, 184, 0.14);
  display: grid;
  gap: 8px;
  padding-top: 10px;
}
.lot-profile-similar > strong {
  color: #dbeafe;
  font-size: 0.86rem;
}
.lot-profile-samples {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.lot-profile-sample {
  background: rgba(148, 163, 184, 0.06);
  border: 1px solid rgba(148, 163, 184, 0.12);
  display: grid;
  gap: 2px;
  padding: 7px;
}
.lot-profile-sample span,
.lot-profile-sample small {
  min-width: 0;
  overflow-wrap: anywhere;
}
.lot-profile-sample span {
  color: #dbe8ef;
  font-size: 0.8rem;
}
.lot-profile-sample strong {
  color: #f8fafc;
  font-size: 0.86rem;
}
.lot-profile-sample small {
  color: #91a7b7;
  font-size: 0.74rem;
}
.detail-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 14px;
}
.detail-chart-toolbar {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  margin: 0 0 8px;
}
.detail-chart-toolbar strong {
  color: #dbe8ef;
  font-size: 0.95rem;
}
.detail-chart-tabs {
  background: #0f171e;
  border: 1px solid #2a3a45;
  display: inline-flex;
  flex: none;
}
.detail-chart-days-field {
  align-items: center;
  display: inline-flex;
  gap: 7px;
}
.detail-chart-days-field span {
  color: #91a7b7;
  font-size: 0.82rem;
}
.detail-chart-days-field select {
  min-width: 78px;
}
.detail-chart-tab {
  background: transparent;
  border: 0;
  color: #aab6c2;
  font-size: 0.84rem;
  font-weight: 700;
  padding: 6px 10px;
}
.detail-chart-tab.active {
  background: #00a77a;
  color: #06110e;
}
.auth-panel,
.account-dashboard,
.admin-panel {
  background: #101920;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  margin-bottom: 16px;
  padding: 16px;
}
.cabinet-panel {
  margin-bottom: 16px;
}
.cabinet-header {
  align-items: flex-start;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-bottom: 14px;
}
.cabinet-header h2,
.auth-form h3,
.cabinet-list-panel h3 {
  font-size: 1.05rem;
  margin: 0 0 8px;
}
.cabinet-header p {
  color: #91a7b7;
  margin: 0;
}
.auth-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
}
.auth-form {
  background: rgba(255, 255, 255, 0.014);
  border: 1px solid #263741;
  border-radius: 4px;
  display: grid;
  gap: 10px;
  padding: 12px;
}
.account-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}
.account-user-label {
  color: #dbe7ef;
  font-weight: 700;
}
.account-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(120px, 1fr));
  margin-bottom: 14px;
}
.account-summary > div {
  background: #17222b;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  padding: 10px;
}
.account-summary strong {
  display: block;
  font-size: 1.15rem;
  margin-top: 4px;
}
.trade-report-panel {
  border-top: 1px solid #263741;
  margin: 0 0 14px;
  padding-top: 14px;
}
.trade-report-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  margin-top: 10px;
}
.trade-report-grid > div,
.trade-report-strategies > article {
  background: #17222b;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  min-width: 0;
  padding: 10px;
}
.trade-report-grid strong,
.trade-report-strategies strong {
  display: block;
  margin-top: 4px;
  overflow-wrap: anywhere;
}
.trade-report-strategies {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin-top: 10px;
}
.trade-report-strategies span,
.trade-report-strategies small {
  color: #91a7b7;
  display: block;
  margin-top: 4px;
}
.account-settings {
  align-items: end;
  background: #17222b;
  border: 1px solid #2d3b45;
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  margin-bottom: 14px;
  padding: 10px;
}
.account-settings p,
.panel-hint {
  color: #91a7b7;
  font-size: 0.88rem;
  margin: 0;
}
.account-settings p {
  grid-column: 1 / -1;
}
.panel-hint {
  margin: -2px 0 10px;
}
.admin-metrics-panel,
.admin-users-panel {
  border-top: 1px solid #263741;
  margin-top: 16px;
  padding-top: 16px;
}
.ai-panel {
  background: #101920;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  margin-bottom: 16px;
  padding: 16px;
}
.ai-context-strip {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  margin: 12px 0;
}
.ai-context-strip > div,
.ai-summary-card,
.ai-signal-card,
.ai-list-panel {
  background: #17222b;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  min-width: 0;
  padding: 10px;
}
.ai-context-strip strong {
  display: block;
  margin-top: 4px;
  overflow-wrap: anywhere;
}
.ai-controls {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(120px, 0.5fr) minmax(130px, 0.5fr) minmax(120px, 0.5fr) minmax(220px, 1fr);
}
.ai-refresh-toggle {
  align-self: center;
}
.ai-analysis-result {
  display: grid;
  gap: 12px;
}
.currency-analysis-panel {
  border-top: 1px solid #263741;
  margin-top: 16px;
  padding-top: 16px;
}
.currency-analysis-result,
.currency-ai-result {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}
.currency-summary-grid,
.currency-analysis-charts {
  display: grid;
  gap: 10px;
}
.currency-summary-grid {
  grid-template-columns: repeat(5, minmax(120px, 1fr));
}
.currency-change-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(5, minmax(110px, 1fr));
  margin-top: 10px;
}
.currency-summary-grid > div,
.currency-change-grid > div,
.currency-chart-card {
  background: #17222b;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  min-width: 0;
  padding: 10px;
}
.currency-summary-grid strong {
  display: block;
  margin-top: 4px;
  overflow-wrap: anywhere;
}
.currency-change-grid strong {
  display: block;
  margin-top: 4px;
}
.currency-analysis-charts {
  grid-template-columns: repeat(2, minmax(260px, 1fr));
}
.currency-chart-card h3 {
  font-size: 0.98rem;
  margin: 0 0 10px;
}
.currency-risk-list {
  color: #91a7b7;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.currency-risk-list span {
  background: #101920;
  border: 1px solid #2d3b45;
  border-radius: 3px;
  color: #dbe7ef;
  font-size: 0.78rem;
  padding: 3px 7px;
}
.currency-forecast-note {
  color: #91a7b7;
  font-size: 0.84rem;
  margin: 0;
}
.ai-summary-card h3,
.ai-list-panel h3,
.ai-signal-card h3 {
  font-size: 0.98rem;
  margin: 0 0 8px;
}
.ai-summary-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.ai-summary-grid > div {
  background: #101920;
  border: 1px solid #263741;
  padding: 8px;
}
.ai-summary-grid strong {
  display: block;
  margin-top: 3px;
}
.ai-signals-grid {
  display: grid;
  gap: 10px;
}
.ai-signal-card {
  border-left: 3px solid #7f8e99;
}
.ai-signal-card.buy_candidate,
.ai-signal-card.hold {
  border-left-color: #25e7a1;
}
.ai-signal-card.sell_candidate {
  border-left-color: #ffd166;
}
.ai-signal-card.avoid,
.ai-signal-card.insufficient_data {
  border-left-color: #ff6b6b;
}
.ai-signal-head {
  align-items: start;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}
.ai-signal-head strong,
.ai-signal-head small {
  display: block;
  overflow-wrap: anywhere;
}
.ai-signal-badges,
.ai-signal-meta,
.ai-list-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ai-signal-badges span,
.ai-list-tags span {
  background: #101920;
  border: 1px solid #2d3b45;
  border-radius: 3px;
  color: #dbe7ef;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 3px 7px;
}
.ai-signal-meta {
  color: #91a7b7;
  font-size: 0.84rem;
  margin: 8px 0;
}
.ai-signal-body {
  color: #c7d3dc;
  margin: 0 0 8px;
}
.ai-evidence-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
}
.ai-evidence-grid > div {
  background: rgba(255, 255, 255, 0.018);
  border: 1px solid #263741;
  padding: 8px;
}
.ai-evidence-grid span {
  color: #91a7b7;
  display: block;
  font-size: 0.78rem;
  margin-bottom: 4px;
}
.ai-evidence-grid p,
.ai-list-panel p {
  margin: 0;
  overflow-wrap: anywhere;
}
.ai-audit-path {
  color: #91a7b7;
  font-family: Consolas, monospace;
  font-size: 0.82rem;
  overflow-wrap: anywhere;
}
.admin-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  margin-top: 10px;
}
.admin-summary > div {
  background: #17222b;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  min-width: 0;
  padding: 10px;
}
.admin-summary strong {
  display: block;
  font-size: 1.12rem;
  margin-top: 4px;
}
.admin-summary small {
  color: #91a7b7;
  display: block;
  font-size: 0.78rem;
  margin-top: 4px;
  overflow-wrap: anywhere;
}
.admin-metrics-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(280px, 0.9fr) minmax(240px, 0.7fr) minmax(320px, 1.4fr);
  margin-top: 12px;
}
.admin-metric-panel {
  background: rgba(255, 255, 255, 0.014);
  border: 1px solid #263741;
  min-width: 0;
  padding: 10px;
}
.admin-metric-panel h3 {
  font-size: 0.98rem;
  margin: 0 0 10px;
}
.admin-usage-bars {
  align-items: end;
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(7, minmax(34px, 1fr));
  min-height: 112px;
}
.admin-usage-day {
  align-items: center;
  display: grid;
  gap: 4px;
  justify-items: center;
}
.admin-usage-bar {
  align-self: end;
  background: #00a77a;
  border-radius: 2px 2px 0 0;
  min-height: 4px;
  width: 100%;
}
.admin-usage-day strong,
.admin-usage-day small {
  color: #91a7b7;
  font-size: 0.76rem;
}
.admin-activity-list {
  display: grid;
  gap: 8px;
}
.admin-activity-row {
  background: #111b23;
  border: 1px solid #263741;
  display: grid;
  gap: 4px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 8px;
}
.admin-activity-row span,
.admin-activity-row small {
  min-width: 0;
  overflow-wrap: anywhere;
}
.admin-activity-row small {
  color: #91a7b7;
  grid-column: 1 / -1;
  font-size: 0.78rem;
}
.admin-users-list {
  display: grid;
  gap: 10px;
}
.admin-user-card {
  background: rgba(255, 255, 255, 0.014);
  border-left: 3px solid #7bb7ff;
  padding: 10px 0 10px 12px;
}
.admin-user-main {
  align-items: start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.admin-user-main strong,
.admin-user-main small {
  display: block;
  overflow-wrap: anywhere;
}
.admin-user-main small {
  color: #91a7b7;
  font-size: 0.82rem;
}
.admin-user-badges,
.admin-permissions-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.admin-user-badges span,
.admin-permissions-row > span {
  background: #17222b;
  border: 1px solid #2d3b45;
  color: #dbe7ef;
  font-size: 0.78rem;
  padding: 4px 8px;
}
.admin-permissions-row {
  margin-top: 10px;
}
.permission-toggle {
  align-items: center;
  color: #dbe7ef;
  display: inline-flex;
  gap: 6px;
  font-size: 0.88rem;
}
.permission-toggle input {
  accent-color: #00a77a;
}
.fiat-rub-toggle {
  align-self: center;
}
.account-tabs {
  border-bottom: 1px solid #263741;
  display: flex;
  gap: 8px;
  margin: 2px 0 14px;
}
.account-tab {
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  color: #91a7b7;
  cursor: pointer;
  font-size: 0.9rem;
  padding: 10px 12px;
}
.account-tab.active {
  border-bottom-color: #42d49b;
  color: #e7f3f0;
}
.account-tab.is-hidden {
  display: none;
}
.account-tab-panel.d-none {
  display: none !important;
}
.rub-market-panel {
  border-top: 1px solid #263741;
  margin-bottom: 14px;
  padding-top: 14px;
}
.rub-market-summary,
.rub-market-analytics,
.rub-market-calendar {
  display: grid;
  gap: 10px;
}
.rub-market-summary {
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  margin-bottom: 10px;
}
.rub-market-summary > div,
.rub-market-card {
  background: #111b23;
  border: 1px solid #263741;
  min-width: 0;
  padding: 10px;
}
.rub-market-summary strong,
.rub-market-card strong,
.rub-market-card small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}
.rub-market-card {
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(180px, 1.5fr) repeat(5, minmax(100px, 1fr));
}
.rub-market-card small {
  color: #91a7b7;
  font-size: 0.78rem;
  margin-top: 3px;
}
.rub-market-chart {
  margin-bottom: 10px;
}
.rub-market-analytics {
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  margin-bottom: 10px;
}
.rub-market-calendar {
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  margin-bottom: 10px;
}
.rub-analysis-card {
  background: #111b23;
  border: 1px solid #263741;
  min-width: 0;
  padding: 10px;
}
.rub-calendar-card {
  border-left: 3px solid #42d49b;
}
.rub-calendar-card.sell {
  border-left-color: #ffb86b;
}
.rub-analysis-card strong,
.rub-analysis-card span,
.rub-analysis-card small {
  display: block;
  overflow-wrap: anywhere;
}
.rub-analysis-card small {
  color: #91a7b7;
  font-size: 0.78rem;
  line-height: 1.4;
  margin-top: 4px;
}
.source-link {
  color: #7bb7ff;
  display: inline-flex;
  font-size: 0.86rem;
  margin-bottom: 8px;
  text-decoration: none;
}
.source-link:hover {
  color: #b8d8ff;
}
.player-memo-panel {
  border-top: 1px solid #263741;
  margin-bottom: 14px;
  padding-top: 14px;
}
.player-memo-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
}
.player-memo-card {
  background: #111b23;
  border: 1px solid #263741;
  border-left: 3px solid #7bb7ff;
  min-width: 0;
  padding: 10px;
}
.player-memo-card strong {
  color: #dbe7ef;
  display: block;
  font-size: 0.92rem;
  margin-bottom: 6px;
}
.player-memo-card p {
  color: #91a7b7;
  font-size: 0.84rem;
  line-height: 1.45;
  margin: 0;
  overflow-wrap: anywhere;
}
.cabinet-section-head {
  align-items: start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.chart-period-inline {
  align-items: center;
  display: inline-flex;
  flex: none;
  gap: 8px;
}
.chart-period-inline span {
  color: #91a7b7;
  font-size: 0.82rem;
  white-space: nowrap;
}
.chart-period-inline select {
  min-width: 76px;
}
.cabinet-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(320px, 0.9fr) minmax(420px, 1.1fr);
}
.closed-trades-panel {
  border-top: 1px solid #263741;
  margin-top: 16px;
  padding-top: 16px;
}
.trade-board {
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}
.notification-panel {
  border-top: 1px solid #263741;
  margin-top: 16px;
  padding-top: 16px;
}
.notification-form {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr) minmax(120px, 0.6fr) minmax(180px, 1fr) auto;
  margin-bottom: 12px;
}
.cabinet-list-panel {
  min-width: 0;
}
.cabinet-list {
  display: grid;
  gap: 10px;
}
.pin-card,
.trade-card,
.notification-card {
  background: rgba(255, 255, 255, 0.014);
  border-left: 3px solid #7f8e99;
  padding: 10px 0 10px 12px;
}
.pin-market-layout {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: 1fr;
}
.notification-card.enabled {
  border-left-color: #25e7a1;
}
.notification-card.disabled {
  opacity: 0.72;
}
.trade-card.open {
  border-left-color: #25e7a1;
}
.trade-card.closed {
  border-left-color: #7bb7ff;
}
.trade-card-head {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}
.trade-status-pill {
  border: 1px solid #2d3b45;
  color: #dbe7ef;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 4px 8px;
}
.pin-title {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 38px minmax(0, 1fr);
}
.pin-title img,
.pin-title .category-placeholder {
  height: 38px;
  object-fit: contain;
  width: 38px;
}
.pin-title strong,
.pin-title small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}
.pin-title small,
.pin-meta,
.compact-field span {
  color: #91a7b7;
  font-size: 0.82rem;
}
.pin-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 8px;
}
.pin-trade-row {
  align-items: end;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.compact-field {
  display: grid;
  gap: 4px;
  min-width: 120px;
}
.account-market-chart {
  min-height: 92px;
  width: 100%;
}
.account-market-chart .mini-signal-chart {
  margin: 0;
  max-width: none;
}
.account-market-chart.empty {
  align-items: center;
  border: 1px dashed #2d3b45;
  color: #91a7b7;
  display: flex;
  font-size: 0.82rem;
  justify-content: center;
  padding: 12px;
}
.trade-metric-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  margin-top: 10px;
}
.trade-metric-grid > div {
  background: #111b23;
  border: 1px solid #263741;
  padding: 8px;
}
.trade-metric-grid strong,
.trade-metric-grid .trade-pnl {
  display: block;
  margin-top: 4px;
}
.trade-note-input {
  margin-top: 10px;
}
.item-parser-panel,
.ai-history-panel,
.recipe-signal-section {
  border-top: 1px solid rgba(148, 163, 184, 0.18);
  margin-top: 22px;
  padding-top: 18px;
}
.item-parser-text {
  min-height: 160px;
  resize: vertical;
}
.item-parser-card,
.ai-history-card {
  background: rgba(15, 23, 42, 0.58);
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 8px;
  padding: 14px;
}
.item-parser-mods {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0;
}
.item-parser-mods span {
  background: rgba(148, 163, 184, 0.12);
  border-radius: 6px;
  color: #dbeafe;
  padding: 5px 8px;
}
.item-parser-market {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  margin: 14px 0 10px;
}
.item-parser-market > div {
  background: rgba(15, 23, 42, 0.66);
  border: 1px solid rgba(148, 163, 184, 0.16);
  border-radius: 8px;
  padding: 10px;
}
.item-parser-market strong {
  display: block;
  margin-top: 4px;
}
.item-parser-samples {
  display: grid;
  gap: 6px;
  margin-top: 10px;
}
.item-parser-samples span {
  color: #cbd5e1;
  font-size: 0.88rem;
}
.ai-history-list,
.recipe-signal-list {
  display: grid;
  gap: 12px;
}
.ai-history-card p {
  margin: 8px 0;
}
.trade-pnl-row {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  margin-top: 8px;
}
.trade-pnl-row > span:first-child {
  color: #91a7b7;
  font-size: 0.82rem;
}
.trade-pnl {
  font-weight: 700;
}
.trade-pnl.positive {
  color: #25e7a1;
}
.trade-pnl.negative {
  color: #ff6b6b;
}
.trade-pnl.neutral {
  color: #aab6c2;
}
.currency-preview,
.currency-inline {
  align-items: center;
  color: #d8e3ec;
  display: flex;
  gap: 8px;
  min-height: 26px;
}
.currency-preview {
  background: #0f171e;
  border: 1px solid #2a3a45;
  border-radius: 4px;
  font-size: 0.86rem;
  padding: 5px 8px;
}
.currency-preview img,
.currency-inline img {
  flex: none;
  height: 22px;
  object-fit: contain;
  width: 22px;
}
.currency-code {
  color: #91a7b7;
  font-family: Consolas, monospace;
  font-size: 0.82rem;
}
.advice-panel,
.item-detail-panel {
  background: #101920;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  margin-bottom: 16px;
  padding: 16px;
}
.advice-panel h2,
.item-detail-panel h2 {
  font-size: 1.05rem;
  margin-bottom: 0;
}
.advice-header {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 12px;
}
.advice-controls {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}
.advice-tabs {
  background: #0f171e;
  border: 1px solid #2a3a45;
  display: inline-flex;
  flex: none;
}
.advice-tab {
  background: transparent;
  border: 0;
  color: #aab6c2;
  font-size: 0.86rem;
  font-weight: 700;
  padding: 7px 10px;
}
.advice-tab.active {
  background: #00a77a;
  color: #06110e;
}
.advice-list {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 720px), 1fr));
}
.chain-depth-field {
  align-items: center;
  display: flex;
  gap: 8px;
}
.chain-depth-field span {
  color: #a7adb5;
  font-size: 0.82rem;
  white-space: nowrap;
}
.chain-depth-field select {
  min-width: 70px;
}
.detail-header {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-bottom: 14px;
}
.detail-title {
  align-items: center;
  display: flex;
  gap: 12px;
  min-width: 0;
}
.detail-title img {
  height: 42px;
  object-fit: contain;
  width: 42px;
}
.detail-title img:not([src]),
.detail-title img[src=""] {
  display: none;
}
.detail-title h2 {
  overflow-wrap: anywhere;
}
.detail-target-field {
  min-width: 220px;
}
.detail-stats {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  margin-bottom: 14px;
}
.detail-stats > div {
  background: #17222b;
  border: 1px solid #2d3b45;
  border-radius: 4px;
  padding: 10px;
}
.detail-stats strong {
  display: block;
  margin-top: 4px;
}
.detail-chart {
  background: #0b1319;
  border: 1px solid #263640;
  border-radius: 4px;
  min-height: 190px;
  overflow: hidden;
}
.detail-chart svg {
  display: block;
  height: 190px;
  width: 100%;
}
.detail-chart-grid {
  stroke: rgba(145, 167, 183, 0.18);
  stroke-dasharray: 2 5;
  stroke-width: 1;
}
.detail-chart-grid.day {
  stroke: rgba(145, 167, 183, 0.12);
}
.detail-chart-grid.hour {
  stroke: rgba(145, 167, 183, 0.045);
  stroke-dasharray: 1 7;
}
.detail-chart-line {
  fill: none;
  stroke: #00d19a;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3;
}
.detail-chart-area {
  fill: rgba(0, 209, 154, 0.12);
}
.detail-chart-x-label,
.detail-chart-y-label {
  fill: #91a7b7;
  font-size: 10px;
}
.detail-chart-empty,
.detail-note {
  color: #aab6c2;
  padding: 12px;
}
.market-row {
  cursor: pointer;
}
.market-row.active {
  background: rgba(0, 209, 154, 0.14) !important;
}
.advice-card {
  border-left: 3px solid #00d19a;
  background: rgba(255, 255, 255, 0.012);
  min-width: 0;
  padding: 8px 0 8px 12px;
}
.advice-card-layout {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(260px, 1fr) minmax(320px, 420px);
  justify-content: start;
}
.advice-card-layout.compact {
  grid-template-columns: minmax(260px, 1fr) minmax(260px, 320px);
}
.advice-card-content {
  min-width: 0;
}
.advice-card.signal {
  border-left-color: #25e7a1;
}
.advice-card.weak {
  border-left-color: #ffd166;
}
.advice-card.watch {
  border-left-color: #7f8e99;
}
.advice-title-row {
  align-items: center;
  display: flex;
  gap: 8px;
}
.advice-item-title,
.advice-path {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 6px;
}
.advice-item-title img,
.advice-path img {
  flex: none;
  height: 24px;
  object-fit: contain;
  width: 24px;
}
.advice-arrow {
  color: #7f8e99;
  font-weight: 700;
}
.advice-badge {
  border: 1px solid currentColor;
  border-radius: 4px;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 2px 6px;
  text-transform: uppercase;
}
.advice-badge.demand {
  color: #ffd166;
}
.advice-badge.weak-activity {
  color: #aab6c2;
}
.advice-card.signal .advice-badge {
  color: #25e7a1;
}
.advice-card.weak .advice-badge {
  color: #ffd166;
}
.advice-card.watch .advice-badge {
  color: #aab6c2;
}
.advice-card p {
  color: #b8c4ce;
  margin: 4px 0 0;
}
.deal-meta {
  color: #91a7b7;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.82rem;
  gap: 10px;
  margin-top: 5px;
}
.deal-meta img {
  height: 18px;
  object-fit: contain;
  vertical-align: -4px;
  width: 18px;
}
.advice-chart {
  background: #0d151b;
  border: 1px solid #263741;
  border-radius: 4px;
  min-height: 158px;
  padding: 7px;
  width: 100%;
}
.advice-chart.empty {
  align-items: center;
  color: #7f8e99;
  display: flex;
  font-size: 0.82rem;
  justify-content: center;
}
.advice-chart svg {
  display: block;
  height: 128px;
  width: 100%;
}
.advice-chart-line {
  fill: none;
  stroke: #00d19a;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.6;
}
.advice-chart-grid {
  stroke: rgba(145, 167, 183, 0.18);
  stroke-dasharray: 2 5;
  stroke-width: 1;
}
.advice-chart-grid.day {
  stroke: rgba(145, 167, 183, 0.13);
}
.advice-chart-grid.hour {
  stroke: rgba(145, 167, 183, 0.045);
  stroke-dasharray: 1 7;
}
.advice-chart-x-label,
.advice-chart-y-label {
  fill: #91a7b7;
  font-size: 9px;
}
.advice-chart.down .advice-chart-line {
  stroke: #ffd166;
}
.advice-chart-current-area {
  fill: rgba(0, 209, 154, 0.13);
}
.advice-chart.down .advice-chart-current-area {
  fill: rgba(255, 209, 102, 0.13);
}
.advice-chart-current-line {
  stroke: rgba(234, 242, 248, 0.28);
  stroke-dasharray: 3 4;
  stroke-width: 1;
}
.advice-chart-point {
  fill: #eaf2f8;
  stroke: #00d19a;
  stroke-width: 2;
}
.advice-chart.down .advice-chart-point {
  stroke: #ffd166;
}
.advice-chart-label {
  color: #91a7b7;
  display: flex;
  font-size: 0.72rem;
  gap: 8px;
  justify-content: space-between;
  line-height: 1.25;
  margin-top: 3px;
}
.advice-chart-basis {
  color: #91a7b7;
  font-size: 0.74rem;
  line-height: 1.2;
  margin-top: 2px;
  text-align: right;
}
.market-signal-hint {
  margin-bottom: 12px;
}
.market-health-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  margin-bottom: 18px;
}
.market-health-grid > div {
  background: #0d151b;
  border: 1px solid #263741;
  border-radius: 4px;
  padding: 10px;
}
.market-health-grid strong {
  display: block;
  font-size: 1.1rem;
  margin-top: 4px;
}
.market-health-grid small {
  color: #91a7b7;
  display: block;
  font-size: 0.78rem;
  margin-top: 3px;
}
.market-diagnostics-section {
  border-top: 1px solid #263741;
  margin: 0 0 18px;
  padding-top: 14px;
}
.diagnostics-header {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 10px;
}
.diagnostics-header h3 {
  color: #eaf2f8;
  font-size: 1rem;
  margin: 0;
}
.diagnostics-header small,
.diagnostic-warning-list span {
  color: #91a7b7;
}
.diagnostics-grid {
  margin-bottom: 10px;
}
.diagnostic-warning-list,
.diagnostic-samples {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}
.diagnostic-warning-list strong,
.diagnostic-samples span {
  background: #0d151b;
  border: 1px solid #263741;
  border-radius: 4px;
  color: #dbe7ef;
  font-size: 0.82rem;
  padding: 5px 8px;
}
.deal-candidate-section {
  margin-bottom: 18px;
}
.deal-candidate-section h3 {
  color: #eaf2f8;
  font-size: 1rem;
  margin: 0 0 10px;
}
.deal-candidate-grid {
  display: grid;
  gap: 12px;
}
.deal-candidate-layout {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: 86px minmax(280px, 1fr) minmax(280px, 360px);
}
.deal-score {
  align-items: center;
  background: #0d151b;
  border: 1px solid #263741;
  border-radius: 4px;
  display: grid;
  min-height: 78px;
  padding: 8px;
  text-align: center;
}
.deal-score span {
  color: #91a7b7;
  font-size: 0.72rem;
  text-transform: uppercase;
}
.deal-score strong {
  color: #eaf2f8;
  font-size: 1.7rem;
  line-height: 1;
}
.history-trend-section {
  border-top: 1px solid #263741;
  margin: 0 0 18px;
  padding-top: 14px;
}
.history-trend-section h3 {
  color: #eaf2f8;
  font-size: 1rem;
  margin: 0 0 10px;
}
.history-trend-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
}
.history-trend-group {
  min-width: 0;
}
.history-trend-group h4 {
  color: #b8c4ce;
  font-size: 0.9rem;
  margin: 0 0 8px;
}
.history-trend-item {
  align-items: center;
  background: rgba(255, 255, 255, 0.014);
  border-left: 3px solid #7f8e99;
  display: grid;
  gap: 6px 10px;
  grid-template-columns: minmax(220px, 1fr) auto;
  margin-bottom: 8px;
  padding: 8px 0 8px 10px;
}
.history-trend-item small {
  color: #91a7b7;
  grid-column: 1 / -1;
}
.market-signal-board {
  display: grid;
  gap: 16px;
}
.market-signal-group {
  min-width: 0;
}
.market-signal-group h3 {
  color: #dbe7ef;
  font-size: 0.96rem;
  margin: 0 0 10px;
}
.market-signal-list {
  display: grid;
  gap: 10px;
}
.active-trades-wrap {
  border: 1px solid #2d3b45;
  border-radius: 4px;
  overflow-x: auto;
}
.active-trades-table {
  border-collapse: collapse;
  min-width: 1120px;
  width: 100%;
}
.active-trades-table th,
.active-trades-table td {
  border-top: 1px solid #263741;
  padding: 8px 10px;
  vertical-align: middle;
  white-space: nowrap;
}
.active-trades-table .advice-item-title {
  display: grid;
  grid-template-columns: 34px auto;
}
.active-trades-table .advice-item-title img,
.active-trades-table td > img {
  height: 34px;
  max-height: 34px;
  max-width: 34px;
  object-fit: contain;
  width: 34px;
}
.active-trades-table thead th {
  background: #17242d;
  border-top: 0;
  color: #dbe7ef;
  font-size: 0.82rem;
}
.signals-subtitle {
  font-size: 1rem;
  margin: 16px 0 10px;
}
.chain-steps {
  display: grid;
  gap: 5px;
  margin-top: 8px;
}
.chain-step {
  color: #b8c4ce;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.84rem;
  gap: 8px;
}
.market-table-wrap {
  border: 1px solid #2d3b45;
  border-radius: 4px;
  margin-bottom: 16px;
}
.market-table {
  border-collapse: collapse;
  width: 100%;
}
.market-table thead th {
  background: #202e38;
  color: #eaf2f8;
  font-weight: 700;
  padding: 0;
}
.sort-button {
  align-items: center;
  background: transparent;
  border: 0;
  color: inherit;
  display: flex;
  font: inherit;
  gap: 7px;
  justify-content: space-between;
  min-height: 44px;
  padding: 12px 14px;
  text-align: left;
  width: 100%;
}
.target-header-label {
  color: #91a7b7;
  display: block;
  font-size: 0.76rem;
  font-weight: 600;
  margin-top: 2px;
}
.sort-button:hover,
.sort-button.active {
  color: #00d19a;
}
.sort-icon {
  color: #7f8e99;
  flex: none;
  font-size: 0.82rem;
}
.market-table td {
  border-top: 1px solid #2c3a45;
  padding: 9px 14px;
  white-space: nowrap;
}
.market-table tbody tr:nth-child(odd) {
  background: rgba(255, 255, 255, 0.018);
}
.market-table tbody tr:hover {
  background: rgba(0, 209, 154, 0.08);
}
.name-cell {
  align-items: center;
  display: flex;
  gap: 12px;
  min-width: 280px;
}
.name-cell img {
  height: 32px;
  object-fit: contain;
  width: 32px;
}
.muted-id {
  color: #8795a0;
  font-family: Consolas, monospace;
  font-size: 0.9rem;
}
.change-up {
  color: #25e7a1;
}
.change-down {
  color: #ff6b6b;
}
.icon-cell {
  align-items: center;
  display: flex;
  gap: 8px;
}
.icon-cell img {
  height: 24px;
  object-fit: contain;
  width: 24px;
}
.economy-panel {
  margin-top: 4px;
}
.economy-table thead th {
  cursor: pointer;
  padding: 12px 14px;
}
.economy-table thead th.dt-ordering-asc,
.economy-table thead th.dt-ordering-desc {
  color: #00d19a;
}
.economy-table-wrap {
  border: 1px solid #2d3b45;
  border-radius: 4px;
  margin-top: 14px;
}
.economy-panel .dt-layout-row {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  justify-content: space-between;
  padding: 10px 14px;
}
.economy-panel .dt-layout-row.dt-layout-table {
  padding: 0;
}
.economy-panel .dt-length,
.economy-panel .dt-info {
  color: #91a7b7;
  font-size: 0.85rem;
}
.economy-panel .dt-length select {
  background: #101920;
  border: 1px solid #2a3a45;
  border-radius: 3px;
  color: #e6edf3;
  margin: 0 6px;
  padding: 4px 6px;
}
.economy-panel .dt-paging {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.economy-panel .dt-paging .dt-paging-button {
  background: #101920;
  border: 1px solid #2a3a45;
  border-radius: 3px;
  color: #d5dde5;
  cursor: pointer;
  font: inherit;
  min-height: 38px;
  min-width: 38px;
  padding: 7px 11px;
}
.economy-panel .dt-paging .dt-paging-button:hover:not(.disabled):not(.current) {
  border-color: #00d19a;
  color: #00d19a;
}
.economy-panel .dt-paging .dt-paging-button.current {
  background: #00a77a;
  border-color: #00a77a;
  color: #06110e;
}
.economy-panel .dt-paging .dt-paging-button.disabled {
  color: #5a6873;
  cursor: default;
}
.economy-panel .dt-empty {
  color: #aab6c2;
  padding: 14px;
}
@media (max-width: 980px) {
  .navbar .container-fluid {
    align-items: stretch;
    flex-direction: column;
    gap: 10px;
  }
  .navbar-actions,
  .live-navbar-actions {
    width: 100%;
  }
  .navbar-league-field {
    min-width: 0;
    width: 100%;
  }
  .navbar-league-field select {
    min-width: 0;
  }
  .navbar-main-tabs {
    flex: 0 0 auto;
    overflow-x: auto;
    width: 100%;
  }
  .nav-view-tab {
    flex: 0 0 auto;
  }
  .app-shell {
    grid-template-columns: 1fr;
    min-height: 0;
    overflow-x: visible;
  }
  .app-shell.categories-drawer-collapsed {
    gap: 14px;
    grid-template-columns: var(--category-rail-width) minmax(0, 1fr);
  }
  .side-panel {
    max-height: 50vh;
    overflow-y: auto;
    width: 100%;
  }
  .app-shell.categories-drawer-collapsed .side-panel {
    height: 100%;
    max-height: none;
    min-height: 260px;
    overflow: hidden;
    transform: none;
    width: var(--category-rail-width);
  }
  .app-shell.categories-drawer-open:not(.categories-drawer-pinned) {
    grid-template-columns: 1fr;
  }
  .app-shell.categories-drawer-open:not(.categories-drawer-pinned) .side-panel {
    width: 100%;
  }
  .app-shell.categories-drawer-open:not(.categories-drawer-pinned) .side-title,
  .app-shell.categories-drawer-open:not(.categories-drawer-pinned) .category-list {
    width: calc(100% - var(--category-rail-width));
  }
  .app-shell.categories-drawer-pinned .category-sidebar-toggle {
    display: none;
  }
  .filters-grid,
  .lot-search-grid,
  .lot-market-grid,
  .summary-strip,
  .auth-grid,
  .account-summary,
  .account-settings,
  .ai-context-strip,
  .ai-controls,
  .ai-evidence-grid,
  .ai-summary-grid,
  .currency-change-grid,
  .currency-analysis-charts,
  .currency-summary-grid,
  .rub-market-summary,
  .rub-market-card,
  .rub-market-analytics,
  .rub-market-calendar,
  .admin-summary,
  .admin-metrics-grid,
  .cabinet-grid,
  .player-memo-grid,
  .notification-form,
  .pin-market-layout,
  .trade-metric-grid {
    grid-template-columns: 1fr;
  }
  .hero-bar,
  .detail-header,
  .cabinet-header,
  .cabinet-section-head,
  .admin-user-main,
  .advice-header,
  .action-row {
    align-items: stretch;
    flex-direction: column;
  }
  .advice-controls {
    width: 100%;
  }
  .advice-tabs {
    width: 100%;
  }
  .advice-tab {
    flex: 1;
  }
  .advice-card-layout {
    grid-template-columns: 1fr;
  }
  .advice-card-layout.compact {
    grid-template-columns: 1fr;
  }
  .deal-candidate-layout {
    grid-template-columns: 1fr;
  }
  .deal-score {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: flex-start;
    min-height: 0;
    text-align: left;
  }
  .history-trend-grid,
  .history-trend-item,
  .market-health-grid {
    grid-template-columns: 1fr;
  }
  .lot-card-grid {
    grid-template-columns: 1fr;
  }
  .base-market-row {
    grid-template-columns: 1fr 1fr;
  }
  .base-market-sort-row {
    grid-template-columns: 1fr 1fr;
  }
  .base-market-main {
    grid-column: 1 / -1;
  }
  .base-market-sort-button:first-child {
    grid-column: 1 / -1;
  }
  .base-market-detail-head {
    align-items: stretch;
    flex-direction: column;
  }
  .lot-stat-profile-head {
    align-items: stretch;
    flex-direction: column;
  }
  .lot-profile-price-strip {
    justify-content: flex-start;
    min-width: 0;
  }
  .lot-stat-row {
    align-items: stretch;
    grid-template-columns: 1fr;
  }
  .lot-stat-actions {
    justify-content: flex-start;
  }
  .advice-list {
    grid-template-columns: 1fr;
  }
  .advice-chart {
    max-width: none;
  }
  .detail-stats {
    grid-template-columns: 1fr 1fr;
  }
  .detail-chart-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  .detail-chart-tabs {
    width: 100%;
  }
  .detail-chart-days-field {
    justify-content: space-between;
    width: 100%;
  }
  .chart-period-inline {
    justify-content: space-between;
    width: 100%;
  }
  .detail-chart-tab {
    flex: 1;
  }
  .advice-tab,
  .detail-chart-tab,
  .nav-view-tab,
  .account-tab,
  .lang-btn {
    min-height: 44px;
  }
}

@media (max-width: 620px) {
  .navbar.sticky-top {
    position: static;
  }
  .live-navbar-actions {
    flex-direction: column;
  }
  .navbar-main-tabs,
  .live-navbar-actions {
    overflow-x: auto;
  }
  .detail-stats {
    grid-template-columns: 1fr;
  }
  .base-market-row,
  .base-market-sort-row,
  .base-market-summary,
  .base-market-samples {
    grid-template-columns: 1fr;
  }
  .base-market-sort-button:first-child {
    grid-column: auto;
  }
  .market-table thead th:nth-child(2),
  .market-table td:nth-child(2) {
    display: none;
  }
}
