/* TeliBot CoreAPI — custom Swagger UI theme
   Loaded after the default Swagger CSS, so these rules win on cascade. */

:root {
  --tb-bg: #0f172a;
  --tb-surface: #1e293b;
  --tb-surface-2: #334155;
  --tb-border: rgba(148, 163, 184, 0.18);
  --tb-text: #e2e8f0;
  --tb-text-muted: #94a3b8;
  --tb-text-dim: #64748b;
  --tb-primary: #6366f1;
  --tb-primary-2: #8b5cf6;
  --tb-success: #22c55e;
  --tb-warning: #f59e0b;
  --tb-danger: #ef4444;
  --tb-info: #06b6d4;
  --tb-mono: ui-monospace, SFMono-Regular, "JetBrains Mono", Consolas, monospace;
  --tb-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
}

html, body {
  background: radial-gradient(ellipse at top, #1e293b 0%, #0f172a 60%, #020617 100%) !important;
  color: var(--tb-text) !important;
  font-family: var(--tb-font) !important;
}

/* ========== Top bar — hidden, replaced by branded sticky header ========== */
.swagger-ui .topbar { display: none !important; }

/* Branded sticky header injected at top of swagger-ui */
.swagger-ui { position: relative; }
.swagger-ui::before {
  content: "TeliBot CoreAPI · API Reference";
  display: block;
  background: linear-gradient(135deg, #1e1b4b 0%, #312e81 50%, #0f172a 100%);
  padding: 16px 28px;
  font-size: 1rem;
  font-weight: 800;
  color: #fff;
  letter-spacing: -0.01em;
  border-bottom: 1px solid rgba(99, 102, 241, 0.3);
  position: sticky;
  top: 0;
  z-index: 1000;
  box-shadow: 0 4px 24px -8px rgba(99, 102, 241, 0.4);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}

/* ========== Main info header ========== */
.swagger-ui .info {
  margin: 32px 0 24px !important;
}
.swagger-ui .info hgroup.main {
  margin: 0 0 20px !important;
  display: block !important;
}
.swagger-ui .info .title {
  color: #fff !important;
  font-size: 2.4rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 0 !important;
}
.swagger-ui .info .title > span {
  display: inline-flex !important;
  gap: 8px !important;
  align-items: center !important;
}
.swagger-ui .info .title small {
  display: inline-flex !important;
  align-items: center !important;
  background: linear-gradient(135deg, #6366f1, #8b5cf6) !important;
  border-radius: 8px !important;
  padding: 0 !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 10px -4px rgba(99, 102, 241, 0.5);
}
.swagger-ui .info .title small.version-stamp {
  background: rgba(148, 163, 184, 0.15) !important;
  border: 1px solid var(--tb-border) !important;
  box-shadow: none;
}
.swagger-ui .info .title small pre,
.swagger-ui .info .title small .version {
  color: #fff !important;
  background: transparent !important;
  border: none !important;
  padding: 4px 10px !important;
  margin: 0 !important;
  font-family: var(--tb-mono) !important;
  font-weight: 700 !important;
  font-size: 0.72rem !important;
}
.swagger-ui .info .title small.version-stamp pre,
.swagger-ui .info .title small.version-stamp .version {
  color: var(--tb-text-muted) !important;
}

/* hide the raw "/openapi.json" link Swagger shows under the title */
.swagger-ui .info hgroup.main > a.link,
.swagger-ui .info hgroup.main > a[href*="openapi.json"] {
  display: none !important;
}
.swagger-ui .info p,
.swagger-ui .info li,
.swagger-ui .info table,
.swagger-ui .info a {
  color: var(--tb-text-muted) !important;
}
.swagger-ui .info a { color: #a5b4fc !important; text-decoration: none; }
.swagger-ui .info a:hover { color: #c7d2fe !important; text-decoration: underline; }
.swagger-ui .info code {
  background: rgba(99, 102, 241, 0.12) !important;
  color: #c7d2fe !important;
  border-radius: 4px;
  padding: 2px 6px;
  font-family: var(--tb-mono) !important;
  font-size: 0.85em;
}
.swagger-ui .info h1,
.swagger-ui .info h2,
.swagger-ui .info h3,
.swagger-ui .info h4 {
  color: #fff !important;
  margin-top: 1.4em !important;
  margin-bottom: 0.5em !important;
  font-weight: 700 !important;
}
.swagger-ui .info h3 { font-size: 1.05rem !important; }

/* contact / license section */
.swagger-ui .info .info__contact,
.swagger-ui .info .info__license,
.swagger-ui .info .info__tos {
  color: var(--tb-text-muted) !important;
}

/* ========== Scheme/server selector ========== */
.swagger-ui .scheme-container {
  background: var(--tb-surface) !important;
  border: 1px solid var(--tb-border) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  margin: 0 0 24px !important;
  padding: 16px 20px !important;
}
.swagger-ui .scheme-container .schemes > label {
  color: var(--tb-text) !important;
}
.swagger-ui select,
.swagger-ui input[type="text"],
.swagger-ui input[type="password"],
.swagger-ui input[type="email"],
.swagger-ui input[type="search"],
.swagger-ui input[type="number"],
.swagger-ui textarea {
  background: var(--tb-bg) !important;
  border: 1px solid var(--tb-border) !important;
  color: var(--tb-text) !important;
  border-radius: 8px !important;
  padding: 8px 10px !important;
  font-family: var(--tb-mono) !important;
}
.swagger-ui select:focus,
.swagger-ui input:focus,
.swagger-ui textarea:focus {
  border-color: var(--tb-primary) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.18) !important;
}

/* ========== Authorize button ========== */
.swagger-ui .auth-wrapper { display: flex; align-items: center; }
.swagger-ui .btn.authorize,
.swagger-ui .auth-wrapper .authorize {
  background: linear-gradient(135deg, var(--tb-primary), var(--tb-primary-2)) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 8px 18px !important;
  font-weight: 600 !important;
  box-shadow: 0 6px 16px -4px rgba(99, 102, 241, 0.45) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}
.swagger-ui .btn.authorize:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 20px -4px rgba(99, 102, 241, 0.6) !important;
}
.swagger-ui .btn.authorize svg { fill: #fff !important; }

/* ========== Filter / search input ========== */
.swagger-ui .filter-container {
  margin: 0 0 16px !important;
  padding: 0 !important;
  background: transparent !important;
}
.swagger-ui .filter .operation-filter-input {
  background: var(--tb-surface) !important;
  border: 1px solid var(--tb-border) !important;
  color: var(--tb-text) !important;
  border-radius: 10px !important;
  padding: 12px 16px !important;
  font-size: 0.95rem !important;
}

/* ========== Tag sections (collapsible groups) ========== */
.swagger-ui .opblock-tag-section {
  margin-bottom: 16px;
}
.swagger-ui .opblock-tag {
  background: var(--tb-surface) !important;
  border: 1px solid var(--tb-border) !important;
  border-radius: 12px !important;
  padding: 14px 20px !important;
  margin: 0 0 10px !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  transition: border-color 0.15s ease, background 0.15s ease;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  cursor: pointer;
}
.swagger-ui .opblock-tag small {
  flex: 1 1 auto !important;
}
.swagger-ui .opblock-tag .expand-operation {
  margin-left: auto !important;
}
.swagger-ui .opblock-tag:hover {
  border-color: rgba(99, 102, 241, 0.4) !important;
}
.swagger-ui h3.opblock-tag a,
.swagger-ui h3.opblock-tag a:link,
.swagger-ui h3.opblock-tag a:visited,
.swagger-ui h3.opblock-tag a:hover,
.swagger-ui h3.opblock-tag a:focus,
.swagger-ui h3.opblock-tag a.nostyle,
.swagger-ui h3.opblock-tag a.nostyle:hover,
.swagger-ui h3.opblock-tag a span,
.swagger-ui h3.opblock-tag a.nostyle span,
.swagger-ui h3.opblock-tag > span {
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 1.15rem !important;
  border: none !important;
  background: transparent !important;
}
.swagger-ui h3.opblock-tag a.nostyle:hover span { color: #c7d2fe !important; }
.swagger-ui .opblock-tag small,
.swagger-ui .opblock-tag small p,
.swagger-ui .opblock-tag small .renderedMarkdown,
.swagger-ui .opblock-tag small .renderedMarkdown p {
  color: var(--tb-text-muted) !important;
  font-weight: 400 !important;
  font-size: 0.85rem !important;
  margin: 0 !important;
}
.swagger-ui .opblock-tag svg,
.swagger-ui .opblock-tag .arrow,
.swagger-ui .opblock-tag .arrow svg {
  fill: var(--tb-text-muted) !important;
  filter: none !important;
}

/* collapse / expand chevron buttons inside tag headers */
.swagger-ui .opblock-tag button,
.swagger-ui .opblock-tag .expand-operation,
.swagger-ui .expand-operation {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 4px !important;
  cursor: pointer;
}
.swagger-ui .opblock-tag button svg,
.swagger-ui .expand-operation svg,
.swagger-ui button.expand-operation svg use {
  fill: var(--tb-text-muted) !important;
  color: var(--tb-text-muted) !important;
}
.swagger-ui .opblock-tag button:hover svg,
.swagger-ui .expand-operation:hover svg { fill: #c7d2fe !important; }

/* ========== Operation blocks (per endpoint) ========== */
.swagger-ui .opblock {
  background: var(--tb-surface) !important;
  border: 1px solid var(--tb-border) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  margin: 0 0 8px !important;
  overflow: hidden;
}
.swagger-ui .opblock .opblock-summary,
.swagger-ui .opblock button.opblock-summary-control {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  gap: 14px !important;
  padding: 8px 16px !important;
  border: none !important;
  background: transparent !important;
  text-align: left !important;
  cursor: pointer;
}
.swagger-ui .opblock button.opblock-summary-control {
  padding: 4px 0 !important;
  outline: none !important;
}
.swagger-ui .opblock button.opblock-summary-control:focus {
  box-shadow: none !important;
  outline: none !important;
}
.swagger-ui .opblock .opblock-summary-method {
  flex: 0 0 auto !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
  font-size: 0.78rem !important;
  text-shadow: none !important;
  min-width: 80px !important;
  text-align: center !important;
  padding: 6px 10px !important;
  color: #fff !important;
}
.swagger-ui .opblock .opblock-summary-path,
.swagger-ui .opblock .opblock-summary-path__deprecated {
  flex: 0 1 auto !important;
  color: var(--tb-text) !important;
  font-family: var(--tb-mono) !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.swagger-ui .opblock .opblock-summary-path a,
.swagger-ui .opblock .opblock-summary-path a span,
.swagger-ui .opblock .opblock-summary-path span {
  color: var(--tb-text) !important;
  text-decoration: none !important;
}
.swagger-ui .opblock .opblock-summary-description {
  flex: 1 1 auto !important;
  color: var(--tb-text-muted) !important;
  font-family: var(--tb-font) !important;
  font-size: 0.92rem !important;
  text-align: left !important;
}
.swagger-ui .opblock .opblock-summary .arrow,
.swagger-ui .opblock .opblock-summary svg.arrow {
  margin-left: auto !important;
  flex: 0 0 auto !important;
}
.swagger-ui .opblock .opblock-summary svg { fill: var(--tb-text-muted) !important; }
.swagger-ui .opblock .authorization__btn {
  flex: 0 0 auto !important;
  background: transparent !important;
  border: none !important;
}
.swagger-ui .opblock .authorization__btn svg { fill: var(--tb-text-muted) !important; }

/* method colors — flatter, closer to brand palette */
.swagger-ui .opblock.opblock-get { border-color: rgba(6, 182, 212, 0.35) !important; background: linear-gradient(180deg, rgba(6, 182, 212, 0.05) 0%, var(--tb-surface) 60%) !important; }
.swagger-ui .opblock.opblock-get .opblock-summary-method { background: var(--tb-info) !important; }
.swagger-ui .opblock.opblock-post { border-color: rgba(34, 197, 94, 0.35) !important; background: linear-gradient(180deg, rgba(34, 197, 94, 0.05) 0%, var(--tb-surface) 60%) !important; }
.swagger-ui .opblock.opblock-post .opblock-summary-method { background: var(--tb-success) !important; }
.swagger-ui .opblock.opblock-put { border-color: rgba(245, 158, 11, 0.35) !important; background: linear-gradient(180deg, rgba(245, 158, 11, 0.05) 0%, var(--tb-surface) 60%) !important; }
.swagger-ui .opblock.opblock-put .opblock-summary-method { background: var(--tb-warning) !important; }
.swagger-ui .opblock.opblock-patch { border-color: rgba(139, 92, 246, 0.35) !important; background: linear-gradient(180deg, rgba(139, 92, 246, 0.05) 0%, var(--tb-surface) 60%) !important; }
.swagger-ui .opblock.opblock-patch .opblock-summary-method { background: var(--tb-primary-2) !important; }
.swagger-ui .opblock.opblock-delete { border-color: rgba(239, 68, 68, 0.35) !important; background: linear-gradient(180deg, rgba(239, 68, 68, 0.05) 0%, var(--tb-surface) 60%) !important; }
.swagger-ui .opblock.opblock-delete .opblock-summary-method { background: var(--tb-danger) !important; }

/* expanded body */
.swagger-ui .opblock.is-open { border-color: rgba(99, 102, 241, 0.35) !important; }
.swagger-ui .opblock-body {
  background: var(--tb-bg) !important;
  border-top: 1px solid var(--tb-border) !important;
}

/* section headers ("Parameters", "Request body", "Responses") */
.swagger-ui .opblock-section-header {
  background: rgba(99, 102, 241, 0.06) !important;
  border-bottom: 1px solid var(--tb-border) !important;
  border-top: 1px solid var(--tb-border) !important;
  box-shadow: none !important;
}
.swagger-ui .opblock-section-header h4,
.swagger-ui .opblock-section-header h5,
.swagger-ui .opblock-section-header > label,
.swagger-ui .opblock-section-header label {
  color: var(--tb-text) !important;
  font-weight: 600 !important;
}
.swagger-ui .opblock-section-header .schemes-title,
.swagger-ui .opblock-section-header .opblock-title {
  color: var(--tb-text) !important;
}
.swagger-ui .opblock-section-header .required {
  color: var(--tb-danger) !important;
  background: rgba(239, 68, 68, 0.1) !important;
  padding: 2px 8px !important;
  border-radius: 4px !important;
  font-weight: 600 !important;
}

/* tabs (Parameters / Cancel etc.) */
.swagger-ui .tab {
  background: transparent !important;
  border-bottom: 1px solid var(--tb-border) !important;
}
.swagger-ui .tab li,
.swagger-ui .tab li button {
  color: var(--tb-text-muted) !important;
  font-weight: 600 !important;
  background: transparent !important;
}
.swagger-ui .tab li.active,
.swagger-ui .tab li.active button {
  color: #c7d2fe !important;
  border-bottom: 2px solid var(--tb-primary) !important;
}

/* JSON example / code box ("Edit Value", "Schema") */
.swagger-ui .opblock-description-wrapper,
.swagger-ui .opblock-body pre.example,
.swagger-ui .opblock-body pre,
.swagger-ui .body-param__example,
.swagger-ui textarea.body-param__text {
  background: #0a0e1a !important;
  color: #cbd5e1 !important;
  border: 1px solid var(--tb-border) !important;
  border-radius: 8px !important;
  font-family: var(--tb-mono) !important;
}

/* media-type selector chip ("application/json") */
.swagger-ui .opblock-body select {
  background: var(--tb-surface) !important;
  border: 1px solid var(--tb-border) !important;
  color: var(--tb-text) !important;
}
.swagger-ui .opblock-description-wrapper p,
.swagger-ui .opblock-description-wrapper li,
.swagger-ui .opblock-external-docs-wrapper p,
.swagger-ui .opblock-title_normal p {
  color: var(--tb-text-muted) !important;
}

/* parameters table */
.swagger-ui table thead tr td,
.swagger-ui table thead tr th {
  color: var(--tb-text) !important;
  border-bottom: 1px solid var(--tb-border) !important;
  background: rgba(99, 102, 241, 0.06) !important;
}
.swagger-ui table tbody tr td {
  border-bottom: 1px solid var(--tb-border) !important;
  color: var(--tb-text) !important;
}
.swagger-ui .parameter__name,
.swagger-ui .parameter__type,
.swagger-ui .parameter__in,
.swagger-ui .parameter__deprecated,
.swagger-ui .response-col_status,
.swagger-ui .response-col_description__inner div.markdown,
.swagger-ui .response-col_links {
  color: var(--tb-text) !important;
}
.swagger-ui .parameter__name.required:after { color: var(--tb-danger) !important; }
.swagger-ui .parameter__type { color: var(--tb-text-muted) !important; font-family: var(--tb-mono) !important; }
.swagger-ui .parameter__in { color: var(--tb-text-dim) !important; font-style: italic; }

/* Try-it-out + execute buttons */
.swagger-ui .try-out__btn,
.swagger-ui .btn.cancel {
  background: rgba(148, 163, 184, 0.1) !important;
  border: 1px solid var(--tb-border) !important;
  color: var(--tb-text) !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  padding: 6px 14px !important;
}
.swagger-ui .try-out__btn:hover { border-color: rgba(99, 102, 241, 0.5) !important; }
.swagger-ui .btn.execute {
  background: linear-gradient(135deg, var(--tb-primary), var(--tb-primary-2)) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  box-shadow: 0 6px 14px -4px rgba(99, 102, 241, 0.45) !important;
  padding: 9px 22px !important;
}
.swagger-ui .btn.execute:hover { transform: translateY(-1px); }

/* ========== Responses ========== */
.swagger-ui .responses-wrapper { background: transparent !important; }
.swagger-ui .responses-inner h4,
.swagger-ui .responses-inner h5 { color: #fff !important; }
.swagger-ui .response-col_status { color: var(--tb-text) !important; font-weight: 700 !important; }
.swagger-ui .live-responses-table .response-col_status,
.swagger-ui .responses-table .response-col_status { font-family: var(--tb-mono) !important; }

/* ========== Code blocks (highlight.js / syntax) ========== */
.swagger-ui .highlight-code { background: #0a0e1a !important; border-radius: 8px !important; }
.swagger-ui .microlight {
  background: #0a0e1a !important;
  color: #cbd5e1 !important;
  border-radius: 8px !important;
  padding: 14px !important;
  font-family: var(--tb-mono) !important;
  font-size: 0.85rem !important;
  line-height: 1.55 !important;
}
.swagger-ui .copy-to-clipboard {
  background: rgba(148, 163, 184, 0.1) !important;
  border: 1px solid var(--tb-border) !important;
  border-radius: 6px !important;
}
.swagger-ui .copy-to-clipboard:hover { background: rgba(99, 102, 241, 0.2) !important; }
.swagger-ui .copy-to-clipboard button { background: transparent !important; }

/* ========== Models / schemas section ========== */
.swagger-ui section.models {
  background: var(--tb-surface) !important;
  border: 1px solid var(--tb-border) !important;
  border-radius: 12px !important;
  margin: 24px 0 !important;
}
.swagger-ui section.models h4 {
  background: transparent !important;
  border: none !important;
  padding: 14px 20px !important;
  display: flex !important;
  align-items: center !important;
}
.swagger-ui section.models h4 button,
.swagger-ui .models-control {
  background: transparent !important;
  border: none !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  cursor: pointer;
  padding: 0 !important;
}
.swagger-ui section.models h4 button:focus,
.swagger-ui .models-control:focus { outline: none !important; }
.swagger-ui section.models h4 svg,
.swagger-ui section.models h4 svg use { fill: var(--tb-text-muted) !important; }
.swagger-ui section.models.is-open h4 {
  border-bottom: 1px solid var(--tb-border) !important;
  color: #fff !important;
}
.swagger-ui section.models h4,
.swagger-ui section.models h5 { color: #fff !important; }
.swagger-ui section.models .model-container {
  background: var(--tb-bg) !important;
  border: 1px solid var(--tb-border) !important;
  border-radius: 8px !important;
  margin: 6px 0 !important;
}
.swagger-ui .model-title,
.swagger-ui .model { color: var(--tb-text) !important; }
.swagger-ui .model .property { color: var(--tb-text-muted) !important; }
.swagger-ui .prop-type { color: #a5b4fc !important; }
.swagger-ui .prop-format { color: var(--tb-text-dim) !important; }
.swagger-ui .model-toggle:after,
.swagger-ui .models-control:after { filter: invert(1) brightness(1.5); }

/* arrows / chevrons — keep them muted, no inverted backgrounds */
.swagger-ui .arrow,
.swagger-ui section.models h4 svg,
.swagger-ui .opblock-tag .arrow svg {
  fill: var(--tb-text-muted) !important;
  filter: none !important;
}
.swagger-ui .opblock-summary-control .arrow,
.swagger-ui .opblock-summary svg {
  fill: var(--tb-text-muted) !important;
}

/* ========== Authorize modal ========== */
.swagger-ui .dialog-ux .modal-ux {
  background: var(--tb-surface) !important;
  border: 1px solid var(--tb-border) !important;
  border-radius: 14px !important;
}
.swagger-ui .dialog-ux .modal-ux-header { border-bottom: 1px solid var(--tb-border) !important; }
.swagger-ui .dialog-ux .modal-ux-header h3,
.swagger-ui .dialog-ux .modal-ux-content h4,
.swagger-ui .dialog-ux .modal-ux-content h5,
.swagger-ui .dialog-ux .modal-ux-content p,
.swagger-ui .dialog-ux .modal-ux-content code { color: var(--tb-text) !important; }
.swagger-ui .auth-container { border-bottom: 1px solid var(--tb-border) !important; }
.swagger-ui .auth-container h4,
.swagger-ui .auth-container .auth-container__title { color: #fff !important; }

/* close button */
.swagger-ui .dialog-ux .modal-ux-header .close-modal { filter: invert(1); }

/* ========== Misc / labels ========== */
.swagger-ui .response-control-media-type__title,
.swagger-ui .response-control-examples__title,
.swagger-ui label { color: var(--tb-text-muted) !important; }
.swagger-ui .markdown p,
.swagger-ui .markdown li { color: var(--tb-text-muted) !important; }
.swagger-ui .markdown code,
.swagger-ui .renderedMarkdown code {
  background: rgba(99, 102, 241, 0.15) !important;
  color: #c7d2fe !important;
  padding: 2px 6px;
  border-radius: 4px;
  font-family: var(--tb-mono) !important;
}

/* deprecated tag */
.swagger-ui .opblock.opblock-deprecated { opacity: 0.55; }
.swagger-ui .opblock-deprecated .opblock-summary-method {
  background: var(--tb-text-dim) !important;
}

/* selection color */
::selection { background: rgba(99, 102, 241, 0.4); color: #fff; }

/* scrollbars */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(148, 163, 184, 0.2); border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: rgba(148, 163, 184, 0.35); }
