/* Persistent dark UI overlay for asciinema. Mounted from ./custom/techniverse-dark.css. */
:root {
  color-scheme: dark;
  --tv-bg: #0b0f14;
  --tv-surface: #111821;
  --tv-surface-2: #17212c;
  --tv-border: #293544;
  --tv-text: #e6edf3;
  --tv-muted: #9aa7b5;
  --tv-link: #7dd3fc;
  --tv-link-hover: #a7f3d0;
  --tv-accent: #f97316;
  --tv-danger: #fb7185;
}

html,
body {
  background: var(--tv-bg) !important;
  color: var(--tv-text) !important;
}

body,
main,
.container,
.content,
.page,
.recording-page,
.stream-page {
  background-color: var(--tv-bg) !important;
}

a {
  color: var(--tv-link) !important;
}

a:hover,
a:focus {
  color: var(--tv-link-hover) !important;
}

header,
nav,
footer,
.navbar,
.topbar,
.flash,
.alert,
.notice,
.card,
.box,
.panel,
.recording-card,
.stream-card,
.list-group,
.dropdown-menu,
table,
thead,
tbody,
tr,
td,
th {
  background-color: var(--tv-surface) !important;
  color: var(--tv-text) !important;
  border-color: var(--tv-border) !important;
}

.muted,
.text-muted,
.help,
.hint,
small,
time,
figcaption,
label {
  color: var(--tv-muted) !important;
}

input,
textarea,
select,
button,
.button,
.btn {
  background-color: var(--tv-surface-2) !important;
  color: var(--tv-text) !important;
  border-color: var(--tv-border) !important;
}

input::placeholder,
textarea::placeholder {
  color: #7c8998 !important;
}

button:hover,
.button:hover,
.btn:hover,
input:focus,
textarea:focus,
select:focus {
  border-color: var(--tv-link) !important;
  box-shadow: 0 0 0 3px rgb(125 211 252 / 18%) !important;
  outline: none !important;
}

hr,
pre,
code,
kbd,
samp,
.metadata,
.description,
.recording-meta,
.stream-meta,
.pagination,
.search-results,
.profile-header {
  border-color: var(--tv-border) !important;
}

pre,
code,
kbd,
samp {
  background-color: #05080c !important;
  color: #d8dee9 !important;
}

.badge,
.tag,
.label {
  background-color: #203044 !important;
  color: var(--tv-text) !important;
  border-color: var(--tv-border) !important;
}

.danger,
.error,
.invalid-feedback {
  color: var(--tv-danger) !important;
}

.asciinema-player {
  border-color: var(--tv-border) !important;
}

.c-recording.a-show section.info,
.c-recording.a-show section.meta,
.c-recording.a-show section.more-by {
  background: var(--tv-bg) !important;
  border-color: var(--tv-border) !important;
  color: var(--tv-text) !important;
}

.c-recording.a-show section.info .container,
.c-recording.a-show section.meta .container,
.c-recording.a-show section.more-by .container {
  background: transparent !important;
}

.c-recording.a-show section.info .content-sidebar-layout {
  background: var(--tv-surface) !important;
  border: 1px solid var(--tv-border) !important;
  border-radius: 6px !important;
  padding: 1.25rem !important;
}

.c-recording.a-show section.info h1,
.c-recording.a-show section.info h2,
.c-recording.a-show section.info h3 {
  color: var(--tv-text) !important;
}

.c-recording.a-show section.info small,
.c-recording.a-show section.info time,
.c-recording.a-show section.meta small,
.c-recording.a-show section.meta time {
  color: var(--tv-muted) !important;
}

.c-recording.a-show section.info .actions,
.c-recording.a-show section.info .btn-group,
.c-recording.a-show section.info details,
.c-recording.a-show section.info summary {
  background: transparent !important;
}

.c-recording.a-show section.info .btn,
.c-recording.a-show section.info .dropdown-menu,
.c-recording.a-show section.info details[open] summary {
  background: var(--tv-surface-2) !important;
  border-color: var(--tv-border) !important;
  color: var(--tv-text) !important;
}

.c-recording.a-show section.info .author-avatar img,
.c-recording.a-show .asciicast-list .author-avatar img {
  background: var(--tv-surface-2) !important;
  border: 1px solid var(--tv-border) !important;
}

.c-recording.a-show section.meta .status-line,
.c-recording.a-show section.meta .status-line-item {
  color: var(--tv-muted) !important;
}

.asciicast-card {
  background: var(--tv-surface) !important;
  border: 1px solid var(--tv-border) !important;
  border-radius: 6px !important;
  overflow: hidden !important;
}

.asciicast-card > .info {
  background: var(--tv-surface) !important;
  border-top: 1px solid var(--tv-border) !important;
  color: var(--tv-text) !important;
}

.asciicast-card > .info h3,
.asciicast-card > .info h3 a {
  color: var(--tv-text) !important;
}

.asciicast-card > .info h3 a:hover,
.asciicast-card > .info h3 a:focus {
  color: var(--tv-link-hover) !important;
}

.asciicast-card > .info .duration {
  background: #203044 !important;
  border: 1px solid var(--tv-border) !important;
  color: var(--tv-muted) !important;
}

.asciicast-card > .info small,
.asciicast-card > .info time {
  color: var(--tv-muted) !important;
}

.asciicast-card > .info .author-avatar img {
  background: var(--tv-surface-2) !important;
  border: 1px solid var(--tv-border) !important;
}

img,
video,
svg {
  color-scheme: normal;
}
