/* WealthView HSN/SAC shared frontend design system — WealthView Design System v1 */
:root {
  --wv-ink: #0B1F2A;            /* was #1c2624 -> Navy */
  --wv-ink-soft: #4A5C63;       /* was #5b6661 -> Ink secondary */
  --wv-paper: #F6F8F7;          /* was #fbfaf7 -> Surface */
  --wv-panel: #fff;             /* Card background, unchanged */
  --wv-line: #DACBBF;           /* was #ddd9cf -> Border strong */
  --wv-line-soft: #ECE4DC;      /* was #ece8df -> tint of Border strong */
  --wv-accent: #0F6E56;         /* was #2b5940 -> Teal */
  --wv-accent-soft: #E1F5EE;    /* was #e9f0ea -> Teal light */
  --wv-accent-mid: #5DCAA5;     /* new: Teal mid, for hover states */
  --wv-gold: #b8862f;           /* kept as-is: one-off exception (mixed-rate badge) */
  --wv-gold-soft: #f7edd9;      /* kept as-is: one-off exception (mixed-rate badge) */
  --wv-radius: 8px;             /* was 4px -> inputs/buttons/badges radius */
  --wv-radius-card: 10px;       /* new: cards/containers radius */
  --wv-max: 1120px;
  --wv-content: 760px;
  --wv-sidebar: 300px;
  --wv-gap: 28px;
}

*,
*::before,
*::after {
  box-sizing: border-box
}

.wv-gst-wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px 52px;
  color: var(--wv-ink);
  font-size: 16px;
  line-height: 1.58
}

.wv-gst-wrap a {
  color: var(--wv-accent);
  text-decoration: none
}

.wv-gst-wrap a:hover {
  text-decoration: underline
}

.wv-gst-wrap h1,
.wv-gst-wrap h2 {
  font-weight: 600;
  letter-spacing: -.012em;
  color: var(--wv-ink)
}

.wv-gst-wrap h1 {
  font-size: clamp(1.75rem, 2.4vw, 2rem);
  line-height: 1.15;
  margin: 0 0 14px
}

.wv-gst-wrap h2 {
  font-size: 1.25rem;
  line-height: 1.3;
  margin: 2.1rem 0 12px
}

.wv-gst-wrap h3 {
  font-size: 1rem;
  line-height: 1.35;
  margin: 0 0 8px
}

.wv-gst-wrap p {
  margin: 0 0 1rem
}

.wv-page-header {
  margin-bottom: 18px
}

.wv-h1-description {
  font-size: .72em;
  font-weight: 500;
  color: var(--wv-ink-soft)
}

.wv-h1-meta-desc {
  font-size: .92rem;
  color: var(--wv-ink-soft);
  margin: 0 0 0
}

.wv-lead {
  font-size: 1.02rem;
  color: var(--wv-ink-soft);
  max-width: 68ch;
  margin: 0 0 20px
}

.wv-muted {
  color: var(--wv-ink-soft)
}

.wv-page-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--wv-sidebar);
  gap: var(--wv-gap);
  align-items: start
}

.wv-main-content,
.wv-sidebar {
  min-width: 0
}

.wv-full-width {
  margin-bottom: 0
}

.wv-page-divider {
  border: 0;
  border-top: 1px solid var(--wv-line);
  margin: 20px 0
}

.wv-level-badge {
  display: inline-block;
  font-size: .7rem;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: var(--wv-radius);
  white-space: nowrap;
  background: var(--wv-paper);
  color: var(--wv-ink-soft)
}

.wv-level-badge--heading {
  background: var(--wv-accent-soft);
  color: var(--wv-accent)
}

/* Distinct category colors kept outside the core palette on purpose,
   so heading/subheading/item levels stay visually distinguishable
   rather than all reading as one teal tone. Not part of the design system. */
.wv-level-badge--subheading {
  background: #eef0e8;
  color: #4a5a3a
}

.wv-level-badge--item {
  background: #fdf1e0;
  color: #8a5a12
}

.wv-type-badge {
  display: inline-block;
  font-size: .7rem;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: var(--wv-radius);
  letter-spacing: .02em
}

.wv-type-badge--hsn {
  background: var(--wv-accent-soft);
  color: var(--wv-accent)
}

/* HSN uses the teal accent above; SAC keeps its own distinct color
   so the two code types remain visually distinguishable at a glance. */
.wv-type-badge--sac {
  background: #faece7;
  color: #993c1d
}

.wv-col-code-desc__code {
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-weight: 600
}

.wv-col-code-desc__text {
  color: var(--wv-ink-soft)
}

.wv-col-level {
  white-space: nowrap
}

.wv-directory-card,
.wv-sidebar-card {
  background: var(--wv-panel);
  border: 1px solid var(--wv-line);
  border-radius: var(--wv-radius-card)
}

.wv-info-card {
  background: var(--wv-accent-soft);
  border: 1px solid var(--wv-line);
  border-radius: var(--wv-radius-card);
  padding: 20px 24px
}

.wv-info-card h2 {
  margin-top: 0
}

.wv-breadcrumb {
  font-size: .88rem;
  color: var(--wv-ink-soft);
  padding: 22px 0 12px
}

.wv-breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  gap: 0;
  margin: 0;
  padding: 0
}

.wv-breadcrumb li {
  display: inline-flex;
  align-items: center
}

.wv-breadcrumb li:not(:last-child)::after {
  content: '›';
  padding: 0 8px;
  color: var(--wv-ink-soft)
}

.wv-breadcrumb a {
  color: var(--wv-ink-soft)
}

.wv-breadcrumb span[aria-current=page] {
  color: var(--wv-ink)
}

/* Search widget */
.wv-gst-search-widget {
  margin: 0 0 14px;
  background: var(--wv-panel);
  border: 1px solid var(--wv-line);
  border-radius: var(--wv-radius-card);
  padding: 44px 52px 40px;
  color: var(--wv-ink);
  text-align: left;
  position: relative;
  box-shadow: 0 1px 0 var(--wv-line), 0 30px 60px -30px rgba(11, 31, 42, .18);
  overflow: hidden
}

.wv-gst-search-widget,
.wv-gst-search-widget * {
  box-sizing: border-box
}

.wv-gst-search-stamp {
  position: absolute;
  top: 28px;
  right: 40px;
  width: 74px;
  height: 74px;
  border: 1.5px solid var(--wv-accent);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(-8deg);
  opacity: .85
}

.wv-gst-search-stamp span {
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-size: 10px;
  font-weight: 600;
  color: var(--wv-accent);
  letter-spacing: .04em;
  text-align: center;
  line-height: 1.5
}

.wv-gst-search-kicker {
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-size: 12.5px;
  color: var(--wv-ink-soft);
  letter-spacing: .02em;
  margin: 0 0 10px
}

.wv-gst-search-title {
  font-weight: 600 !important;
  font-size: 32px !important;
  line-height: 1.22 !important;
  letter-spacing: -.012em !important;
  margin: 0 0 12px !important;
  max-width: 720px;
  color: var(--wv-ink) !important
}

.wv-gst-search-subtitle {
  font-size: 15px;
  color: var(--wv-ink-soft);
  margin: 0 0 34px;
  max-width: 800px;
  line-height: 1.5
}

.wv-gst-search-entry-label {
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-size: 11px;
  color: var(--wv-ink-soft);
  text-transform: lowercase;
  margin-bottom: 8px;
  display: flex;
  justify-content: space-between;
  align-items: baseline
}

.wv-gst-search-mode {
  font-size: 11px;
  color: var(--wv-accent);
  background: var(--wv-accent-soft);
  padding: 3px 9px;
  border-radius: var(--wv-radius);
  pointer-events: none
}

.wv-gst-search-row {
  display: flex;
  align-items: stretch;
  border-bottom: 2px solid var(--wv-ink);
  padding-bottom: 14px;
  margin-bottom: 0;
  gap: 14px
}

.wv-gst-search-input-wrap {
  position: relative;
  min-width: 0;
  flex: 1
}

.wv-gst-search-input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-size: 19px;
  color: var(--wv-ink);
  padding: 4px 0;
  min-width: 0;
  height: 38px
}

.wv-gst-search-input::placeholder {
  color: var(--wv-ink-soft);
  font-size: 16px
}

.wv-gst-search-input:focus {
  box-shadow: none
}

.wv-gst-search-button {
  background: var(--wv-accent);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  border: 0;
  border-radius: var(--wv-radius);
  padding: 0 22px;
  cursor: pointer;
  align-self: flex-end;
  margin-bottom: 2px;
  height: 38px
}

.wv-gst-search-button:hover {
  background: var(--wv-accent-mid)
}

.wv-gst-search-button:focus-visible {
  outline: 2px solid var(--wv-ink);
  outline-offset: 2px
}

.wv-gst-search-examples {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: nowrap;
  overflow-x: auto;
  scrollbar-width: none;
  margin-bottom: 20px;
  padding: 14px 0 2px;
  font-size: 13.5px;
  line-height: 1.9;
  mask-image: linear-gradient(to right, #000 92%, transparent 100%)
}

.wv-gst-search-examples::-webkit-scrollbar {
  display: none
}

.wv-gst-search-examples__label,
.wv-gst-search-example-text,
.wv-gst-search-example-sep {
  flex-shrink: 0
}

.wv-gst-search-examples__label {
  color: var(--wv-ink-soft)
}

.wv-gst-search-example-text {
  border: 0;
  background: none;
  padding: 0;
  color: var(--wv-ink-soft);
  font: inherit;
  font-style: italic;
  cursor: pointer
}

.wv-gst-search-example-text:hover,
.wv-gst-search-example-text:focus-visible {
  text-decoration: underline;
  color: var(--wv-accent)
}

.wv-gst-search-example-text:focus-visible {
  outline: 2px solid var(--wv-accent);
  outline-offset: 2px
}

.wv-gst-search-example-sep {
  color: var(--wv-line)
}

.wv-gst-search-popular-line {
  font-size: 12.5px;
  color: var(--wv-ink-soft);
  margin: 18px 0 0;
  line-height: 1.9
}

.wv-gst-search-popular-code {
  border: 0;
  background: none;
  padding: 0;
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  color: var(--wv-accent);
  cursor: pointer;
  font-size: inherit
}

.wv-gst-search-popular-code:hover,
.wv-gst-search-popular-code:focus-visible {
  text-decoration: underline
}

.wv-gst-search-popular-code:focus-visible {
  outline: 2px solid var(--wv-accent);
  outline-offset: 2px
}

.wv-gst-search-code-sep {
  color: var(--wv-line)
}

.wv-gst-search-scope {
  display: flex;
  align-items: center;
  gap: 0;
  border-top: 1px solid var(--wv-line);
  padding-top: 22px;
  margin-top: 18px
}

.wv-gst-search-scope-label {
  font-size: 12px;
  color: var(--wv-ink-soft);
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  margin-right: 20px
}

.wv-gst-search-type-options {
  display: flex;
  gap: 2px
}

.wv-gst-search-type-choice {
  font-size: 14px;
  color: var(--wv-ink-soft);
  padding: 8px 16px;
  border-radius: var(--wv-radius);
  cursor: pointer;
  border: 1px solid transparent;
  background: transparent;
  font: inherit
}

.wv-gst-search-type-choice[aria-checked=true] {
  background: var(--wv-accent-soft);
  color: var(--wv-accent);
  font-weight: 500
}

.wv-gst-search-type-choice:focus-visible {
  outline: 2px solid var(--wv-accent);
  outline-offset: 2px
}

.wv-gst-search-type-sub {
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-size: 11px;
  opacity: .7
}

.wv-gst-search-filters {
  display: none
}

.wv-gst-search-results {
  padding-top: 22px;
  margin-bottom: 0;
  transition: opacity .15s ease
}

.wv-gst-search-results.is-loading {
  opacity: .5;
  pointer-events: none
}

.wv-gst-search-error {
  border: 1px solid var(--wv-line);
  background: var(--wv-panel);
  border-radius: var(--wv-radius);
  padding: 15px 17px;
  margin-top: 9px;
  color: var(--wv-ink-soft);
  font-size: .87rem
}

.wv-gst-search-results-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 15px;
  margin-bottom: 12px
}

.wv-gst-search-results-head h3 {
  font-weight: 600;
  letter-spacing: -.012em;
  font-size: 1.25rem;
  line-height: 1.23;
  margin: 0;
  color: var(--wv-ink)
}

.wv-gst-search-count {
  color: var(--wv-ink-soft);
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-size: .78rem
}

.wv-gst-search-no-results {
  border: 1px solid var(--wv-line);
  background: var(--wv-panel);
  border-radius: var(--wv-radius);
  padding: 15px 17px;
  margin-top: 9px;
  color: var(--wv-ink-soft);
  font-size: .87rem
}

.wv-gst-search-note {
  margin-top: 15px;
  padding: 11px 13px;
  background: var(--wv-paper);
  border: 1px solid var(--wv-line-soft);
  border-radius: var(--wv-radius);
  color: var(--wv-ink-soft);
  font-size: .75rem;
  line-height: 1.5
}

/* Tables: single perimeter only. Inner tables inside cards/wrappers have no second outer border. */
.wv-table-wrap {
  overflow-x: auto;
  margin: 0;
  border: 1px solid var(--wv-line);
  border-radius: var(--wv-radius-card);
  background: var(--wv-panel)
}

.wv-directory-card>.wv-table-wrap,
.wv-chapter-table-wrap {
  border: 0;
  border-radius: 0;
  background: transparent
}

.wv-result-table {
  width: 100%;
  border: 0;
  border-collapse: collapse;
  margin: 0;
  font-size: .91rem;
  background: var(--wv-panel)
}

.wv-result-table th,
.wv-result-table td {
  padding: 11px 12px;
  text-align: left;
  border-bottom: 1px solid var(--wv-line-soft);
  vertical-align: top
}

.wv-result-table th {
  background: var(--wv-paper);
  font-weight: 600;
  color: var(--wv-ink-soft);
  white-space: nowrap
}

.wv-result-table tbody tr:last-child td {
  border-bottom: 0
}

.wv-result-table tbody tr:hover {
  background: var(--wv-paper)
}

.wv-row-self {
  background: var(--wv-accent-soft) !important;
  box-shadow: inset 3px 0 0 var(--wv-accent)
}

.wv-rate--numeric {
  color: var(--wv-ink);
  font-weight: 500
}

.wv-rate--na {
  color: var(--wv-ink-soft);
  font-weight: 600
}

.wv-rate--blank {
  color: var(--wv-ink-soft)
}

/* Ads */
.wv-ad {
  margin: 26px 0;
  text-align: center
}

.wv-ad--after_breadcrumb {
  margin-top: 18px;
  margin-bottom: 26px
}

.wv-ad--before_h1 {
  margin-top: 26px;
  margin-bottom: 26px
}

.wv-ad--sidebar {
  position: sticky;
  top: 24px;
  margin: 0;
  min-height: 250px;
  padding: 0;
  text-align: center
}

.wv-ad__size {
  display: block;
  margin-top: 3px;
  font-size: .65rem;
  letter-spacing: .02em;
  text-transform: none
}

/* Hierarchy */
.wv-hierarchy-decode {
  margin: 24px 0
}

.wv-hierarchy-intro {
  color: var(--wv-ink-soft);
  max-width: 78ch;
  margin: 0 0 14px
}

.wv-hierarchy-decode h2 {
  margin-top: 0
}

.wv-hierarchy-list {
  list-style: none;
  margin: 0;
  padding: 0
}

.wv-hierarchy-list li {
  position: relative;
  margin: 0;
  padding: 8px 0 8px 20px;
  border-left: 1px solid var(--wv-line)
}

.wv-hierarchy-list li::before {
  content: '';
  position: absolute;
  left: -4px;
  top: 15px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--wv-accent)
}

.wv-hierarchy-level {
  font-weight: 600
}

.wv-hierarchy-level__code {
  font-family: 'IBM Plex Mono', ui-monospace, monospace
}

.wv-hierarchy-level__meta {
  color: var(--wv-ink-soft)
}

.wv-within-code {
  margin: 24px 0
}

.wv-within-code h2 {
  margin-top: 0
}

.wv-sidebar>.wv-hierarchy-decode {
  margin: 14px 0 20px
}

.wv-sidebar>.wv-hierarchy-decode h2 {
  font-size: 1rem;
  letter-spacing: 0
}

.wv-sidebar>.wv-hierarchy-decode .wv-hierarchy-list li {
  padding: 7px 0 7px 16px
}

.wv-sidebar>.wv-hierarchy-decode .wv-hierarchy-level {
  font-size: .84rem
}

.wv-sidebar>.wv-hierarchy-decode .wv-hierarchy-level__meta {
  font-size: .8rem
}

.wv-sidebar>.wv-hierarchy-decode .wv-hierarchy-level__code {
  font-size: .84rem
}

.wv-sidebar>.wv-hierarchy-decode .wv-hierarchy-list a {
  color: var(--wv-accent);
  text-decoration: none
}

.wv-sidebar>.wv-hierarchy-decode .wv-hierarchy-list a:hover {
  text-decoration: underline
}

/* Section */
.wv-directory-card {
  padding: 0;
  overflow: hidden
}

.wv-directory-card__header {
  padding: 20px 24px;
  border-bottom: 1px solid var(--wv-line-soft)
}

.wv-directory-card__header h2 {
  margin: 0 0 4px
}

.wv-directory-card__header p {
  margin: 0
}

.wv-chapter-directory {
  display: block
}

.wv-chapter-directory__item {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) 90px;
  gap: 18px;
  align-items: center;
  padding: 15px 20px;
  border-bottom: 1px solid var(--wv-line-soft);
  color: var(--wv-ink) !important;
  text-decoration: none !important
}

.wv-chapter-directory__item:last-child {
  border-bottom: 0
}

.wv-chapter-directory__item:hover {
  background: var(--wv-accent-soft)
}

.wv-chapter-directory__label {
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-weight: 600;
  color: var(--wv-accent)
}

.wv-chapter-directory__description {
  color: var(--wv-ink)
}

.wv-chapter-directory__count {
  text-align: right;
  color: var(--wv-ink-soft);
  font-size: .84rem
}

.wv-directory-back {
  padding: 14px 20px;
  margin: 0;
  border-top: 1px solid var(--wv-line-soft);
  font-size: .92rem
}

/* Chapter */
.wv-chapter-table-card {
  padding: 0;
  overflow: hidden
}

.wv-chapter-heading-table th:first-child,
.wv-chapter-heading-table td:first-child {
  width: 100px
}

.wv-chapter-heading-table th:nth-child(3),
.wv-chapter-heading-table td:nth-child(3) {
  width: 90px;
  text-align: center
}

.wv-chapter-heading-table th:last-child,
.wv-chapter-heading-table td:last-child {
  width: 95px;
  text-align: center
}

.wv-gst-rate-badge {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 999px;
  background: var(--wv-accent-soft);
  color: var(--wv-accent);
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-size: .8rem;
  font-weight: 600
}

/* Mixed-rate badge kept gold, per design system exception -
   no equivalent warning/amber tone exists in the new palette. */
.wv-gst-rate-badge--mixed {
  background: var(--wv-gold-soft);
  color: #78591e
}

/* Navigation/sidebar */
.wv-sidebar-card {
  padding: 20px 22px
}

.wv-sidebar-card+.wv-sidebar-card {
  margin-top: 14px
}

.wv-sidebar-card h3 {
  font-weight: 600;
  font-size: .98rem;
  margin: 0 0 10px
}

.wv-sidebar-links {
  list-style: none;
  margin: 0;
  padding: 0
}

.wv-sidebar-links li {
  border-bottom: 1px solid var(--wv-line-soft)
}

.wv-sidebar-links li:last-child {
  border-bottom: 0
}

.wv-sidebar-links a,
.wv-sidebar-links li.is-current {
  display: block;
  padding: 9px 8px;
  border-left: 3px solid transparent
}

.wv-sidebar-links li.is-current {
  background: var(--wv-accent-soft);
  border-left-color: var(--wv-accent)
}

.wv-sidebar-links a:hover {
  background: var(--wv-paper);
  text-decoration: none
}

.wv-sidebar-links strong {
  display: block;
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  font-size: .86rem
}

.wv-sidebar-links span {
  display: block;
  color: var(--wv-ink-soft);
  font-size: .8rem;
  line-height: 1.35;
  margin-top: 2px
}

.wv-sidebar-more {
  margin: 12px 0 0;
  font-size: .84rem
}

.wv-code-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--wv-line);
  border-radius: var(--wv-radius-card);
  background: var(--wv-panel)
}

.wv-code-table {
  width: 100%;
  border-collapse: collapse;
  margin: 0
}

.wv-code-table th,
.wv-code-table td {
  padding: 12px 14px;
  text-align: left;
  border-bottom: 1px solid var(--wv-line-soft);
  vertical-align: top
}

.wv-code-table th {
  background: var(--wv-paper);
  color: var(--wv-ink-soft);
  font-size: .76rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-weight: 600
}

.wv-code-table tr:last-child td {
  border-bottom: 0
}

.wv-code-table__code {
  width: 145px;
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  white-space: nowrap
}

.wv-code-table__code a {
  color: var(--wv-accent);
  text-decoration: none;
  font-weight: 600
}

.wv-code-table__code a:hover {
  text-decoration: underline
}

.wv-code-table__description {
  color: var(--wv-ink)
}

.wv-code-table tr.is-current {
  background: var(--wv-accent-soft)
}

.wv-code-table tr.is-current .wv-code-table__code {
  font-weight: 700
}

.wv-source-card {
  margin-top: 26px;
  padding: 20px 24px;
  background: var(--wv-panel);
  border: 1px solid var(--wv-line);
  border-radius: var(--wv-radius-card)
}

.wv-source-card h2 {
  font-size: 1rem;
  letter-spacing: 0;
  margin: 0 0 6px
}

.wv-source-card p {
  margin: 0;
  font-size: .83rem;
  color: var(--wv-ink-soft)
}

.wv-sections-directory .wv-section-block {
  margin-bottom: 2rem
}

.wv-sac-heading-list {
  list-style: none;
  margin: 1rem 0;
  padding: 0
}

.wv-sac-heading-list li {
  padding: .55rem 0;
  border-bottom: 1px solid var(--wv-line-soft)
}

@media (max-width:900px) {
  .wv-ad--sidebar {
    position: static;
    min-height: 250px
  }

  .wv-gst-search-widget {
    padding-left: 32px;
    padding-right: 32px
  }

  .wv-page-grid {
    grid-template-columns: 1fr
  }

  .wv-sidebar {
    order: 2
  }

  .wv-gst-wrap {
    padding-left: 16px;
    padding-right: 16px
  }

  .wv-chapter-directory__item {
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 10px
  }

  .wv-chapter-directory__count {
    grid-column: 2;
    text-align: left;
    margin-top: -8px
  }

  .wv-result-table {
    min-width: 680px
  }
}

@media (max-width:600px) {
  .wv-gst-search-widget {
    padding: 34px 24px 30px
  }

  .wv-gst-search-stamp {
    display: none
  }

  .wv-gst-search-title {
    font-size: 26px !important
  }

  .wv-gst-search-row {
    width: 100%;
    flex-direction: column;
    gap: 12px
  }

  .wv-gst-search-button {
    align-self: stretch;
    height: 44px;
    padding: 12px
  }

  .wv-gst-search-scope {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px
  }

  .wv-gst-search-type-options {
    flex-wrap: wrap
  }

  .wv-gst-search-examples {
    gap: 10px
  }

  .wv-gst-wrap {
    font-size: 15px
  }

  .wv-gst-wrap h1 {
    font-size: 1.6rem
  }

  .wv-gst-wrap h2 {
    font-size: 1.15rem
  }

  .wv-breadcrumb {
    font-size: .78rem
  }

  .wv-table-wrap {
    margin-left: 0;
    margin-right: 0
  }

  .wv-directory-card__header {
    padding: 15px
  }

  .wv-chapter-directory__item {
    padding: 13px 15px
  }

  .wv-sidebar-card {
    padding: 14px
  }
}

/* Full HSN Sections directory */
.wv-sections-directory .wv-section-block {
  padding: 18px 0;
  border-bottom: 1px solid var(--wv-line-soft)
}

.wv-sections-directory .wv-section-block:last-child {
  border-bottom: 0
}

.wv-sections-directory .wv-section-block h2 {
  margin: 0 0 8px
}

.wv-sections-directory .wv-chapter-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid var(--wv-line-soft)
}

.wv-sections-directory .wv-chapter-list li {
  border-bottom: 1px solid var(--wv-line-soft)
}

.wv-sections-directory .wv-chapter-list li a {
  display: block;
  padding: 10px 2px;
  background: transparent;
  border: 0;
  border-radius: 0;
  min-height: 0
}

.wv-sections-directory .wv-chapter-list li a:hover {
  background: var(--wv-accent-soft)
}

@media (max-width:600px) {
  .wv-sections-directory .wv-chapter-list {
    grid-template-columns: 1fr
  }
}

/* Unified code-page data table: rendered immediately below the search controls. */
.wv-gst-search-results-list {
  overflow-x: auto
}

.wv-gst-search-data-table {
  min-width: 680px
}

.wv-gst-search-data-table .wv-row-self {
  background: var(--wv-accent-soft) !important;
  box-shadow: inset 4px 0 0 var(--wv-accent)
}

.wv-gst-search-data-table .wv-row-level-6 .wv-col-code-desc {
  padding-left: 24px
}

.wv-gst-search-data-table .wv-row-level-8 .wv-col-code-desc {
  padding-left: 40px
}

.wv-gst-search-data-table .wv-row-self .wv-col-code-desc__code {
  font-weight: 700
}