/*
 * WeeChat.org CSS Style
 *
 * SPDX-FileCopyrightText: 2003-2025 Sébastien Helleu <flashcode@flashtux.org>
 *
 * SPDX-License-Identifier: GPL-3.0-or-later
 */

body {
  background-color: var(--body-bg-color);
  color: var(--body-color);
}

a:not(.btn), a:not(.btn):visited, a:not(.btn):hover, a:not(.btn):active, .link {
  color: var(--link-color);
  text-decoration: none;
}

a.svg-link svg g .svg-link, a.svg-link svg path {
  fill: var(--link-color);
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 1.5rem;
}

.h2, h2 {
  font-size: 2rem;
}

.h3, h3 {
  font-size: 1.75rem;
}

pre {
  margin-bottom: 0;
}

tbody {
  border-top: none !important;
}

td {
  color: var(--td-color);
  background-color: inherit !important;
}

.table-striped > tbody > tr:nth-of-type(2n+1) > * {
  color: var(--table-striped-tr-color);
  background-color: var(--table-striped-tr-bg-color) !important;
}

.alert-success {
  background-color: var(--alert-success-bg-color);
}

.alert-warning {
  background-color: var(--alert-warning-bg-color);
}

.alert-danger {
  background-color: var(--alert-danger-bg-color);
}

.border {
  border: var(--border) !important;
}

.border-top {
  border-top: var(--border) !important;
}

.border-bottom {
  border-bottom: var(--border) !important;
}

.border-left {
  border-left: var(--border) !important;
}

.border-right {
  border-right: var(--border) !important;
}

code {
  color: var(--code-color);
}

.list-group-item {
  background: var(--body-bg-color);
}

.img-thumbnail {
  border-color: var(--img-thumbnail-border-color);
}

/* ===== nav bar ===== */

.navbar {
  background-color: var(--navbar-bg-color);
  background: var(--navbar-bg);
  box-shadow: var(--navbar-box-shadow);
  padding: .5rem .1rem;
}

.navbar-weechat .navbar-nav .nav-link {
  font-weight: bold;
  color: var(--navbar-color);
  padding: .06rem .2rem;
  margin: 0 .6rem;
}

.nav-link {
  padding: .5rem 1rem;
}

.navbar-weechat .navbar-nav .nav-link:hover {
  color: var(--navbar-color);
}

.navbar-weechat .navbar-toggler {
  border: var(--navbar-toggler-border);
}

.navbar-weechat .navbar-toggler-icon {
  background-image: var(--navbar-toggler-icon-bg-image);
}

.nav-item {
  white-space: nowrap;
}

#nav1-home .nav-home, #nav1-about .nav-about, #nav1-doc .nav-doc,
#nav1-download .nav-download, #nav1-scripts .nav-scripts, #nav1-themes .nav-themes,
#nav1-dev .nav-dev {
  border-bottom: 2px solid;
}

.nav-tabs {
  margin-bottom: 1rem;
}

.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
  background-color: var(--body-bg-color);
}

.nav-other-links a {
  text-decoration: none;
}

.nav-other-links svg {
  width: 20px;
  height: 20px;
  vertical-align: middle;
}

.nav-other-links svg g, .nav-other-links svg path {
  fill: var(--link-color);
}

/* ===== page content ===== */

.content {
  padding: 2.5rem 1.5rem;
}

#nav1-home .content {
  padding-left: 0;
  padding-right: 0;
  margin: 0;
}

/* ===== forms ===== */

.form-select {
  background-color: var(--form-select-bg-color);
  color: var(--form-select-color);
}

.required label:after {
  content: " *";
  color: var(--form-required-color);
}

.helptext {
  font-size: 80%;
}

/* ===== home ===== */

.home-container {
  margin: 0;
}

.home-container svg {
  width: 24px;
  height: 24px;
  margin-right: .3rem;
}

.home-container svg g, .home-container svg path {
  fill: var(--home-container-svg-fill);
}

.container-bg {
  background-color: var(--container-bg-color);
}

/* ===== pagination ===== */

.page-link, .page-item.active .page-link, .page-item.disabled .page-link {
  background: none;
  border: var(--page-link-border);
}

.page-item.active .page-link {
  background-color: var(--page-link-active-bg-color);
}

.page-item.disabled .page-link {
  color: var(--page-link-disabled-color);
}

.page-link:hover {
  background-color: var(--page-link-hover-bg-color);
}

/* ===== pages ===== */

/* common */

.btn svg {
  vertical-align: text-top;
}

img.img-shadow {
  box-shadow: var(--img-shadow);
}

img.img-shadow2 {
  box-shadow: var(--img-shadow2);
}

.container-bg img.img-shadow {
  box-shadow: var(--container-bg-img-shadow);
}

.table-borderless th, .table-borderless td {
  border: none;
}

.quote {
  font-family: georgia, serif, verdana, arial, helvetica, sans-serif;
  font-style: italic;
}

.commits svg g, .commits svg path {
  fill: var(--link-color);
}

/* donate */

.sponsor-icon svg {
  width: 60px;
  height: 60px;
  margin-right: 1.5rem;
}

.sponsor-check svg g, .sponsor-check svg path {
  fill: var(--donate-check);
}

.sponsor-cross svg g, .sponsor-cross svg path {
  fill: var(--donate-cross);
}

.sponsortype .person g, .sponsortype .person path {
  fill: var(--donate-person-fill);
}

.sponsortype .persons g, .sponsortype .persons path {
  fill: var(--donate-persons-fill);
}

.sponsortype .briefcase g, .sponsortype .briefcase path {
  fill: var(--donate-briefcase-fill);
}

/* about/screenshots */

.screenshot img {
  margin: .8em 0;
}

/* about/support */

ul.social {
  list-style-type: none;
}

.social svg {
  width: 20px;
  height: 20px;
  margin-right: .25rem;
}

.social li svg g, .social li svg path {
  fill: var(--link-color);
}

/* doc */

.doc-bestlang {
  background-color: var(--doc-bestlang-bg-color) !important;
}

.doc-audience {
  background-color: var(--doc-audience-bg-color) !important;
}

.doc-audience svg {
  margin-right: .5rem;
}

.doc-audience-user svg g, .doc-audience-user svg path {
  fill: var(--doc-audience-user-svg-fill);
}

.doc-audience-developer svg g, .doc-audience-developer svg path {
  fill: var(--doc-audience-developer-svg-fill);
}

.i18n-translated {
  color: var(--doc-i18n-translated) !important;
}

.i18n-fuzzy {
  color: var(--doc-i18n-fuzzy) !important;
}

.i18n-untranslated {
  color: var(--doc-i18n-untranslated) !important;
}

/* doc/security */

.severity-flex {
  width: 120px;
  height: 12px;
  border: var(--severity-border);
  border-radius: 4px;
}

.severity {
  border-right: var(--severity-border);
}

.severity:last-child {
  border-right: none;
}

.severity1 {
  background-color: var(--severity1-bg-color);
}

.severity2 {
  background-color: var(--severity2-bg-color);
}

.severity3 {
  background-color: var(--severity3-bg-color);
}

.severity4 {
  background-color: var(--severity4-bg-color);
}

.text-severity a {
  text-decoration: none;
}

.text-severity0 {
  color: var(--text-severity0-color) !important;
  font-weight: bold;
}

.text-severity1 {
  color: var(--text-severity1-color) !important;
  font-weight: bold;
}

.text-severity2 {
  color: var(--text-severity2-color) !important;
  font-weight: bold;
}

.text-severity3 {
  color: var(--text-severity3-color) !important;
  font-weight: bold;
}

.text-severity4 {
  color: var(--text-severity4-color) !important;
  font-weight: bold;
}

/* download/packages */

.signatures pre {
  margin: .5rem 0;
}

/* download/debian */

.stable-version {
  color: var(--stable-version-color);
}

.devel-version {
  color: var(--devel-version-color);
}

.discontinued {
  opacity: .45;
}

.discontinued h5, span.discontinued {
  text-decoration: line-through;
}

.discontinued .card-body {
  background: var(--discontinued-bg);
}

/* scripts */

.script-filters {
  background-color: var(--script-filters-bg-color);
}

.script-popular {
  width: 10px;
  min-width: 10px;
}

.script-disabled {
  opacity: .5;
}

.source svg {
  margin-right: .3rem;
}

.source svg g, .source svg path {
  fill: var(--script-source-svg-fill);
}

/* themes */

.theme-preview pre {
  font-family: monospace;
  font-size: 100%;
  line-height: 100%;
  margin: .7rem 0;
  padding: 0;
  overflow: hidden;
}

/* dev/stats */

.dev-stats-dark {
  display: var(--dev-stats-dark-display);
}

.dev-stats-light {
  display: var(--dev-stats-light-display);
}

.svg object {
  margin: 0 20%;
}

/* ===== footer ===== */

.footer {
  background-color: var(--footer-bg-color);
}

.footer .wave {
  height: 125px;
  background-color: var(--footer-wave-bg-color);
  overflow: hidden;
}

.footer .wave svg {
  width: 100%;
  height: 100%;
}

.footer .wave svg path {
  fill: var(--footer-wave-svg-fill);
  stroke: none;
}

.footer .main {
  font-size: 1.2rem;
  font-weight: bold;
}

.footer li {
  margin: .8rem 0;
  list-style-type: none;
  line-height: 30px;
}

.footer .icons a {
  text-decoration: none;
}

.footer .icons svg {
  width: 24px;
  height: 24px;
  margin: 0 .8rem;
}

.footer .icons svg g, .footer .icons svg path {
  fill: var(--link-color);
}
