.bourse-page { padding: 28px 0 72px; font-family: var(--font, "Vazirmatn", Tahoma, Arial, sans-serif); }
.bourse-wrap { width: min(1240px, calc(100% - 40px)); margin-inline: auto; }
.bourse-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-end; margin-bottom: 18px; }
.bourse-head h1 { margin: 0 0 6px; font-size: 1.8rem; }
.bourse-head p { margin: 0; color: var(--muted, #6d6456); }
.bourse-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
.bourse-stat { background: #fff; border: 1px solid rgba(184, 146, 74, .28); border-radius: 18px; padding: 16px 18px; }
.bourse-stat small { color: #8a7d68; }
.bourse-stat strong { display: block; font-size: 1.35rem; margin-top: 4px; }
.bourse-stat span { font-size: .85rem; }
.bourse-up { color: #1b7a45; }
.bourse-down { color: #b42318; }
.bourse-filters { display: grid; grid-template-columns: 1.4fr repeat(4, .8fr); gap: 10px; margin-bottom: 14px; }
.bourse-filters input, .bourse-filters select, .bourse-select__btn, .bourse-select__menu button {
  font-family: var(--font, "Vazirmatn", Tahoma, Arial, sans-serif);
  font-size: 14px;
  font-weight: 600;
}
.bourse-filters input, .bourse-filters select { width: 100%; border: 1px solid #e4d8c4; border-radius: 12px; padding: 10px 12px; background: #fff; color: inherit; }
.bourse-select { position: relative; min-width: 0; }
.bourse-select__native { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.bourse-select__btn {
  width: 100%;
  text-align: right;
  border: 1px solid #e4d8c4;
  border-radius: 12px;
  padding: 10px 36px 10px 12px;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%238a7d68' d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E") no-repeat left 12px center;
  color: inherit;
  cursor: pointer;
}
.bourse-select__menu {
  position: absolute;
  z-index: 30;
  top: calc(100% + 6px);
  right: 0;
  left: 0;
  max-height: 280px;
  overflow: auto;
  margin: 0;
  padding: 6px;
  list-style: none;
  background: #fff;
  border: 1px solid #e4d8c4;
  border-radius: 14px;
  box-shadow: 0 16px 40px rgba(70, 48, 12, .12);
}
.bourse-select__menu button {
  display: block;
  width: 100%;
  text-align: right;
  border: 0;
  border-radius: 10px;
  background: transparent;
  padding: 8px 10px;
  cursor: pointer;
  color: inherit;
}
.bourse-select__menu button:hover,
.bourse-select__menu button.is-active { background: #fbf4e4; }
.bourse-table-wrap { overflow: auto; background: #fff; border: 1px solid rgba(184, 146, 74, .22); border-radius: 18px; }
.bourse-table { width: 100%; border-collapse: collapse; min-width: 860px; }
.bourse-table th, .bourse-table td { padding: 12px 14px; text-align: right; border-bottom: 1px solid #f1eadf; white-space: nowrap; }
.bourse-table th { font-size: .82rem; color: #7b705f; background: #fbf7ef; }
.bourse-table a { color: inherit; font-weight: 700; text-decoration: none; }
.bourse-table a small { display: block; font-weight: 400; color: #8a7d68; }
.bourse-pager { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 14px; }
.bourse-pager button { border: 0; background: #1b5e3a; color: #fff; border-radius: 999px; padding: 8px 16px; cursor: pointer; }
.bourse-pager button:disabled { opacity: .45; cursor: default; }
.bourse-company { display: grid; grid-template-columns: 1.2fr .8fr; gap: 16px; }
.bourse-card { background: #fff; border: 1px solid rgba(184, 146, 74, .22); border-radius: 18px; padding: 18px; }
.bourse-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
.bourse-metrics div { background: #fbf7ef; border-radius: 12px; padding: 10px; }
.bourse-metrics small { display: block; color: #8a7d68; }
.bourse-holders { width: 100%; border-collapse: collapse; }
.bourse-holders td { padding: 8px 0; border-bottom: 1px solid #f1eadf; }
@media (max-width: 900px) {
  .bourse-filters, .bourse-stats, .bourse-company, .bourse-metrics { grid-template-columns: 1fr; }
}
