.gator-documents {
    --gator-ink: #20262a;
    --gator-muted: #687076;
    --gator-line: #d9dcdd;
    --gator-accent: #c7c520;
    box-sizing: border-box;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 1.25rem 1.5rem !important;
    background: #fff;
    color: var(--gator-ink);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
}

.gator-documents *,
.gator-documents *::before,
.gator-documents *::after { box-sizing: border-box; }

.gator-documents__eyebrow,
.gator-documents__count { margin: 0 !important; color: var(--gator-muted); font-size: .72rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }

.gator-documents__filters { display: flex !important; align-items: center; gap: .75rem; margin: 0 0 1rem !important; padding: 0 !important; }
.gator-documents__filters label { flex: 1 1 auto !important; width: auto !important; margin: 0 !important; padding: 0 !important; }
.gator-documents__filters input,
.gator-documents__filters select { width: 100% !important; height: 48px !important; margin: 0 !important; padding: 0 .9rem !important; border: 1px solid var(--gator-line) !important; border-radius: 0 !important; background: #fff !important; color: var(--gator-ink) !important; box-shadow: none !important; font: inherit !important; }
.gator-documents__filters input:focus,
.gator-documents__filters select:focus { outline: 2px solid var(--gator-accent) !important; outline-offset: 1px; }
.gator-documents__filters select { flex: 0 0 250px !important; width: 250px !important; }

/* Salient adds a Select2 wrapper around every select field on the front end. */
.gator-documents__filters .fancy-select-wrap { display: flex !important; flex: 1 1 auto !important; align-items: center; gap: .75rem; width: auto !important; margin: 0 !important; }
.gator-documents__filters .fancy-select-wrap > label { flex: 1 1 auto !important; width: auto !important; }
.gator-documents__filters .fancy-select-wrap > .select2-container { flex: 0 0 250px !important; width: 250px !important; margin: 0 !important; }
.gator-documents__filters .select2-selection--single { height: 48px !important; border: 1px solid var(--gator-line) !important; border-radius: 0 !important; background: #fff !important; }
.gator-documents__filters .select2-selection__rendered { padding-left: .9rem !important; color: var(--gator-ink) !important; font: inherit !important; line-height: 46px !important; }
.gator-documents__filters .select2-selection__arrow { height: 46px !important; }

.gator-documents__form { margin: 0 !important; padding: 0 !important; }
.gator-documents__table-header,
.gator-documents__item { display: grid !important; grid-template-columns: minmax(0, 1fr) 260px 220px; gap: 1rem; }
.gator-documents__table-header { padding: .55rem .85rem !important; border-top: 2px solid var(--gator-ink); border-bottom: 1px solid var(--gator-line); color: var(--gator-muted); font-size: .7rem; font-weight: 700; letter-spacing: .08em; line-height: 1.2; text-transform: uppercase; }
.gator-documents__selection-bar { display: flex; align-items: center; justify-content: space-between; min-height: 38px; padding: .4rem .85rem; border-bottom: 1px solid var(--gator-line); background: #fafaf7; color: var(--gator-muted); font-size: .78rem; }
.gator-documents__selection-bar label { display: inline-flex; align-items: center; gap: .5rem; margin: 0; cursor: pointer; font-weight: 600; }
.gator-documents__selection-bar input { width: 16px; height: 16px; margin: 0 !important; accent-color: var(--gator-accent); }
.gator-documents__visible-count { font-size: .72rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.gator-documents__item { align-items: center; height: 72px !important; min-height: 72px !important; margin: 0 !important; padding: .5rem .85rem !important; border-bottom: 1px solid var(--gator-line); background: #fff; transition: background-color .15s ease; }
.gator-documents__item[hidden] { display: none !important; }
.gator-documents__list { display: flex !important; flex-direction: column !important; gap: 0 !important; margin: 0 !important; padding: 0 !important; }
.gator-documents__item:hover { background: #fafaf4; }

.gator-documents__heading p,
.gator-documents__files p { margin: 0 !important; }
.gator-documents__heading { min-width: 0; }
.gator-documents__title { overflow: hidden; margin: 0 !important; color: var(--gator-ink) !important; font-size: .94rem !important; font-weight: 700 !important; letter-spacing: 0 !important; line-height: 1.3 !important; text-overflow: ellipsis; text-transform: none !important; white-space: nowrap; }
.gator-documents__reference { margin: .15rem 0 0 !important; color: var(--gator-muted) !important; font-size: .76rem !important; font-weight: 600 !important; letter-spacing: .04em; }

.gator-documents__categories { display: flex; flex-wrap: wrap; align-self: center !important; gap: .35rem; margin: 0 !important; padding: 0 !important; line-height: 1 !important; }
.gator-documents__categories span { display: inline-block; padding: .3rem .45rem; background: #eff0e6; color: #505400; font-size: .72rem; font-weight: 700; line-height: 1.15; }
.gator-documents__categories .is-empty { background: #f2f3f3; color: var(--gator-muted); }

.gator-documents__files { display: flex; flex-wrap: wrap; align-self: center !important; align-items: center; gap: .35rem .6rem; margin: 0 !important; padding: 0 !important; line-height: 1 !important; }
.gator-documents__file { display: inline-flex; align-items: center; gap: .45rem; height: 32px; margin: 0 !important; padding: 0 !important; color: var(--gator-ink); font-size: .8rem; font-weight: 700; line-height: 1 !important; }
.gator-documents__file input { width: 16px; height: 16px; margin: 0 !important; accent-color: var(--gator-accent); }
.gator-documents__file a,
.gator-documents__product-link { color: var(--gator-ink) !important; font-size: .78rem; font-weight: 700; text-decoration: underline !important; text-underline-offset: 3px; }
.gator-documents__file a { display: inline-flex; align-items: center; height: 32px; padding: 0 .65rem; background: var(--gator-ink); color: #fff !important; font-size: .72rem; line-height: 1 !important; text-decoration: none !important; text-underline-offset: 0; }
.gator-documents__product-link { display: inline-block; width: 100%; }

.gator-documents__download { min-height: 42px; margin-top: 1rem !important; padding: 0 1.1rem !important; border: 0 !important; border-radius: 0 !important; background: var(--gator-accent) !important; color: #151515 !important; font: inherit !important; font-size: .78rem !important; font-weight: 800 !important; letter-spacing: .04em; text-transform: uppercase; }
.gator-documents__download:disabled { cursor: not-allowed; opacity: .45; }
.gator-documents__empty { margin: 2rem 0 !important; color: var(--gator-muted); text-align: center; }
.gator-documents__pagination { display: flex; align-items: center; justify-content: center; gap: .35rem; margin: 1rem 0 0; }
.gator-documents__pagination button { min-width: 34px; height: 34px; margin: 0 !important; padding: 0 .55rem; border: 1px solid var(--gator-line); border-radius: 0; background: #fff; color: var(--gator-ink); font: inherit; font-size: .78rem; font-weight: 700; cursor: pointer; }
.gator-documents__pagination button:hover,
.gator-documents__pagination button.is-current { border-color: var(--gator-ink); background: var(--gator-ink); color: #fff; }
.gator-documents__pagination button:disabled { cursor: not-allowed; opacity: .4; }

@media (max-width: 800px) {
    .gator-documents { padding: 1rem !important; }
    .gator-documents__filters { display: block !important; }
    .gator-documents__count,
    .gator-documents__filters select { margin-top: .75rem !important; }
    .gator-documents__table-header { display: none; }
    .gator-documents__item { display: block; height: auto !important; padding: 1.1rem 0 !important; }
    .gator-documents__filters .fancy-select-wrap { display: block !important; }
    .gator-documents__filters .fancy-select-wrap > .select2-container { width: 100% !important; margin-top: .75rem !important; }
    .gator-documents__selection-bar { align-items: flex-start; gap: .75rem; }
    .gator-documents__pagination { justify-content: flex-start; overflow-x: auto; }
    .gator-documents__categories,
    .gator-documents__files { margin-top: .8rem; }
}
