@layer base {
  html, body {
    margin: 0;
    padding: 0;
  }
  body {
    overscroll-behavior: none;
  }
  main > :first-child {
    margin-top: 0 !important;
  }
  main > :last-child {
    margin-bottom: 0 !important;
  }
}

/* Subtle, visible custom scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: #f1f4f9;
}
::-webkit-scrollbar-thumb {
  background: #c3c6d7;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #737686;
}

/* Brokerage Calculator Page Styles */
.preset-btn.active {
  background-color: #004ac6;
  color: #ffffff;
  font-weight: 600;
}
.segment-btn.active {
  background-color: #ffffff;
  color: #004ac6;
  font-weight: 700;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.segment-btn:not(.active) {
  background-color: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(203, 213, 225, 0.8);
}
.segment-btn:not(.active):hover {
  background-color: #ffffff;
  border-color: #94a3b8;
}
.exchange-btn.active {
  background-color: #ffffff;
  color: #004ac6;
  font-weight: 700;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.exchange-btn:not(.active) {
  background-color: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(203, 213, 225, 0.8);
}
.exchange-btn:not(.active):hover {
  background-color: #ffffff;
  border-color: #94a3b8;
}
.fee-type-btn.active {
  background-color: #ffffff;
  color: #004ac6;
  font-weight: 700;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.fee-type-btn:not(.active) {
  background-color: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(203, 213, 225, 0.8);
}
.fee-type-btn:not(.active):hover {
  background-color: #ffffff;
  border-color: #94a3b8;
}
.broker-tab-btn.active,
.broker-btn.active {
  background-color: #ffffff;
  color: #004ac6;
  font-weight: 600;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.faq-item.active .faq-icon {
  transform: rotate(180deg);
}
.faq-item.active .faq-body {
  display: block !important;
}