*, :before, :after {
  box-sizing: border-box
}
:root {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  --page-bg: #fff;
  --accent: #0969da;
  --canvas: #fff;
  --canvas-subtle: #f6f8fa;
  --border: #d0d7de;
  --border-muted: #d8dee4;
  --fg: #24292f;
  --fg-muted: #57606a;
  --fg-subtle: #6e7781;
  --tab-active: #fd8c73;
  --button-bg: #f6f8fa;
  --button-hover: #f3f4f6;
  --counter-bg: #eaeef2;
  --overlay-bg: #f6f8fab8;
  --green-0: #ebedf0;
  --green-1: #9be9a8;
  --green-2: #40c463;
  --green-3: #30a14e;
  --green-4: #216e39
}
html[data-color-scheme=dark] {
  --lightningcss-light: ;
  --lightningcss-dark: initial;
  color-scheme: dark
}
html[data-color-scheme=dark] body {
  --page-bg: #0d1117;
  --accent: #58a6ff;
  --canvas: #0d1117;
  --canvas-subtle: #161b22;
  --border: #30363d;
  --border-muted: #21262d;
  --fg: #e6edf3;
  --fg-muted: #8b949e;
  --fg-subtle: #6e7681;
  --button-bg: #21262d;
  --button-hover: #30363d;
  --counter-bg: #21262d;
  --overlay-bg: #0d1117cc;
  --green-0: #161b22;
  --green-1: #0e4429;
  --green-2: #006d32;
  --green-3: #26a641;
  --green-4: #39d353
}
html {
  opacity: 0;
}
body {
  --page-bg: var(--configured-page-bg, #fff);
  --accent: var(--configured-accent, #0969da);
  background: var(--page-bg);
  min-width: 320px;
  color: var(--fg);
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Noto Sans, Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5
}
body.is-prayer-mode {
  filter: grayscale()
}
a {
  color: var(--accent);
  text-decoration: none
}
a:hover {
  text-decoration: underline
}
svg {
  fill: currentColor;
  display: block
}
html.selected {
  opacity: 1;
}
.github-header {
  background: var(--canvas-subtle)
}
.header-inner {
  align-items: center;
  gap: 12px;
  height: 64px;
  padding: 16px;
  display: flex
}
.icon-button {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  width: 32px;
  height: 32px;
  color: var(--fg-muted);
  font: inherit;
  cursor: default;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  padding: 0;
  font-size: 14px;
  display: inline-flex;
  position: relative
}
.icon-button svg, .icon-button .github-ico, .icon-button .github-ico, .icon-button > .github-ico, .icon-button > .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px
}
.wide-icon {
  gap: 6px;
  width: 44px
}
.chevron {
  border-top: 4px solid var(--fg-muted);
  border-left: 4px solid #0000;
  border-right: 4px solid #0000;
  width: 0;
  height: 0
}
.octo-mark {
  flex: none;
  width: 32px;
  height: 32px
}
.octo-mark img {
  object-fit: cover;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: block
}
.site-title {
  color: var(--fg);
  white-space: nowrap;
  font-size: 14px;
  font-weight: 600
}
.site-title:hover {
  color: var(--fg);
  text-decoration: none
}
.header-tools {
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin-left: auto;
  display: flex
}
.search-box {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  width: 32px;
  height: 32px;
  color: var(--fg-muted);
  cursor: pointer;
  border-radius: 6px;
  order: 1;
  justify-content: center;
  align-items: center;
  margin-left: 0;
  padding: 0;
  display: flex
}
.search-box:hover {
  color: var(--fg-muted);
  text-decoration: none
}
.weather-widget {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  height: 32px;
  color: var(--fg-muted);
  white-space: nowrap;
  border-radius: 6px;
  order: 3;
  align-items: center;
  gap: 5px;
  padding: 0 8px;
  font-size: 12px;
  display: inline-flex
}
.weather-widget .github-ico, .weather-widget .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--accent)
}
.weather-widget strong {
  color: var(--fg);
  font-variant-numeric: tabular-nums;
  font-size: 12px;
  font-weight: 600
}
.header-clock {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  height: 32px;
  color: var(--fg);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  border-radius: 6px;
  order: 4;
  align-items: center;
  padding: 0 8px;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex
}
.search-open {
  overflow: hidden
}
.search-overlay {
  z-index: 60;
  background: var(--overlay-bg);
  -webkit-backdrop-filter: blur(1px);
  backdrop-filter: blur(1px);
  padding: 72px 16px 16px;
  position: fixed;
  inset: 0
}
.search-dialog {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 12px;
  width: min(640px, 100%);
  margin: 0 auto;
  overflow: hidden;
  box-shadow: 0 16px 48px #1f232833
}
.search-dialog-form {
  border-bottom: 1px solid var(--border);
  grid-template-columns: 16px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 54px;
  padding: 0 12px;
  display: grid
}
.search-dialog-form svg, .search-dialog-form .github-ico, .search-dialog-form .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--fg-muted)
}
.search-dialog-form input {
  width: 100%;
  color: var(--fg);
  font: inherit;
  border: 0;
  outline: 0
}
.search-dialog-form button {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  height: 28px;
  color: var(--fg-muted);
  font: inherit;
  border-radius: 6px;
  padding: 0 8px;
  font-size: 12px
}
.search-status {
  border-bottom: 1px solid var(--border-muted);
  color: var(--fg-muted);
  padding: 10px 12px;
  font-size: 12px
}
.search-results {
  max-height: min(56vh, 520px);
  overflow-y: auto
}
.search-result-item {
  border-bottom: 1px solid var(--border-muted);
  gap: 4px;
  padding: 12px;
  display: grid
}
.search-result-item:last-child {
  border-bottom: 0
}
.search-result-item:hover {
  background: var(--canvas-subtle);
  text-decoration: none
}
.search-result-title {
  color: var(--accent);
  font-size: 14px;
  font-weight: 600
}
.search-result-desc {
  color: var(--fg-muted);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: 12px;
  display: -webkit-box;
  overflow: hidden
}
.search-box svg, .search-box .github-ico, .search-box .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px
}
.search-box kbd {
  border: 1px solid var(--fg-subtle);
  min-width: 18px;
  height: 20px;
  color: var(--fg-muted);
  font: inherit;
  background: 0 0;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  line-height: 1;
  display: inline-flex
}
.header-actions {
  order: 5;
  align-items: center;
  gap: 8px;
  display: flex
}
.theme-toggle {
  cursor: pointer
}
.theme-toggle:hover {
  color: var(--fg)
}
.publish-menu {
  position: relative
}
.publish-menu-list {
  z-index: 50;
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  width: 136px;
  padding: 6px 0;
  display: grid;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  box-shadow: 0 8px 24px #1f23281f
}
.publish-menu-list[hidden] {
  display: none
}
.publish-menu-list a {
  min-height: 32px;
  color: var(--fg);
  white-space: nowrap;
  align-items: center;
  padding: 6px 12px;
  display: flex
}
.publish-menu-list a:hover, .publish-menu-list a:focus-visible {
  background: var(--canvas-subtle);
  outline: none;
  text-decoration: none
}
.user-menu {
  position: relative
}
.header-avatar {
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  padding: 0;
  display: block;
  position: relative
}
.header-avatar[hidden], .login-link[hidden], .user-menu-list[hidden] {
  display: none
}
.header-avatar img {
  border: 1px solid var(--border);
  object-fit: cover;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: block
}
.login-link {
  cursor: pointer
}
.login-link:hover {
  color: var(--fg);
  text-decoration: none
}
.login-link .github-ico, .login-link .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px
}
.user-menu-list {
  z-index: 50;
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  width: 112px;
  padding: 6px 0;
  display: grid;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  box-shadow: 0 8px 24px #1f23281f
}
.user-menu-list a {
  min-height: 32px;
  color: var(--fg);
  white-space: nowrap;
  align-items: center;
  padding: 6px 12px;
  display: flex
}
.user-menu-list a:hover, .user-menu-list a:focus-visible {
  background: var(--canvas-subtle);
  outline: none;
  text-decoration: none
}
.notification-dot {
  border: 2px solid var(--canvas-subtle);
  background: #1f883d;
  border-radius: 50%;
  width: 10px;
  height: 10px;
  position: absolute;
  top: -3px;
  right: -3px
}
.notification-dot[hidden] {
  display: none
}
.notification-link {
  cursor: pointer
}
.notification-link:hover {
  color: var(--fg);
  text-decoration: none
}
.notification-link .github-ico, .notification-link .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px
}
.profile-tabs {
  border-bottom: 1px solid var(--border);
  background: var(--canvas-subtle);
  align-items: center;
  gap: 8px;
  height: 48px;
  padding: 0 16px;
  display: flex;
  overflow-x: auto;
  overflow-y: hidden
}
.profile-tabs a {
  min-width: max-content;
  color: var(--fg);
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  font-size: 14px;
  font-weight: 400;
  display: inline-flex;
  position: relative
}
.profile-tabs a:hover {
  text-decoration: none
}
.profile-tabs .is-active {
  font-weight: 600
}

.site-announcement {
  border-bottom: 1px solid var(--border);
  background: color-mix(in srgb, var(--accent) 10%, var(--canvas));
  width: 100%
}
.site-announcement-inner {
  max-width: 1280px;
  min-height: 42px;
  color: var(--fg);
  align-items: center;
  gap: 10px;
  margin: 0 auto;
  padding: 10px 24px;
  font-size: 13px;
  display: flex
}
.site-announcement .github-ico, .site-announcement .github-ico {
  color: var(--accent);
  flex: none;
  font-size: 16px
}
.site-announcement p {
  white-space: pre-wrap;
  margin: 0
}
.tab-icon {
  width: 16px;
  height: 16px;
  color: var(--fg-muted);
  flex: none;
  font-size: 16px;
  line-height: 1
}
.counter {
  background: var(--counter-bg);
  min-width: 20px;
  height: 20px;
  color: var(--fg);
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: 0 6px;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex
}
.github-shell {
  grid-template-columns: 296px minmax(0, 1fr);
  gap: 24px;
  max-width: 1280px;
  margin: 0 auto;
  padding: 32px 24px 48px;
  display: grid
}
.github-shell-full {
  grid-template-columns: minmax(0, 1fr)
}
.profile-sidebar {
  min-width: 0
}
.profile-sidebar.is-hidden {
  display: none
}
.profile-avatar {
  aspect-ratio: 1;
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  object-fit: cover;
  border-radius: 50%;
  width: 296px;
  max-width: 100%;
  display: block
}
.profile-card {
	position: relative;
}
.profile-status {
  border: 1px solid var(--border);
  background: var(--canvas);
  width: 38px;
  height: 38px;
  color: var(--fg-muted);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  margin: -66px 8px 34px auto;
  font-size: 16px;
  line-height: 1;
  display: flex;
  position: absolute;
  box-shadow: 0 1px 2px #1f23280f;
right: 0;
}
.profile-status:before, .profile-status:after {
  z-index: 3;
  opacity: 0;
  pointer-events: none;
  transition: opacity .12s, transform .12s;
  position: absolute;
  top: 50%;
  left: calc(100% + 8px);
  transform: translateY(-50%)translate(-4px)
}
.profile-status:before {
  border-bottom: 1px solid var(--border);
  border-left: 1px solid var(--border);
  background: var(--canvas);
  content: "";
  width: 8px;
  height: 8px;
  margin-left: -12px;
  transform: translateY(-50%)translate(-4px)rotate(45deg)
}
.profile-status:after {
  border: 1px solid var(--border);
  background: var(--canvas);
  color: var(--fg);
  content: attr(data-status-text);
  white-space: nowrap;
  border-radius: 6px;
  padding: 6px 8px;
  font-size: 12px;
  line-height: 1.35;
  box-shadow: 0 8px 24px #1f23281f
}
.profile-status:hover:before, .profile-status:hover:after, .profile-status:focus-visible:before, .profile-status:focus-visible:after {
  opacity: 1;
  transform: translateY(-50%)translate(0)
}
.profile-status:hover:before, .profile-status:focus-visible:before {
  transform: translateY(-50%)translate(0)rotate(45deg)
}
.profile-name {
  color: var(--fg);
  margin: 0;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4;
  margin-top:16px;
}
.profile-username {
  color: var(--fg-muted);
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4
}
.profile-button {
  border: 1px solid var(--border);
  background: var(--button-bg);
  width: 100%;
  height: 32px;
  color: var(--fg);
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  margin-top: 16px;
  font-size: 14px;
  font-weight: 600;
  display: flex
}
.profile-button:hover {
  background: var(--button-hover);
  text-decoration: none
}
.profile-meta {
  gap: 6px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
  display: grid
}
.profile-meta li {
  min-width: 0;
  color: var(--fg);
  align-items: center;
  gap: 8px;
  font-size: 14px;
  display: flex
}
.profile-meta a, .profile-meta span:last-child {
  min-width: 0;
  color: var(--fg);
  overflow-wrap: anywhere
}
.profile-meta .profile-stats-row {
  color: var(--fg-muted);
  flex-wrap: wrap;
  gap: 4px;
  padding-top: 2px
}
.profile-meta .profile-stats-row a, .profile-meta .profile-stats-row > span {
  color: var(--fg-muted);
  align-items: baseline;
  gap: 3px;
  display: inline-flex
}
.profile-meta .profile-stats-row a:hover {
  color: var(--accent);
  text-decoration: none
}
.profile-meta .profile-stats-row .profile-stat-count {
  color: var(--fg);
  font-weight: 600
}
.profile-meta .profile-stats-row .profile-stat-separator {
  color: var(--fg-muted)
}
.sidebar-wechat {
  border-top: 1px solid var(--border);
  text-align: center;
  margin-top: 16px;
  padding-top: 16px
}
.sidebar-wechat img {
  border: 1px solid var(--border);
  border-radius: 6px;
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: block
}
@keyframes love-heart-beat {
  0%, to {
    transform: scale(1)
  }
  14% {
    transform: scale(1.16)
  }
  28% {
    transform: scale(1)
  }
  42% {
    transform: scale(1.09)
  }
}
.sidebar-tags, .sidebar-categories {
  border-top: 1px solid var(--border);
  margin-top: 16px;
  padding-top: 16px
}
.sidebar-tags-heading {
  color: var(--fg);
  align-items: center;
  gap: 6px;
  font-size: 14px;
  display: flex
}
.sidebar-tags-heading .github-ico, .sidebar-tags-heading .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--fg-muted)
}
.sidebar-tag-sphere {
  aspect-ratio: 1;
  width: 100%;
  margin-top: 12px;
  position: relative;
  overflow: hidden
}
.sidebar-tag-cloud {
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0
}
.sidebar-tag-cloud a {
  max-width: 62%;
  min-height: 22px;
  color: var(--accent);
  text-overflow: ellipsis;
  white-space: nowrap;
  border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border));
  background: color-mix(in srgb, var(--accent) 7%, var(--canvas));
  pointer-events: auto;
  border-radius: 999px;
  align-items: center;
  padding: 2px 7px;
  font-size: 12px;
  line-height: 1.35;
  transition: opacity .12s, background .12s, color .12s;
  display: inline-flex;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden
}
.sidebar-tag-cloud a:hover {
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 14%, var(--canvas));
  text-decoration: none
}
.sidebar-tag-cloud--float, .sidebar-tag-cloud--wave, .sidebar-tag-cloud--shuffle {
  flex-wrap: wrap;
  place-content: center;
  gap: 7px 6px;
  padding: 8px;
  display: flex
}
.sidebar-tag-cloud--float a, .sidebar-tag-cloud--wave a, .sidebar-tag-cloud--shuffle a {
  max-width: calc(50% - 6px);
  position: relative;
  top: auto;
  left: auto
}
.sidebar-tag-cloud--float a {
  animation: sidebar-tag-float 4.8s ease-in-out var(--tag-delay) infinite alternate
}
.sidebar-tag-cloud--wave a {
  animation: sidebar-tag-wave 3.6s ease-in-out var(--tag-delay) infinite
}
.sidebar-tag-cloud--shuffle a {
  transition: opacity .18s, transform .18s
}
.sidebar-tag-cloud--shuffle.is-shuffling a {
  opacity: 0;
  transform: translateY(5px)
}
.sidebar-tag-cloud--marquee {
  animation: 42s linear infinite sidebar-tag-marquee
}
.sidebar-tag-cloud--marquee a {
  animation: 42s linear infinite reverse sidebar-tag-marquee-label;
  transform: translate(-50%, -50%)
}
@keyframes sidebar-tag-float {
  0% {
    transform: translate(-2px, -3px)
  }
  to {
    transform: translate(2px, 3px)
  }
}
@keyframes sidebar-tag-wave {
  0%, to {
    transform: translateY(0)
  }
  50% {
    transform: translateY(-5px)
  }
}
@keyframes sidebar-tag-marquee {
  to {
    transform: rotate(360deg)
  }
}
@keyframes sidebar-tag-marquee-label {
  to {
    transform: translate(-50%, -50%)rotate(-360deg)
  }
}
@media (prefers-reduced-motion:reduce) {
}
.sidebar-tags-empty {
  color: var(--fg-muted);
  margin: 12px 0 0;
  font-size: 12px
}
.sidebar-category-list {
  flex-wrap: wrap;
  gap: 6px;
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
  display: flex
}
.sidebar-category-list li {
  flex: none;
  max-width: 100%
}
.sidebar-category-list a {
  min-width: 0;
  max-width: 100%;
  min-height: 26px;
  color: var(--accent);
  border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border));
  background: color-mix(in srgb, var(--accent) 7%, var(--canvas));
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: 3px 9px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex
}
.sidebar-category-list a:hover {
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 14%, var(--canvas));
  text-decoration: none
}
.sidebar-categories-heading .github-ico, .sidebar-categories-heading .github-ico {
  color: var(--accent)
}
.sidebar-category-list span {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden
}
.meta-icon {
  width: 16px;
  height: 16px;
  color: var(--fg-muted);
  flex: none
}
.content-column {
  min-width: 0
}
.section-heading {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin: 0 0 8px;
  display: flex
}
.section-heading h2 {
  color: var(--fg);
  margin: 0;
  font-size: 16px;
  font-weight: 400
}
.section-heading a {
  color: var(--accent);
  font-size: 12px;
  font-weight: 600
}
.repo-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid
}
.repo-card {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  flex-direction: column;
  min-width: 0;
  min-height: 114px;
  padding: 16px;
  display: flex
}
.repo-card-header {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
  display: flex
}
.repo-name {
  min-width: 0;
  margin: 0;
  font-size: 14px;
  line-height: 1.35
}
.repo-name svg, .repo-name .github-ico, .repo-name .github-ico {
  display: none
}
.repo-name a {
  color: var(--accent);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 700;
  display: block;
  overflow: hidden
}
.repo-visibility {
  border: 1px solid var(--border);
  min-width: 0;
  max-width: 45%;
  color: var(--fg-muted);
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 999px;
  flex: none;
  padding: 0 7px;
  font-size: 12px;
  font-weight: 500;
  line-height: 18px;
  overflow: hidden
}
.repo-visibility a {
  color: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  overflow: hidden
}
.repo-desc {
  min-height: 36px;
  color: var(--fg-muted);
  overflow-wrap: anywhere;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 8px 0 16px;
  font-size: 12px;
  font-weight: 400;
  display: -webkit-box;
  overflow: hidden
}
.repo-meta {
  color: var(--fg-muted);
  align-items: center;
  gap: 4px;
  margin-top: auto;
  font-size: 12px;
  font-weight: 400;
  display: flex
}
.repo-meta a {
  color: var(--fg-muted)
}
.repo-meta > span:not(.language-dot) {
  overflow-wrap: anywhere;
  min-width: 0
}
.language-dot {
  background: #1f883d;
  border: 1px solid #1f232826;
  border-radius: 50%;
  flex: none;
  width: 12px;
  height: 12px
}
.language-dot.csharp {
  background: #178600
}
.language-dot.javascript {
  background: #f1e05a
}
.language-dot.java {
  background: #b07219
}
.repositories-page {
  min-width: 0
}
.repositories-toolbar {
  border-bottom: 1px solid var(--border);
  align-items: center;
  gap: 8px;
  padding-bottom: 16px;
  display: flex
}
.repository-search {
  border: 1px solid var(--border);
  background: var(--canvas);
  width: min(100%, 520px);
  height: 32px;
  color: var(--fg-muted);
  font: inherit;
  text-align: left;
  cursor: pointer;
  border-radius: 6px;
  align-items: center;
  padding: 5px 12px;
  font-size: 14px;
  display: flex
}
.repository-filters {
  flex: none;
  align-items: center;
  gap: 8px;
  display: flex
}
.repository-filter-button {
  border: 1px solid var(--border);
  height: 32px;
  color: var(--fg);
  cursor: default;
  font: inherit;
  background: 0 0;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  gap: 6px;
  padding: 0 12px;
  font-size: 14px;
  font-weight: 500;
  display: inline-flex
}
.repository-filter-button:hover, .repository-filter-button[aria-expanded=true] {
  color: var(--accent)
}
.repository-filter-button .chevron {
  border-top-color: var(--fg-muted)
}
.repository-filter-menu {
  z-index: 30;
  border: 1px solid var(--border);
  background: var(--button-bg);
  border-radius: 6px;
  min-width: 156px;
  padding: 4px;
  position: fixed;
  box-shadow: 0 8px 24px #1f23281f
}
.repository-filter-option {
  width: 100%;
  color: var(--fg);
  cursor: pointer;
  font: inherit;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: 0 0;
  border: 0;
  border-radius: 4px;
  padding: 6px 8px;
  font-size: 12px;
  display: block;
  overflow: hidden
}
.repository-filter-option:hover, .repository-filter-option.is-active {
  background: var(--button-hover);
  color: var(--accent)
}
.repository-list {
  margin: 0;
  padding: 0;
  list-style: none
}
.pagearchives{margin-bottom:20px}
.repository-list-item {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  min-height: 112px;
  padding: 24px 0;
  display: flex
}
.repository-list-item--cover {
  border: 1px solid var(--border);
  isolation: isolate;
  border-radius: 8px;
  min-height: 172px;
  margin-top: 12px;
  padding: 24px;
  position: relative;
  overflow: hidden
}
.repository-list-item--cover:before, .repository-list-item--cover:after {
  z-index: -1;
  content: "";
  position: absolute;
  inset: 0
}
.repository-list-item--cover:before {
  background-image: var(--repository-cover);
  filter: saturate(.82);
  background-position: 50%;
  background-size: cover;
  transition: transform .28s;
  transform: scale(1.01)
}
.repository-list-item--cover:after {
  background: linear-gradient(105deg, #0d1117f2 0%, #0d1117d9 45%, #0d11178f 100%), linear-gradient(#0d111719, #0d1117a6)
}
.repository-list-item--cover:hover:before {
  transform: scale(1.05)
}
.repository-list-item--cover .repository-list-title a {
  color: #fff
}
.repository-list-item--cover .repository-list-title a:hover {
  text-decoration: underline
}
.repository-list-item--cover .repository-list-desc, .repository-list-item--cover .repository-list-meta, .repository-list-item--cover .repository-list-meta a, .repository-list-item--cover .repository-engagement, .repository-list-item--cover .repository-engagement-metric, .repository-list-item--cover .repository-engagement-value, .repository-list-item--cover .repository-engagement-metric .github-ico, .repository-list-item--cover .repository-action-button, .repository-list-item--cover .repository-action-button .github-ico, .repository-action-button .github-ico {
  color: #fff
}
.repository-list-item--cover .repository-action-button span {
  color: #fff
}
.repository-list-item--cover .repository-title-tag {
  color: #fff;
  background: #0d111738;
  border-color: #ffffff52
}
.repository-list-item--cover .repository-title-tag:hover {
  color: #fff;
  border-color: #ffffffb8
}
.repository-list-item--cover .repository-action-group {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: #0d11176b;
  border-color: #ffffff3d
}
.repository-list-item--cover .repository-action-button + .repository-action-button {
  border-left-color: #ffffff3d
}
.repository-list-item--cover .repository-action-button:hover {
  background: #ffffff24
}
.repository-list-item[hidden] {
  display: none
}
.repository-list-copy {
  flex: auto;
  min-width: 0
}
.repository-list-heading {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
  display: flex
}
.repository-list-title {
  min-width: 0;
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5
}
.repository-list-title a {
  color: var(--accent);
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  overflow: hidden
}
.repository-title-tags {
  align-items: center;
  gap: 6px;
  min-width: 0;
  display: inline-flex;
  overflow: hidden
}
.repository-title-tag {
  border: 1px solid var(--border);
  max-width: 112px;
  height: 20px;
  color: var(--fg-muted);
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 999px;
  align-items: center;
  padding: 0 7px;
  font-size: 12px;
  font-weight: 500;
  line-height: 18px;
  display: inline-flex;
  overflow: hidden
}
.repository-title-tag:hover {
  border-color: var(--accent);
  color: var(--accent);
  text-decoration: none
}
.repository-list-desc {
  max-width: 560px;
  color: var(--fg-muted);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 4px 0 12px;
  font-size: 14px;
  display: -webkit-box;
  overflow: hidden
}
.repository-list-meta {
  color: var(--fg-muted);
  align-items: center;
  gap: 8px;
  font-size: 12px;
  display: flex
}
.repository-list-meta a {
  color: var(--fg-muted)
}
.repository-side {
  flex-direction: column;
  flex: 0 0 168px;
  justify-content: space-between;
  align-self: stretch;
  align-items: flex-end;
  gap: 16px;
  padding-top: 2px;
  display: flex
}
.repository-action-group {
  box-sizing: border-box;
  border: 1px solid var(--border);
  background: var(--button-bg);
  white-space: nowrap;
  border-radius: 6px;
  align-items: center;
  width: 160px;
  height: 28px;
  display: inline-flex;
  overflow: hidden
}
.repository-action-button {
  min-width: 54px;
  height: 100%;
  color: var(--fg);
  font: inherit;
  background: 0 0;
  border: 0;
  flex: 1 1 0;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 0 8px;
  font-size: 12px;
  font-weight: 500;
  line-height: 20px;
  display: inline-flex
}
.repository-action-button:hover {
  background: var(--button-hover);
  text-decoration: none
}
.post-upvote {
  cursor: pointer
}
.post-upvote.is-upvoted, .post-upvote.is-upvoted .github-ico, .post-upvote.is-upvoted .github-ico {
  color: var(--accent)
}
.post-upvote:disabled {
  cursor: wait;
  opacity: .65
}
.repository-action-button + .repository-action-button {
  border-left: 1px solid var(--border)
}
.repository-action-button .github-ico, .repository-action-button .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--fg-muted)
}
.repository-engagement {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  min-width: 160px;
  display: grid
}
.repository-engagement-metric {
  min-width: 0;
  color: var(--fg-muted);
  align-items: center;
  gap: 4px;
  font-size: 12px;
  line-height: 16px;
  display: flex
}
.repository-engagement-metric .github-ico, .repository-engagement-metric .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px
}
.repository-engagement-value {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden
}
.contrib-layout {
  grid-template-columns: minmax(0, 1fr) 124px;
  gap: 32px;
  margin-top: 40px;
  display: grid;
  position: relative
}
.contribution-area {
  min-width: 0
}
.section-heading.compact {
  margin-bottom: 8px
}
.contribution-source {
  color: var(--fg-muted);
  font-size: 12px;
  font-weight: 400
}
.contribution-panel {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  padding: 8px 12px 12px
}
.contribution-scroll {
  scrollbar-width: thin;
  overflow-x: auto
}
.contribution-months {
  grid-template-columns: repeat(var(--contribution-weeks, 53), 10px);
  width: max-content;
  color: var(--fg);
  column-gap: 3px;
  margin-bottom: 2px;
  margin-left: 34px;
  font-size: 12px;
  font-weight: 400;
  display: grid
}
.contribution-months span {
  white-space: nowrap
}
.contribution-body {
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 8px;
  display: grid
}
.contribution-weekdays {
  color: var(--fg);
  grid-template-rows: repeat(7, 10px);
  gap: 3px;
  font-size: 12px;
  line-height: 10px;
  display: grid
}
.contribution-weekdays span:first-child {
  grid-row: 2
}
.contribution-weekdays span:nth-child(2) {
  grid-row: 4
}
.contribution-weekdays span:nth-child(3) {
  grid-row: 6
}
.contribution-graph {
  grid-auto-flow: column;
  grid-template-columns: repeat(var(--contribution-weeks, 53), 10px);
  grid-template-rows: repeat(7, 10px);
  justify-content: start;
  gap: 3px;
  width: max-content;
  display: grid
}
.day {
  background: var(--green-0);
  border: 0;
  border-radius: 2px;
  width: 10px;
  height: 10px;
  padding: 0;
  display: block
}
.contribution-graph .day:not(:disabled) {
  cursor: pointer
}
.contribution-graph .day.is-selected {
  outline: 2px solid var(--fg);
  outline-offset: 1px
}
.contribution-graph .day:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 1px
}
.level-1 {
  background: var(--green-1)
}
.level-2 {
  background: var(--green-2)
}
.level-3 {
  background: var(--green-3)
}
.level-4 {
  background: var(--green-4)
}
.contribution-graph .day.is-outside {
  visibility: hidden
}
.contribution-footer {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-top: 10px;
  padding-left: 34px;
  display: flex
}
.contribution-footer a, .contribution-legend {
  color: var(--fg-muted);
  font-size: 12px
}
.contribution-legend {
  align-items: center;
  gap: 4px;
  display: flex
}
.contribution-legend .day {
  width: 10px;
  height: 10px
}
.year-nav {
  align-content: start;
  gap: 8px;
  width: 124px;
  padding-top: 0;
  display: grid;
  position: absolute;
  top: 0;
  right: 0
}
.year-nav button {
  height: 32px;
  color: var(--fg-muted);
  cursor: pointer;
  font: inherit;
  background: 0 0;
  border: 0;
  border-radius: 6px;
  align-items: center;
  padding: 0 16px;
  font-size: 14px;
  font-weight: 500;
  display: flex
}
.year-nav button:hover {
  background: var(--canvas-subtle)
}
.year-nav .is-active {
  background: var(--accent);
  color: #fff
}
.activity-section {
  grid-column: 1;
  min-width: 0
}
.activity-section > h2 {
  margin: 0 0 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25
}
.activity-month {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  display: grid
}
.activity-month h3 {
  margin: 0;
  font-size: 14px;
  font-weight: 700
}
.activity-month span {
  background: var(--border);
  height: 1px
}
.activity-item {
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
  margin-top: 16px;
  display: grid;
  position: relative
}
.activity-item:before {
  background: var(--border);
  content: "";
  width: 2px;
  position: absolute;
  top: -16px;
  bottom: 0;
  left: 16px
}
.activity-icon {
  z-index: 1;
  border: 1px solid var(--border);
  background: var(--canvas);
  width: 32px;
  height: 32px;
  color: var(--fg-muted);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  display: flex;
  position: relative
}
.activity-copy h3 {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 500
}
.activity-copy p {
  color: var(--accent);
  margin: 0;
  font-size: 14px
}
.activity-copy a {
  color: var(--fg-muted);
  font-size: 14px;
  display: inline-block
}
.activity-item time {
  color: var(--fg-muted);
  white-space: nowrap;
  font-size: 12px
}
.activity-group + .activity-group {
  margin-top: 28px
}
.activity-empty {
  color: var(--fg-muted);
  margin: 0;
  padding: 24px 0;
  font-size: 14px
}
.message-page {
  min-width: 0
}
.message-heading {
  justify-content: space-between;
  align-items: end;
  gap: 24px;
  margin-bottom: 16px;
  display: flex
}
.message-eyebrow {
  color: var(--fg-muted);
  text-transform: uppercase;
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 600
}
.message-heading h1 {
  margin: 0;
  font-size: 24px;
  line-height: 1.25
}
.message-count {
  color: var(--fg-muted);
  white-space: nowrap;
  font-size: 13px
}
.message-stage {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  contain: layout paint;
  border-radius: 6px;
  height: 340px;
  position: relative;
  overflow: hidden
}
.message-stage:before, .message-stage:after {
  background: var(--border);
  content: "";
  opacity: .55;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0
}
.message-stage:before {
  top: 33.333%
}
.message-stage:after {
  top: 66.666%
}
.message-stage-status {
  color: var(--fg-muted);
  place-content: center;
  justify-items: center;
  gap: 8px;
  font-size: 14px;
  display: grid;
  position: absolute;
  inset: 0
}
.message-stage-status .github-ico, .message-stage-status .github-ico {
  font-size: 28px
}
.floating-message {
  --message-lane: 0;
  --message-duration: 18s;
  --message-delay: 0s;
  z-index: 1;
  top: calc(15px + var(--message-lane) * 52px);
  max-width: min(460px, 80%);
  height: 40px;
  animation: message-drift var(--message-duration) linear var(--message-delay) 1 both;
  white-space: nowrap;
  will-change: left, transform;
  align-items: center;
  gap: 8px;
  display: flex;
  position: absolute;
  left: 100%
}
.floating-message-avatar {
  border: 1px solid var(--border);
  background: var(--canvas);
  width: 32px;
  height: 32px;
  color: var(--fg-muted);
  border-radius: 50%;
  flex: 0 0 32px;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  font-weight: 600;
  display: flex;
  overflow: hidden
}
.floating-message-avatar img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
.floating-message-body {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  min-width: 0;
  height: 36px;
  padding: 0 10px;
  font-size: 13px;
  display: flex;
  overflow: hidden;
  box-shadow: 0 1px 2px #1f23280f
}
.floating-message-body strong {
  color: var(--fg);
  flex: none;
  font-size: 12px
}
.floating-message-body > span {
  text-overflow: ellipsis;
  overflow: hidden
}
.floating-message-body time {
  color: var(--fg-muted);
  flex: none;
  font-size: 11px
}
.message-stage:hover .floating-message {
  animation-play-state: paused
}
@keyframes message-drift {
  0% {
    left: 100%;
    transform: translate(0)
  }
  to {
    left: 0;
    transform: translate(-100%)
  }
}
.message-intro {
  margin-top: 24px
}
.message-compose {
  border-top: 1px solid var(--border);
  margin-top: 32px;
  padding-top: 24px
}
.message-compose-heading {
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  display: flex
}
.message-compose-heading h2 {
  margin: 0;
  font-size: 16px
}
.message-comments-disabled {
  color: var(--fg-muted);
  font-size: 14px
}
.pagination {
  justify-content: center;
  align-items: center;
  gap: 12px;
  padding: 28px 0 0;
  display: flex
}
.pagination a, .pagination span, .pagination button {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  min-height: 32px;
  padding: 5px 12px
}
.pagination button {
  color: var(--accent);
  cursor: pointer;
  font: inherit
}
.pagination button:disabled {
  color: var(--fg-muted);
  cursor: default;
  opacity: .55
}
.activity-pagination[hidden] {
  display: none
}
article {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  padding: 24px
}
.article-header {
  z-index: 0;
  border-bottom: 1px solid var(--border);
  min-height: 0;
  margin-bottom: 24px;
  padding-bottom: 16px;
  position: relative
}
.article-header--cover {
  background: var(--canvas-subtle);
  isolation: isolate;
  border: 0;
  border-radius: 6px;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 180px;
  padding: 24px;
  display: flex;
  overflow: hidden
}
.article-header--cover:before, .article-header--cover:after {
  z-index: -1;
  content: "";
  position: absolute;
  inset: 0
}
.article-header--cover:before {
  background-image: var(--article-cover);
  filter: saturate(.85);
  background-position: 50%;
  background-size: cover
}
.article-header--cover:after {
  background: linear-gradient(#0d11171a, #0d1117c7)
}
.article-header--cover .article-title, .article-header--cover .article-meta {
  color: #fff
}
.article-header--cover .article-meta {
  color: #ffffffc7
}
.article-header--cover .article-meta a.category {
  color: var(--accent)
}
.article-title {
  margin: 0 0 8px;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.25
}
.article-meta, .post-meta, .post-excerpt {
  color: var(--fg-muted);
  font-size: 14px
}
.article-content {
  max-width: 100%;
  color: var(--fg);
  font-size: 16px;
  line-height: 1.75
}
.article-content img {
  border-radius: 6px;
  max-width: 100%
}
.article-content pre, .article-content code {
  background: var(--canvas-subtle);
  border-radius: 6px;
  font-family: ui-monospace, SFMono-Regular, SF Mono, Consolas, Liberation Mono, Menlo, monospace
}
.article-content pre {
  padding: 16px;
  overflow-x: auto
}
.article-content code {
  padding: .2em .4em;
  font-size: 85%
}
.article-content pre code {
  padding: 0
}
.tag, .category {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  color: var(--accent);
  border-radius: 999px;
  align-items: center;
  margin: 4px 4px 0 0;
  padding: 2px 8px;
  font-size: 12px;
  display: inline-flex
}
.article-tags, .article-categories {
  margin-top: 24px
}
.post-nav {
  border-top: 1px solid var(--border);
  justify-content: space-between;
  gap: 16px;
  margin-top: 24px;
  padding-top: 24px;
  display: flex
}
.music-player {
  z-index: 40;
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  width: min(300px, 100vw - 32px);
  padding: 8px;
  display: grid;
  position: fixed;
  bottom: 16px;
  left: 16px;
  box-shadow: 0 8px 24px #1f232824
}
.music-player--header {
  z-index: auto;
  background: var(--canvas-subtle);
  width: 272px;
  min-width: 0;
  height: 32px;
  box-shadow: none;
  flex: 0 272px;
  order: 2;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
  padding: 3px 6px;
  position: relative;
  bottom: auto;
  left: auto
}
.music-player--header .music-player-cover {
  display: none
}
.music-player--header .music-player-info {
  display: block
}
.music-player--header .music-player-info strong, .music-player--header .music-player-info span {
  display: none
}
.music-player--header .music-player-info .music-player-lyrics {
  color: var(--fg);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  line-height: 24px;
  display: block;
  overflow: hidden
}
.music-player--header .music-player-controls {
  gap: 1px
}
.music-player--header .music-player-controls button {
  width: 24px;
  height: 24px
}
.music-player--header .music-player-controls .github-ico, .music-player-controls .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px
}
.music-player--header .music-player-progress {
  display: none
}
.music-player-cover {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  width: 36px;
  height: 36px;
  color: var(--fg-muted);
  border-radius: 4px;
  place-items: center;
  display: grid;
  overflow: hidden
}
.music-player-cover img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
.music-player-cover .github-ico, .music-player-cover .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px
}
.music-player-info {
  gap: 2px;
  min-width: 0;
  display: grid
}
.music-player-info strong, .music-player-info span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden
}
.music-player-info strong {
  color: var(--fg);
  font-size: 12px;
  font-weight: 600
}
.music-player-info span {
  color: var(--fg-muted);
  font-size: 11px
}
.music-player-controls {
  align-items: center;
  gap: 2px;
  display: inline-flex
}
.music-player-controls button {
  width: 24px;
  height: 24px;
  color: var(--fg-muted);
  cursor: pointer;
  background: 0 0;
  border: 0;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: inline-flex
}
.music-player-controls button:hover:not(:disabled), .music-player-controls button:focus-visible {
  background: var(--button-hover);
  color: var(--fg);
  outline: none
}
.music-player-controls button:disabled {
  cursor: wait;
  opacity: .5
}
.music-player-controls .github-ico, .music-player-controls .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px
}
.music-player-progress {
  width: 100%;
  height: 4px;
  accent-color: var(--accent);
  cursor: pointer;
  grid-column: 1/-1;
  margin: 0
}
.music-player-progress:disabled {
  cursor: default
}
.back-to-top {
  z-index: 30;
  border: 1px solid var(--border);
  background: var(--canvas);
  width: 42px;
  height: 42px;
  color: var(--fg-muted);
  cursor: pointer;
  border-radius: 50%;
  place-items: center;
  padding: 0;
  line-height: 0;
  transition: color .16s, border-color .16s, background .16s, transform .16s;
  display: grid;
  position: fixed;
  top: 66.667vh;
  right: max(24px, 50vw - 720px);
  box-shadow: 0 6px 20px #1f232824
}
.back-to-top[hidden] {
  display: none
}
.back-to-top.page-anchor-action {
  text-decoration: none;
  top: calc(66.667vh + 52px)
}
.back-to-top:hover, .back-to-top:focus-visible {
  border-color: var(--accent);
  background: var(--canvas-subtle);
  color: var(--accent);
  outline: none;
  transform: translateY(-2px)
}
.back-to-top .github-ico, .back-to-top .github-ico {
  font-size: 22px;
  width: 22px;
  height: 22px;
  line-height: 1;
  display: block
}
.back-to-top-icon {
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0
}
.post-side-actions {
  z-index: 20;
  flex-direction: column;
  gap: 10px;
  width: 42px;
  display: flex;
  position: fixed;
  top: 66.667vh;
  right: max(16px, 50vw - 700px);
  transform: none
}
.post-side-action {
  border: 1px solid var(--border);
  background: var(--canvas);
  width: 42px;
  min-width: 42px;
  height: 42px;
  color: var(--fg-muted);
  cursor: pointer;
  font: inherit;
  border-radius: 50%;
  place-items: center;
  padding: 0;
  line-height: 1;
  display: grid;
  box-shadow: 0 4px 12px #1f23281a
}
.post-side-action:hover, .post-side-action:focus-visible {
  border-color: var(--accent);
  background: var(--canvas-subtle);
  color: var(--accent);
  outline: none;
  text-decoration: none;
  transform: translateY(-2px)
}
.post-side-action .github-ico, .post-side-action .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
  display: block
}
.post-back-to-top {
  color: var(--fg);
  transition: opacity .16s
}
.post-back-to-top .github-ico, .post-back-to-top .github-ico {
  filter: drop-shadow(0 0 .35px);
  font-size: 20px;
  width: 20px;
  height: 20px
}
.post-back-to-top:disabled {
  cursor: default;
  opacity: .72
}
.archive-year, .listing-panel {
  margin-top: 16px
}
.post-list, .tag-list, .category-list {
  margin: 0;
  padding: 0;
  list-style: none
}
.taxonomy-list-empty {
  color: var(--fg-muted);
  margin: 16px 0 0
}
.post-item {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  padding: 16px
}
.post-item + .post-item {
  margin-top: 12px
}
.post-title {
  margin: 0 0 6px;
  font-size: 16px
}
.tag-list {
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 12px;
  margin-top: 16px;
  display: grid
}
.tag-list .taxonomy-card {
  border: 1px solid var(--border);
  background: var(--canvas);
  min-height: 96px;
  color: var(--fg);
  border-radius: 6px;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0;
  padding: 18px;
  text-decoration: none;
  transition: border-color .16s, box-shadow .16s, transform .16s;
  display: flex;
  box-shadow: 0 1px 2px #1f23280d
}
.tag-list .taxonomy-card:hover, .tag-list .taxonomy-card:focus-visible {
  border-color: var(--accent);
  color: var(--fg);
  outline: none;
  transform: translateY(-2px);
  box-shadow: 0 8px 18px #1f23281a
}
.taxonomy-card-title {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  overflow: hidden
}
.taxonomy-card-meta {
  color: var(--fg-muted);
  font-size: 12px;
  line-height: 1.4
}
.category-list {
  gap: 0;
  margin-top: 16px;
  display: grid
}
.category-directory-item {
  border-bottom: 1px solid var(--border-muted)
}
.category-directory-item:first-child {
  border-top: 1px solid var(--border-muted)
}
.category-directory-card {
  min-height: 144px;
  color: var(--fg);
  grid-template-columns: 160px minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  padding: 20px 0;
  text-decoration: none;
  display: grid
}
.category-directory-card:hover, .category-directory-card:focus-visible {
  color: var(--fg);
  outline: none
}
.category-directory-card:focus-visible .category-directory-cover, .category-directory-card:hover .category-directory-cover {
  border-color: var(--accent);
  box-shadow: 0 6px 16px #1f23281f
}
.category-directory-cover {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  width: 160px;
  height: 104px;
  color: var(--accent);
  border-radius: 6px;
  place-items: center;
  transition: border-color .16s, box-shadow .16s;
  display: grid;
  overflow: hidden
}
.category-directory-cover img {
  object-fit: cover;
  width: 100%;
  height: 100%
}
.category-directory-cover-fallback {
  background: var(--canvas-subtle);
  place-items: center;
  width: 100%;
  height: 100%;
  font-size: 32px;
  font-weight: 600;
  display: grid
}
.category-directory-content {
  align-content: center;
  gap: 9px;
  min-width: 0;
  display: grid
}
.category-directory-title {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25;
  overflow: hidden
}
.category-directory-description {
  color: var(--fg-muted);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: 14px;
  line-height: 1.6;
  display: -webkit-box;
  overflow: hidden
}
.category-directory-metrics {
  color: var(--fg-subtle);
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  font-size: 13px;
  display: flex
}
.category-directory-metric {
  white-space: nowrap;
  align-items: center;
  gap: 4px;
  display: inline-flex
}
.category-directory-metric .github-ico, .category-directory-metric .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--fg-muted)
}
.links-page, .categories-page {
  gap: 18px;
  display: grid
}
.links-hero {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 16px;
  animation: .28s both links-fade-up;
  display: flex
}
.categories-hero {
  border-bottom: 1px solid var(--border-muted);
}
.links-eyebrow {
  color: var(--fg-muted);
  letter-spacing: .04em;
  text-transform: uppercase;
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 600
}
.links-hero h1 {
  color: var(--fg);
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.25
}
.links-hero p:last-child {
  max-width: 560px;
  color: var(--fg-muted);
  margin: 6px 0 0;
  font-size: 13px
}
.links-count {
  border: 1px solid var(--border);
  min-width: max-content;
  height: 28px;
  color: var(--fg-muted);
  border-radius: 999px;
  align-items: center;
  gap: 4px;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex
}
.links-count span:first-child {
  color: var(--fg);
  font-weight: 600
}
.archive-hero-tools {
  align-items: center;
  gap: 10px;
  display: flex
}
.links-empty {
  border: 1px dashed var(--border);
  background: var(--canvas);
  text-align: center;
  border-radius: 6px;
  align-content: center;
  place-items: center;
  gap: 8px;
  min-height: 220px;
  padding: 32px;
  display: grid
}
.links-empty .github-ico, .links-empty .github-ico {
  font-size: 32px;
  width: 32px;
  height: 32px;
  color: var(--fg-muted)
}
.links-empty h2 {
  color: var(--fg);
  margin: 0;
  font-size: 16px;
  font-weight: 600
}
.links-empty p {
  color: var(--fg-muted);
  margin: 0;
  font-size: 14px
}
.links-groups, .links-group {
  gap: 10px;
  display: grid
}
.link-application {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  gap: 16px;
  padding: 16px;
  display: grid
}
.link-application-heading {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  display: flex
}
.link-application-heading h2 {
  color: var(--fg);
  margin: 0;
  font-size: 16px;
  font-weight: 600
}
.link-application-heading p:last-child {
  max-width: 620px;
  color: var(--fg-muted);
  margin: 6px 0 0;
  font-size: 13px
}
.link-application-trigger, .link-application-form-actions button {
  color: #fff;
  height: 32px;
  font: inherit;
  white-space: nowrap;
  cursor: pointer;
  background: #1f883d;
  border: 1px solid #1b1f2426;
  border-radius: 6px;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 600
}
.link-application-trigger:hover, .link-application-form-actions button:hover {
  background: #1a7f37
}
.link-application-profile {
  border: 1px solid var(--border);
  border-radius: 6px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  display: grid;
  overflow: hidden
}
.link-application-profile div {
  background: var(--canvas-subtle);
  grid-template-columns: 78px minmax(0, 1fr);
  gap: 10px;
  min-width: 0;
  padding: 10px 12px;
  display: grid
}
.link-application-profile div:nth-child(2n) {
  border-left: 1px solid var(--border)
}
.link-application-profile div:nth-child(n+3) {
  border-top: 1px solid var(--border)
}
.link-application-profile dt {
  color: var(--fg-muted);
  font-size: 12px
}
.link-application-profile dd {
  min-width: 0;
  color: var(--fg);
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 12px;
  overflow: hidden
}
.link-application-form {
  border-top: 1px solid var(--border);
  padding-top: 16px
}
.link-application-fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  display: grid
}
.link-application-fields label {
  color: var(--fg);
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  display: grid
}
.link-application-fields input, .link-application-fields textarea {
  border: 1px solid var(--border);
  background: var(--canvas);
  width: 100%;
  min-height: 32px;
  color: var(--fg);
  font: inherit;
  resize: vertical;
  border-radius: 6px;
  outline: none;
  padding: 6px 8px;
  font-size: 13px
}
.link-application-fields input:focus, .link-application-fields textarea:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)
}
.link-application-field-wide {
  grid-column: 1/-1
}
.link-application-form-actions {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  min-height: 32px;
  margin-top: 12px;
  display: flex
}
.link-application-form-actions p {
  color: var(--fg-muted);
  margin: 0;
  font-size: 12px
}
.link-application-form-actions p.is-error {
  color: #cf222e
}
.link-application-form-actions p.is-success {
  color: #1a7f37;
  background: #dafbe1;
  border: 1px solid #1a7f37;
  border-radius: 6px;
  padding: 7px 10px;
  font-weight: 600
}
.links-group + .links-group {
  padding-top: 12px
}
.links-group-heading {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding-bottom: 8px;
  display: flex
}
.links-group-heading h2 {
  color: var(--fg);
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5
}
.links-group-heading span {
  color: var(--fg-muted);
  font-size: 12px
}
.links-grid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 8px;
  display: grid
}
.link-card {
  border: 1px solid var(--border);
  background: var(--canvas);
  min-width: 0;
  min-height: 64px;
  color: var(--fg);
  border-radius: 6px;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 10px;
  padding: 10px;
  transition: border-color .16s, box-shadow .16s, transform .16s, background-color .16s;
  animation: .28s both links-fade-up;
  display: grid
}
.link-card:nth-child(2n) {
  animation-delay: 30ms
}
.link-card:nth-child(3n) {
  animation-delay: 60ms
}
.link-card:nth-child(4n) {
  animation-delay: 90ms
}
.link-card:hover {
  border-color: var(--accent);
  background: linear-gradient(180deg, var(--canvas) 0%, var(--canvas-subtle) 100%);
  text-decoration: none;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px #1f232814
}
.link-logo {
  --link-logo-size: 36px;
  width: var(--link-logo-size);
  height: var(--link-logo-size);
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  color: var(--fg-muted);
  border-radius: 50%;
  flex: none;
  justify-content: center;
  align-items: center;
  transition: border-color .16s, transform .16s;
  display: inline-flex;
  position: relative;
  overflow: hidden
}
.link-logo .github-ico, .link-logo .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--fg-muted)
}
.link-logo img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform .16s;
  position: absolute;
  inset: 0
}
.link-logo img.is-invalid {
  display: none
}
.link-card:hover .link-logo {
  border-color: #0969da59;
  transform: scale(1.04)
}
.link-card:hover .link-logo img {
  transform: scale(1.08)
}
.link-card-body {
  align-content: start;
  gap: 2px;
  min-width: 0;
  display: grid
}
.link-card-title {
  min-width: 0;
  color: var(--accent);
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  display: flex
}
.link-card-title span {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  overflow: hidden
}
.link-card-title .github-ico, .link-card-title .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--fg-muted);
  opacity: 0;
  flex: none;
  transition: opacity .16s, transform .16s;
  transform: translate(-4px)
}
.link-card:hover .link-card-title .github-ico, .link-card-title .github-ico {
  opacity: 1;
  transform: translate(0)
}
.link-card-desc {
  color: var(--fg-muted);
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  font-size: 12px;
  display: -webkit-box;
  overflow: hidden
}
.link-card-url {
  color: var(--fg-subtle);
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 4px;
  font-size: 12px;
  display: none;
  overflow: hidden
}
.moments-page {
  gap: 16px;
  display: grid
}
.moments-hero {
  margin-bottom: 2px
}
.moment-tags {
  flex-wrap: wrap;
  gap: 8px;
  display: flex
}
.moments-list {
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid
}
.moment-card {
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 12px;
  display: grid
}
.moment-avatar {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  overflow: hidden
}
.moment-avatar img, .moment-detail-author img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block
}
.moment-body {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  min-width: 0;
  padding: 14px
}
.moment-header {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
  display: flex
}
.moment-header > div {
  gap: 2px;
  min-width: 0;
  display: grid
}
.moment-author {
  color: var(--fg);
  font-weight: 600
}
.moment-header time {
  color: var(--fg-muted);
  font-size: 12px
}
.moment-permalink {
  border: 1px solid var(--border);
  width: 28px;
  height: 28px;
  color: var(--fg-muted);
  background: var(--button-bg);
  border-radius: 6px;
  flex: none;
  justify-content: center;
  align-items: center;
  display: inline-flex
}
.moment-permalink:hover {
  color: var(--accent);
  text-decoration: none
}
.moment-content {
  font-size: 14px;
  line-height: 1.65
}
.moment-content > :first-child {
  margin-top: 0
}
.moment-content > :last-child {
  margin-bottom: 0
}
.moment-media-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 260px));
  justify-content: start;
  gap: 8px;
  margin-top: 12px;
  display: grid
}
.moment-media-grid img, .moment-media-grid video {
  object-fit: contain;
  border: 1px solid var(--border-muted);
  background: var(--canvas-subtle);
  border-radius: 6px;
  width: 100%;
  height: auto
}
.moment-media-grid img[data-moment-image] {
  cursor: zoom-in
}
.moments-page .moment-media-grid:has(img[data-moment-image]) {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: min(100%, 528px)
}
.moments-page .moment-media-grid img[data-moment-image] {
  aspect-ratio: 1;
  object-fit: cover;
  width: 100%;
  height: auto
}
.image-preview {
  z-index: 70;
  background: #0d1117db;
  place-items: center;
  padding: 24px;
  display: grid;
  position: fixed;
  inset: 0
}
.image-preview img {
  object-fit: contain;
  max-width: min(92vw, 1440px);
  max-height: 88vh;
  display: block
}
.image-preview-close {
  color: #fff;
  cursor: pointer;
  background: #0d1117a6;
  border: 1px solid #ffffff59;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  display: inline-flex;
  position: absolute;
  top: 16px;
  right: 16px
}
.image-preview-close .github-ico, .image-preview-close .github-ico {
  font-size: 20px;
  width: 20px;
  height: 20px
}
.moment-media-grid audio {
  grid-column: 1/-1;
  width: 100%
}
.moment-media-link {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  min-width: 0;
  min-height: 44px;
  color: var(--fg);
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  padding: 10px;
  display: flex
}
.moment-media-link span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden
}
.moment-footer {
  color: var(--fg-muted);
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  font-size: 12px;
  display: flex
}
.moment-footer > span, .moment-footer > a, .moment-upvote {
  color: var(--fg-muted);
  align-items: center;
  gap: 4px;
  display: inline-flex
}
.moment-upvote {
  font: inherit;
  cursor: pointer;
  background: 0 0;
  border: 0;
  padding: 0
}
.moment-upvote:hover:not(:disabled), .moment-upvote.is-upvoted {
  color: var(--accent)
}
.moment-upvote:disabled {
  cursor: wait;
  opacity: .65
}
.moment-footer .github-ico, .moment-footer .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px
}
.moment-tag-list {
  gap: 6px
}
.moment-tag-list a {
  color: var(--accent)
}
.moment-detail {
  margin-bottom: 16px
}
.moment-detail-header {
  gap: 16px;
  display: grid
}
.moment-back-link {
  width: max-content;
  color: var(--fg-muted);
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex
}
.moment-detail-author {
  align-items: center;
  gap: 12px;
  display: flex
}
.moment-detail-author img {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  border-radius: 50%;
  flex: none;
  width: 48px;
  height: 48px
}
.moment-media-grid-detail {
  margin-top: 16px
}
.moment-media-grid-detail img, .moment-media-grid-detail video {
  object-fit: contain;
  max-height: 520px
}
.moment-detail-footer {
  border-top: 1px solid var(--border);
  padding-top: 16px
}
.photos-page {
  gap: 16px;
  display: grid
}
.photos-hero {
  margin-bottom: 2px
}
.photo-albums {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 48px 40px;
  display: grid
}
.photo-album {
  min-width: 0;
  color: var(--fg);
  gap: 12px;
  display: grid
}
.photo-album:hover, .photo-album:focus-visible {
  color: var(--fg);
  text-decoration: none
}
.photo-album:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 4px
}
.photo-album-cover {
  aspect-ratio: 1.2;
  background: var(--canvas-subtle);
  border-radius: 6px;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px;
  display: grid;
  overflow: hidden
}
.photo-album-cover img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform .18s;
  display: block
}
.photo-album-cover img:first-child {
  grid-column: span 2
}
.photo-album-cover img:nth-child(3):last-child {
  grid-column: span 3
}
.photo-album-cover img:nth-child(4) {
  grid-column: span 2
}
.photo-album-cover img:only-child {
  grid-area: 1/1/-1/-1
}
.photo-album-cover img:first-child:nth-last-child(2) {
  grid-area: span 2/span 2
}
.photo-album:hover .photo-album-cover img, .photo-album:focus-visible .photo-album-cover img {
  transform: scale(1.025)
}
.photo-album-meta {
  align-items: baseline;
  gap: 8px;
  min-width: 0;
  display: flex
}
.photo-album-meta strong {
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 18px;
  line-height: 1.35;
  overflow: hidden
}
.photo-album-meta > span:last-child, .photo-album-kind {
  color: var(--fg-muted);
  flex: none;
  font-size: 13px
}
.photo-album-kind {
  background: var(--canvas-subtle);
  border-radius: 4px;
  padding: 2px 5px
}
.photo-gallery-toolbar {
  border-bottom: 1px solid var(--border);
  color: var(--fg-muted);
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding-bottom: 2px;
  font-size: 13px;
  display: flex
}
.photo-gallery-back {
  color: var(--fg);
  align-items: center;
  gap: 6px;
  font-weight: 600;
  display: inline-flex
}
.photo-gallery-back .github-ico, .photo-gallery-back .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px
}
.photos-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: clamp(156px, 15vw, 236px);
  gap: 8px;
  display: grid
}
.photo-card {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  min-width: 0;
  color: var(--fg);
  border-radius: 6px;
  display: block;
  position: relative;
  overflow: hidden
}
.photo-card:nth-child(7n+1), .photo-card:nth-child(7n+5) {
  grid-row: span 2
}
.photo-card:nth-child(7n+1) {
  grid-column: span 2
}
.photo-card:hover, .photo-card:focus-visible {
  border-color: var(--accent);
  text-decoration: none
}
.photo-card:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px
}
.photo-card img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  transition: transform .18s;
  display: block
}
.photo-card:hover img, .photo-card:focus-visible img {
  transform: scale(1.025)
}
.photo-card-title {
  color: #fff;
  opacity: 0;
  background: #0d1117b8;
  padding: 10px;
  font-size: 12px;
  font-weight: 600;
  transition: opacity .18s;
  display: flex;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0
}
.photo-card:hover .photo-card-title, .photo-card:focus-visible .photo-card-title {
  opacity: 1
}
.photo-card-title span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden
}
@keyframes links-fade-up {
  0% {
    opacity: 0;
    transform: translateY(4px)
  }
  to {
    opacity: 1;
    transform: translateY(0)
  }
}
@media (prefers-reduced-motion:reduce) {
  .links-hero, .link-card {
    animation: none
  }
  .link-card, .link-logo, .link-logo img, .link-card-title .github-ico, .link-card-title .github-ico {
    transition: none
  }
  .message-stage {
    align-content: start;
    gap: 8px;
    height: 340px;
    padding: 12px;
    display: grid;
    overflow-y: auto
  }
  .floating-message {
    max-width: 100%;
    animation: none;
    position: static
  }
}
.site-footer {
  border-top: 1px solid var(--border);
  color: var(--fg-muted);
  font-size: 12px
}
@keyframes love-gradient-shift {
  to {
    background-position: -300% 0
  }
}
@keyframes love-wave-move {
  0% {
    transform: translate(-90px)
  }
  to {
    transform: translate(85px)
  }
}
.footer-inner {
  text-align: center;
  justify-items: center;
  gap: 10px;
  max-width: 1280px;
  margin: 0 auto;
  padding: 24px;
  display: grid
}
.footer-primary, .footer-records, .footer-provider {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  display: flex
}
.footer-primary {
  gap: 7px
}
.footer-copyright {
  align-items: center;
  gap: 4px;
  display: inline-flex
}
.footer-primary strong {
  color: var(--fg);
  font-weight: 600
}
.footer-zbp, .footer-zbp p {
  margin: 0
}
.footer-zbp:not(:empty) {
  align-items: center;
  gap: 7px;
  display: inline-flex
}

.footer-records {
  gap: 8px 18px
}
.footer-records a, .footer-provider a, .footer-provider-static {
  color: var(--fg-muted);
  align-items: center;
  display: inline-flex
}
.footer-records a {
  gap: 5px
}
.footer-records a:hover, .footer-provider a:hover {
  color: var(--accent);
  text-decoration: none
}
.footer-records .github-ico, .footer-records .github-ico {
  width: 14px;
  height: 14px;
  font-size: 14px
}
.footer-icp-icon, .footer-public-security-icon {
  object-fit: contain;
  fill: currentColor;
  width: 16px;
  height: 16px;
  display: block
}
.footer-provider {
  gap: 5px 10px;
  min-height: 22px
}
.footer-provider-service, .footer-runtime {
  align-items: center;
  gap: 5px;
  display: inline-flex
}
.footer-provider .github-ico, .footer-provider .github-ico {
  flex: none;
  width: 14px;
  height: 14px;
  font-size: 14px
}
.footer-provider a, .footer-provider-static {
  min-height: 20px;
  color: var(--fg);
  font-weight: 600
}
.footer-provider img {
  object-fit: contain;
  width: auto;
  max-width: 120px;
  height: 20px;
  display: block
}
.footer-runtime strong {
  color: var(--fg);
  font-variant-numeric: tabular-nums;
  font-weight: 600
}
@media (width<=1360px) {
  .github-shell {
    grid-template-columns: 256px minmax(0, 1fr);
    padding-left: 24px;
    padding-right: 24px
  }
  .profile-avatar {
    width: 256px
  }
}
@media (width<=1040px) {
  .search-box, .weather-widget, .header-clock, .header-actions .icon-button:not(.wide-icon):not(.login-link):not(.theme-toggle) {
    display: none
  }
  .music-player--header {
    z-index: 40;
    flex: none;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    gap: 8px;
    width: min(300px, 100vw - 32px);
    height: auto;
    padding: 8px;
    position: fixed;
    bottom: 16px;
    left: 16px;
    box-shadow: 0 8px 24px #1f232824
  }
  .music-player--header .music-player-cover {
    width: 36px;
    height: 36px;
    display: grid
  }
  .music-player--header .music-player-info {
    gap: 2px;
    display: grid
  }
  .music-player--header .music-player-info strong {
    font-size: 12px;
    display: block
  }
  .music-player--header .music-player-info span {
    font-size: 11px;
    display: block
  }
  .music-player--header .music-player-info .music-player-lyrics {
    display: none
  }
  .music-player--header .music-player-controls {
    gap: 2px
  }
  .music-player--header .music-player-controls button {
    width: 24px;
    height: 24px
  }
  .music-player--header .music-player-controls .github-ico, .music-player-controls .github-ico {
    font-size: 16px;
    width: 16px;
    height: 16px
  }
  .music-player--header .music-player-progress {
    height: 4px;
    display: block
  }
  .github-shell {
    grid-template-columns: 220px minmax(0, 1fr);
    padding: 24px 16px 40px
  }
  .profile-avatar {
    width: 220px
  }
  .repo-grid, .contrib-layout {
    grid-template-columns: 1fr
  }
  .repositories-toolbar {
    flex-direction: column;
    align-items: stretch
  }
  .repository-search {
    width: 100%
  }
  .repository-filters {
    overflow-x: auto
  }
  .repository-list-item {
    flex-direction: column
  }
  .repository-side {
    align-self: flex-start;
    justify-items: start
  }
  .year-nav {
    order: -1;
    gap: 8px;
    width: auto;
    display: flex;
    position: static;
    overflow-x: auto
  }
  .links-grid {
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr))
  }
  .photos-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: clamp(144px, 22vw, 220px)
  }
  .photo-albums {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 36px 28px
  }
  .post-side-actions {
    flex-direction: row;
    gap: 8px;
    width: auto;
    top: auto;
    bottom: 16px;
    right: 16px;
    transform: none
  }
  body:has(.music-player) .post-side-actions {
    bottom: 96px
  }
  .back-to-top {
    width: 40px;
    height: 40px;
    top: 66.667dvh;
    right: 16px
  }
  .back-to-top.page-anchor-action {
    top: calc(66.667dvh + 48px)
  }
}
@media (width<=720px) {
  .header-inner {
    gap: 10px;
    height: 56px
  }
  .site-title {
    font-size: 14px
  }
  .octo-mark, .icon-button, .header-avatar, .header-avatar img {
    width: 32px;
    height: 32px
  }
  .wide-icon {
    display: none
  }
  .profile-tabs {
    height: 48px
  }
  .profile-tabs a {
    font-size: 14px
  }
  .site-announcement-inner {
    padding: 10px 16px
  }
  .github-shell {
    grid-template-columns: 1fr;
    padding: 24px 16px 40px
  }
  .profile-sidebar{
	  order: 1;
  }
  .profile-avatar {
    width: 160px;
    margin-left: auto;
    margin-right: auto
  }
  .profile-status {
    display:none
  }
  .profile-name {
    text-align: center;
    font-size: 24px
  }
  .profile-username {
    text-align: center;
    font-size: 20px
  }
  .category-directory-card {
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 14px;
    min-height: 0;
    padding: 16px 0
  }
  .category-directory-cover {
    width: 112px;
    height: 88px
  }
  .category-directory-title {
    font-size: 18px
  }
  .category-directory-description {
    font-size: 13px
  }
  .category-directory-metrics {
    gap: 6px 10px;
    font-size: 12px
  }
  .links-hero, .links-group-heading, .link-application-heading {
    flex-direction: column;
    align-items: flex-start
  }
  .link-application-profile, .link-application-fields {
    grid-template-columns: 1fr
  }
  .link-application-profile div:nth-child(2n) {
    border-left: 0
  }
  .link-application-profile div + div {
    border-top: 1px solid var(--border)
  }
  .link-card {
    grid-template-columns: 36px minmax(0, 1fr)
  }
  .links-grid {
    grid-template-columns: 1fr
  }
  .photos-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 36vw
  }
  .photo-albums {
    grid-template-columns: 1fr;
    gap: 28px
  }
  .photo-album-meta strong {
    font-size: 16px
  }
  .photo-card-title {
    opacity: 1
  }
  .contribution-panel {
    padding: 12px
  }
  .message-heading {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px
  }
  .message-stage {
    height: 300px
  }
  .floating-message {
    top: calc(10px + var(--message-lane) * 46px);
    max-width: 88%
  }
  .floating-message-body time {
    display: none
  }
  .footer-inner {
    padding: 20px 16px
  }
  .footer-zbp:not(:empty):before {
    display: none
  }
  .footer-primary {
    flex-direction: column;
    gap: 4px
  }
}
.about-page {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  width: 100%;
  overflow: hidden
}
.about-page h1{
	border-bottom: 1px solid var(--border);
    min-height: 0;
    padding: 24px 24px 16px;
}
.about-section {
  border-bottom: 1px solid var(--border);
  padding: 28px 32px
}
.about-section:last-child {
  border-bottom: 0
}
.about-section-heading {
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  display: flex
}
.about-section-heading .github-ico, .about-section-heading .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--fg-muted);
  flex: none
}
.about-section h2, .about-promise-heading h2 {
  color: var(--fg);
  margin: 0;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4
}
.about-overview {
  display: block
}
.about-content {
  font-size: 15px
}
.about-config-text {
  color: var(--fg);
  white-space: pre-line;
  margin: 0;
  font-size: 15px;
  line-height: 1.75
}
.about-content > :first-child {
  margin-top: 0
}
.about-content > :last-child {
  margin-bottom: 0
}
.about-tag-list {
  flex-wrap: wrap;
  gap: 8px;
  display: flex
}
.about-tag-list span {
  border: 1px solid color-mix(in srgb, var(--accent) 28%, var(--border));
  background: color-mix(in srgb, var(--accent) 8%, var(--canvas));
  min-height: 28px;
  color: var(--fg);
  border-radius: 999px;
  align-items: center;
  padding: 4px 10px;
  font-size: 12px;
  display: inline-flex
}
.about-skill-grid {
  border-top: 1px solid var(--border);
  display: grid
}
.about-skill {
  border-bottom: 1px solid var(--border);
  min-height: 50px;
  color: var(--fg);
  grid-template-columns: 24px minmax(0, 1fr) minmax(80px, 22%);
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  font-size: 13px;
  font-weight: 500;
  display: grid;
  position: relative
}
.about-skill:after {
  background: linear-gradient(to right, var(--accent) 0 var(--skill-level), var(--border-muted) var(--skill-level) 100%);
  content: "";
  border-radius: 3px;
  grid-column: 3;
  width: 100%;
  height: 6px
}
.about-skill .github-ico, .about-skill .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--fg-muted)
}
.about-promise {
  background: var(--canvas-subtle)
}
.about-promise-heading {
  align-items: center;
  gap: 12px;
  display: flex
}
.about-promise-heading > .github-ico, .about-promise-heading > .github-ico {
  font-size: 28px;
  width: 28px;
  height: 28px;
  color: var(--accent)
}
.about-promise-heading p {
  color: var(--fg-muted);
  margin: 3px 0 0;
  font-size: 12px
}
.about-progress {
  background: var(--border-muted);
  border-radius: 4px;
  height: 8px;
  margin-top: 22px;
  overflow: hidden
}
.about-progress span {
  border-radius: inherit;
  background: var(--accent);
  width: 0;
  height: 100%;
  transition: width .4s;
  display: block
}
.about-progress-meta {
  color: var(--fg-muted);
  justify-content: space-between;
  gap: 16px;
  margin-top: 8px;
  font-size: 12px;
  display: flex
}
.about-progress-meta strong {
  color: var(--accent)
}
.about-contact-list {
  flex-wrap: wrap;
  gap: 8px;
  display: flex
}
.about-contact-list a {
  border: 1px solid var(--border);
  background: var(--button-bg);
  min-height: 32px;
  color: var(--fg);
  border-radius: 6px;
  align-items: center;
  gap: 7px;
  padding: 5px 10px;
  font-size: 13px;
  font-weight: 500;
  display: inline-flex
}
.about-contact-list a:hover {
  background: var(--button-hover);
  text-decoration: none
}
.about-contact-list .github-ico, .about-contact-list .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--fg-muted)
}
@media (width<=720px) {
  .about-section {
    padding: 24px 16px
  }
}
@media (width<=440px) {
  .about-skill {
    grid-template-columns: 22px minmax(0, 1fr)
  }
  .about-skill:after {
    grid-column: 2
  }
  .about-progress-meta {
    grid-template-columns: 1fr auto;
    display: grid
  }
  .about-progress-meta span:nth-child(2) {
    grid-area: 2/1/auto/-1
  }
}
/* ==========================================================
   /* ==========================================================
   /* ==========================================================
   /* ==========================================================
   /* ==========================================================
   /* ==========================================================
   /* ==========================================================
   Jz52_git —— Z-Blog 专属样式增补
   （原版 zbp 主题 main-C-10iAjs.css 之上追加）
   ========================================================== */
/* ---------- 图标（FontAwesome 6 字体图标，本地引入） ---------- */
.github-ico {
  font-size: 16px;
  flex: none;
  display: inline-block;
  line-height: 1;
}
.icon-button .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
}
.octo-mark .github-ico {
  font-size: 32px;
  width: 32px;
  height: 32px;
  color: var(--fg);
}
.octo-mark img {
  object-fit: cover;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: block;
}
.weather-widget .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--accent);
}
.login-link .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
}
.user-menu {
  display: flex;
  align-items: center;
  gap: 8px;
}
.search-dialog-form .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--fg-muted);
}
.search-box .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
}
.profile-tabs .tab-icon, .profile-tab-link .github-ico, .profile-tab > i, .profile-tab-link > i {
  font-size: 16px;
  width: 16px;
  color: var(--fg-muted);
  flex: none;
}
.site-announcement-inner .github-ico {
  color: var(--accent);
  flex: none;
  font-size: 16px;
  width: 16px;
  height: 16px;
}
.profile-meta .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--fg-muted);
  flex: none;
}
.sidebar-tags-heading .github-ico, .sidebar-categories-heading .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--fg-muted);
  flex: none;
}
.sidebar-categories-heading .github-ico {
  color: var(--accent);
}
.repo-meta .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.repository-list-meta .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.repository-engagement-metric .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.article-meta .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.post-nav a .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
  flex: none;
}
.post-side-action .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
  display: block;
}
.back-to-top .github-ico {
  font-size: 22px;
  width: 22px;
  height: 22px;
  line-height: 1;
  display: block;
}
.github-comment-actions .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.github-comment-form-heading .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--fg-muted);
}
.category-directory-metric .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--fg-muted);
}
.links-empty .github-ico {
  font-size: 32px;
  width: 32px;
  height: 32px;
  color: var(--fg-muted);
}
.link-logo .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--fg-muted);
}
.link-card-title .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--fg-muted);
  opacity: 0;
  flex: none;
  transition: opacity .16s, transform .16s;
  transform: translate(-4px);
}
.link-card:hover .link-card-title .github-ico {
  opacity: 1;
  transform: translate(0);
}
.message-stage-status .github-ico {
  font-size: 28px;
  width: 28px;
  height: 28px;
}
.about-section-heading .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--fg-muted);
  flex: none;
}
.about-skill .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--fg-muted);
}
.about-promise-heading > .github-ico {
  font-size: 28px;
  width: 28px;
  height: 28px;
  color: var(--accent);
}
.about-contact-list .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--fg-muted);
}
.footer-records .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.footer-provider .github-ico {
  flex: none;
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.music-player--header .music-player-controls .github-ico {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.music-player-cover .github-ico {
  font-size: 18px;
  width: 18px;
  height: 18px;
}
.music-player-controls .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
}
/* ---------- 导航二级菜单（LinksManage 子菜单，JS 固定定位防裁剪） ---------- */
.profile-tab--sub {
  position: relative;
  display: flex;
}
.profile-tab--sub > .profile-tab-link {
  height: 48px;
  padding-right: 22px;
}
.profile-tab--sub > .profile-tab-link > .github-ico:last-child {
  font-size: 12px;
  width: 12px;
  height: 12px;
  color: var(--fg-subtle);
  margin-left: -12px;
  position: absolute;
  right: 6px;
  top: 18px;
  transition: transform .16s;
}
.profile-tab--sub:hover > .profile-tab-link > .github-ico:last-child {
  transform: rotate(180deg);
}
.profile-tab-submenu {
  z-index: 60;
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  min-width: 176px;
  padding: 6px 0;
  display: none;
  grid-template-columns: minmax(0, 1fr);
  position: fixed;
  box-shadow: 0 8px 24px #1f23281f;
}
.profile-tab-submenu.is-open {
  display: grid;
}
.profile-tab-submenu-link {
  min-height: 34px;
  color: var(--fg);
  white-space: nowrap;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  font-size: 13px;
  display: flex;
}
.profile-tab-submenu-link:hover, .profile-tab-submenu-link:focus-visible {
  background: var(--canvas-subtle);
  text-decoration: none;
  outline: none;
}
.profile-tab-submenu-link .github-ico, .profile-tab-submenu-link > i {
  /* font-size: 14px; */
  /* width: 14px; */
  /* height: 14px; */
  color: var(--fg-muted);
}
/* ---------- 侧栏：Z-Blog 默认模块（搜索/归档/最近评论等） ---------- */
.sidebar-module {
  border-top: 1px solid var(--border);
  margin-top: 16px;
  padding-top: 16px;
}
.sidebar-module-heading {
  color: var(--fg);
  align-items: center;
  gap: 6px;
  font-size: 14px;
  display: flex;
}
.sidebar-module-heading .github-ico {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--fg-muted);
}
.sidebar-module-content {
  margin-top: 10px;
  font-size: 13px;
}
.sidebar-module-content ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 7px;
}
.sidebar-module-content li {
  min-width: 0;
}
.sidebar-module-content a {
  color: var(--fg);
  overflow-wrap: anywhere;
}
.sidebar-module-content a:hover {
  color: var(--accent);
  text-decoration: none;
}
.sidebar-module-content form {
  display: grid;
  gap: 8px;
}
.sidebar-module-content input[type="text"], .sidebar-module-content input[type="search"] {
  border: 1px solid var(--border);
  background: var(--canvas);
  height: 32px;
  color: var(--fg);
  font: inherit;
  border-radius: 6px;
  outline: none;
  padding: 0 10px;
  font-size: 13px;
  box-sizing: border-box;
}
.sidebar-module-content input:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);
}
.sidebar-module-content .search-submit, .sidebar-module-content button {
  border: 1px solid var(--border);
  background: var(--button-bg);
  height: 30px;
  color: var(--fg);
  font: inherit;
  cursor: pointer;
  border-radius: 6px;
  padding: 0 12px;
  font-size: 13px;
}
.sidebar-module-content button:hover {
  background: var(--button-hover);
}
.sidebar-module-content .cp-hello {
  color: var(--fg-muted);
  font-size: 12px;
}
.sidebar-module-content .cp-login a, .sidebar-module-content .cp-vrs a {
  color: var(--accent);
  font-size: 13px;
}
.sidebar-module-content > ul > li > a {
  color: var(--fg-muted);
}
.sidebar-module-content > ul > li > a:hover {
  color: var(--accent);
}
/* ---------- 评论 ---------- */
.github-comments {
  margin-top: 32px;
}
.github-comments-heading {
  color: var(--fg);
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 20px;
}
.github-comments-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.github-comment-item {
  display: flex;
  gap: 12px;
  padding: 16px 0;
  border-top: 1px solid var(--border-muted);
}
.github-comment-avatar {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  object-fit: cover;
  border-radius: 50%;
  flex: none;
  width: 40px;
  height: 40px;
}
.github-comment-body {
  min-width: 0;
  flex: 1;
}
.github-comment-head {
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  display: flex;
}
.github-comment-name {
  color: var(--fg);
  font-size: 14px;
  font-weight: 600;
}
.github-comment-time {
  color: var(--fg-muted);
  font-size: 12px;
}
.github-comment-floor {
  color: var(--fg-muted);
  font-size: 12px;
}
.github-blogger-tag {
  background: var(--accent);
  color: #fff;
  border-radius: 999px;
  padding: 1px 8px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.6;
}
.github-comment-content {
  color: var(--fg);
  font-size: 14px;
  line-height: 1.7;
  margin-top: 6px;
  word-break: break-word;
}
.github-comment-actions {
  gap: 12px;
  margin-top: 8px;
  display: flex;
}
.github-comment-actions a {
  color: var(--fg-muted);
  font-size: 12px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.github-comment-actions a:hover {
  color: var(--accent);
  text-decoration: none;
}
.github-comment-actions .github-comment-reply {
  color: var(--accent);
  border: 1px solid color-mix(in srgb, var(--accent) 35%, transparent);
  background: color-mix(in srgb, var(--accent) 6%, transparent);
  border-radius: 6px;
  padding: 3px 12px;
  font-weight: 600;
  text-decoration: none;
}
.github-comment-actions .github-comment-reply:hover {
  background: color-mix(in srgb, var(--accent) 14%, transparent);
  color: var(--accent);
  text-decoration: none;
}
.github-comment-actions .github-comment-permalink {
  color: var(--fg-muted);
  opacity: 0.75;
}
.github-comment-actions .github-comment-permalink:hover {
  color: var(--fg);
  text-decoration: none;
  opacity: 1;
}
.github-comment-children {
  list-style: none;
  margin: 12px 0 0;
  padding: 0 0 0 52px;
}
.github-comments-anchor {
  display: none;
}
.github-comment-body > .github-comment-item {
  padding-left: 24px;
}
.github-comments-closed {
  color: var(--fg-muted);
  font-size: 14px;
}
.github-comment-form {
  border-top: 1px solid var(--border);
  margin-top: 24px;
  padding-top: 24px;
}
.github-comment-form-heading {
  color: var(--fg);
  font-size: 16px;
  margin: 0 0 16px;
  align-items: center;
  gap: 8px;
  display: flex;
}
.github-comment-form-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.github-comment-form-fields p {
  margin: 0;
  display: grid;
  gap: 4px;
}
.github-comment-form-fields label {
  color: var(--fg-muted);
  font-size: 12px;
}
.github-comment-form-fields input, .github-comment-form textarea, .link-application-fields input, .link-application-fields textarea, .link-application-verify input {
  border: 1px solid var(--border);
  background: var(--canvas);
  width: 100%;
  min-height: 32px;
  color: var(--fg);
  font: inherit;
  resize: vertical;
  border-radius: 6px;
  outline: none;
  padding: 6px 8px;
  font-size: 13px;
  box-sizing: border-box;
}
.github-comment-form-fields input:focus, .github-comment-form textarea:focus, .link-application-fields input:focus, .link-application-fields textarea:focus, .link-application-verify input:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);
}
.github-comment-form textarea {
  min-height: 110px;
  margin-top: 12px;
}
.github-comment-form-actions {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
}
.github-comment-form-tip {
  color: var(--fg-muted);
  font-size: 12px;
}
.github-comment-form-actions button, .link-application-form-actions button {
  color: #fff;
  height: 32px;
  font: inherit;
  white-space: nowrap;
  cursor: pointer;
  background: #1f883d;
  border: 1px solid #1b1f2426;
  border-radius: 6px;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 600;
}
.github-comment-form-actions button:hover, .link-application-form-actions button:hover {
  background: #1a7f37;
}
.github-comment-form-reply {
  align-items: center;
  gap: 10px;
  border: 1px solid var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, var(--canvas));
  border-radius: 6px;
  padding: 6px 10px;
  margin-top: 12px;
  font-size: 13px;
  display: flex;
  justify-content: space-between;
}
.github-comment-form-reply[hidden] {
  display: none;
}
.github-comment-form-reply b {
  color: var(--accent);
}
.github-comment-form-reply button {
  border: 1px solid var(--border);
  background: var(--canvas);
  color: var(--fg);
  border-radius: 6px;
  height: 26px;
  cursor: pointer;
  font: inherit;
  padding: 0 10px;
  font-size: 12px;
}
.github-comment-form-reply button:hover {
  border-color: var(--accent);
  color: var(--accent);
}
.github-comment-form form > p:last-child, .link-application-verify {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  font-size: 13px;
}
.github-comment-form form > p:last-child label, .link-application-verify label {
  color: var(--fg-muted);
  font-size: 12px;
}
.github-comment-form form > p:last-child input, .link-application-verify input {
  height: 32px;
  width: 110px;
  flex: none;
}
.link-application-verify img {
  border: 1px solid var(--border);
  border-radius: 6px;
  height: 32px;
  cursor: pointer;
}
/* 评论验证码（commentpost-verify 模板） */
.github-comment-verify {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  font-size: 13px;
  flex-wrap: wrap;
}
.github-comment-verify-label {
  color: var(--fg-muted);
  font-size: 12px;
}
.github-comment-verify-input {
  border: 1px solid var(--border);
  background: var(--canvas);
  color: var(--fg);
  height: 32px;
  width: 110px;
  border-radius: 6px;
  padding: 6px 8px;
  font-size: 13px;
  outline: none;
  box-sizing: border-box;
  flex: none;
}
.github-comment-verify-input:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);
}
.github-comment-verify-img {
  border: 1px solid var(--border);
  border-radius: 6px;
  height: 32px;
  cursor: pointer;
}
.github-comment-verify-tip {
  color: var(--fg-muted);
  font-size: 12px;
  margin: 0;
}
/* 评论：已登录提示 / 空态 / @引用 / 系统锚点 */
.github-comment-form-login {
  color: var(--fg-muted);
  font-size: 13px;
  margin: 0 0 12px;
}
.github-comment-form-login b {
  color: var(--fg);
  font-weight: 600;
}
.github-comment-form-login a {
  color: var(--accent);
  margin-left: 8px;
}
.github-comments-empty {
  color: var(--fg-muted);
  font-size: 14px;
  padding: 12px 0;
}
.github-comment-quote {
  border-left: 2px solid var(--border);
  background: var(--canvas-subtle);
  border-radius: 4px;
  color: var(--fg-muted);
  font-size: 13px;
  margin-top: 6px;
  padding: 6px 10px;
  word-break: break-word;
}
.github-comment-quote span {
  color: var(--accent);
  font-weight: 600;
}
.github-comment-item + label[id^="AjaxComment"] {
  display: none;
}
/* ---------- 归档页月份分隔 ---------- */
.repository-list-month {
  border-bottom: 1px solid var(--border);
  padding: 18px 0 10px;
}
.repository-list-month:first-child {
  padding-top: 6px;
}
.repository-list-month span {
  color: var(--fg);
  font-size: 14px;
}
/* 月份锚点滚动高亮 */
.repository-list-month.is-flash {
  animation: jz52-month-flash 2.4s ease;
}
@keyframes jz52-month-flash {
  0%, 100% {
    border-color: var(--border);
  }
  30% {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(9, 105, 218, .18);
  }
}
/* ---------- 归档页时间索引 ---------- */
.archive-time-filter {
  position: relative;
}
.repository-time-panel {
  z-index: 30;
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  min-width: 208px;
  max-height: 320px;
  overflow-y: auto;
  border: 1px solid var(--border);
  background: var(--button-bg);
  border-radius: 6px;
  padding: 8px;
  box-shadow: 0 8px 24px #1f23281f;
}
.time-index-group + .time-index-group {
  margin-top: 8px;
}
.time-index-year {
  color: var(--fg-muted);
  font-size: 12px;
  font-weight: 600;
  padding: 2px 8px 4px;
}
.time-index-months {
  list-style: none;
  margin: 0;
  padding: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2px;
  display: grid;
}
.time-index-months a {
  color: var(--fg);
  font-size: 12px;
  justify-content: space-between;
  align-items: center;
  gap: 6px;
  border-radius: 4px;
  padding: 5px 8px;
  text-decoration: none;
  display: flex;
}
.time-index-months a:hover {
  color: var(--accent);
  background: var(--button-hover);
}
.time-index-count {
  color: var(--fg-muted);
  font-size: 11px;
}
.repository-list-item:first-of-type {
  padding-top: 20px;
}
.repository-list-item[hidden] {
  display: none;
}
/* ---------- 404 ---------- */
.github-404 {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  text-align: center;
  padding: 72px 24px;
}
.github-404-title {
  color: var(--fg);
  font-size: 64px;
  font-weight: 700;
  margin: 0;
  line-height: 1.1;
}
.github-404-desc {
  color: var(--fg-muted);
  font-size: 15px;
  margin: 12px 0 24px;
}
.github-404-actions {
  gap: 12px;
  justify-content: center;
  display: flex;
}
.github-404-actions .profile-button {
  width: auto;
  padding: 0 24px;
}
/* ---------- 正文排版补充 ---------- */
.article-content {
  word-break: break-word;
}
.article-content p {
  margin: 0 0 16px;
}
.article-content h1, .article-content h2, .article-content h3, .article-content h4, .article-content h5, .article-content h6 {
  color: var(--fg);
  line-height: 1.4;
  margin: 24px 0 12px;
}
.article-content h1 {
  font-size: 1.5em;
}
.article-content h2 {
  font-size: 1.35em;
  border-bottom: 1px solid var(--border-muted);
  padding-bottom: 6px;
}
.article-content h3 {
  font-size: 1.2em;
}
.article-content ul, .article-content ol {
  padding-left: 24px;
  margin: 0 0 16px;
}
.article-content blockquote {
  border-left: 4px solid var(--border);
  margin: 16px 0;
  padding: 0 16px;
  color: var(--fg-muted);
}
.article-content table {
  max-width: 100%;
  display: block;
  overflow-x: auto;
  border-collapse: collapse;
  margin: 0 0 16px;
}
.article-content th, .article-content td {
  border: 1px solid var(--border);
  padding: 6px 12px;
}
.article-content th {
  background: var(--canvas-subtle);
  font-weight: 600;
}
.article-content pre {
  border: 1px solid var(--border-muted);
}
.article-content a {
  color: var(--accent);
}
.article-content img {
  border-radius: 6px;
  max-width: 100%;
  height: auto;
}
.article-content hr {
  border: 0;
  border-top: 1px solid var(--border);
  margin: 24px 0;
}
/* ---------- 顶部搜索按钮 kbd ---------- */
.search-box kbd {
  border: 1px solid var(--fg-subtle);
  min-width: 18px;
  height: 20px;
  color: var(--fg-muted);
  font: inherit;
  background: 0 0;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  line-height: 1;
  display: inline-flex;
}
/* ---------- 留言板漂浮消息 ---------- */
.message-stage {
  background: var(--canvas-subtle);
}
.floating-message {
  will-change: left, transform;
}
/* ---------- 移动端评论表单 ---------- */
@media (width <=720px) {
  .github-comment-form-fields {
    grid-template-columns: 1fr;
  }
  .github-comment-children {
    padding-left: 0;
  }
  .github-comment-item {
    gap: 10px;
  }
}
/* ---------- 分类/标签列表页（原版 JS 渲染，此处服务端直出对齐类名） ---------- */
.taxonomy-card-grid {
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 12px;
  display: grid;
}
.taxonomy-card {
  border: 1px solid var(--border);
  background: var(--canvas);
  border-radius: 6px;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  padding: 14px 16px;
  display: flex;
}
.taxonomy-card:hover {
  border-color: var(--accent);
  text-decoration: none;
}
.taxonomy-card-name {
  color: var(--fg);
  font-size: 14px;
  font-weight: 600;
  overflow-wrap: anywhere;
}
.taxonomy-card-count {
  color: var(--fg-muted);
  align-items: center;
  gap: 4px;
  font-size: 12px;
  display: inline-flex;
}
.taxonomy-card-count .github-ico {
  font-size: 12px;
  width: 12px;
  height: 12px;
}
.taxonomy-list-empty {
  border: 1px dashed var(--border);
  border-radius: 6px;
  color: var(--fg-muted);
  text-align: center;
  padding: 48px 16px;
  font-size: 14px;
}
/* ---------- 文章页元信息 ---------- */.article-meta {
  color: var(--fg-muted);
  align-items: center;
  gap: 8px;
  font-size: 13px;
  display: flex;
  flex-wrap: wrap;
}
.article-meta a {
  color: var(--fg-muted);
}
.article-meta a:hover {
  color: var(--accent);
  text-decoration: none;
}
.article-meta .article-meta-views, .article-meta .article-meta-comments {
  align-items: center;
  gap: 4px;
  display: inline-flex;
}
.article-tags {
  border-top: 1px solid var(--border-muted);
  gap: 8px;
  padding-top: 16px;
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
}
.article-tag {
  border: 1px solid var(--border);
  background: var(--canvas-subtle);
  color: var(--fg-muted);
  border-radius: 999px;
  padding: 3px 10px;
  font-size: 12px;
}
.article-tag:hover {
  border-color: var(--accent);
  color: var(--accent);
  text-decoration: none;
}
/* ---------- 评论操作链接 ---------- */
.github-comment-permalink, .github-comment-reply {
  color: var(--fg-muted);
  font-size: 12px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.github-comment-permalink:hover, .github-comment-reply:hover {
  color: var(--accent);
  text-decoration: none;
}
/* ---------- 归档分页指示器 ---------- */
.pagination-indicator {
  color: var(--fg-muted);
  font-size: 14px;
}
.pagination .pagebar-first, .pagination .pagebar-last {
  display: none;
}
/* 列表分页按钮（Jz52 系 pagebar.buttons 键值渲染） */
.pagination .page {
  min-width: 32px;
  color: var(--fg-muted);
  text-align: center;
  align-items: center;
  justify-content: center;
  display: inline-flex;
  text-decoration: none;
}
.pagination a.page:hover {
  border-color: var(--accent);
  color: var(--accent);
  text-decoration: none;
}
.pagination .page-current {
  background: var(--canvas-subtle);
  color: var(--fg);
  border-color: var(--fg-subtle);
  font-weight: 600;
}
.pagination .page-disabled {
  color: var(--fg-muted);
  opacity: .5;
  cursor: default;
}
.pagination .page-prev, .pagination .page-next {
  color: var(--accent);
}
/* ---------- 修正：原版 .tag,.category 芯片规则误伤 Z-Blog body 类（category/tag 页 body 被设为 inline-flex 导致布局坍缩） ---------- */
body.category, body.tag {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: var(--page-bg);
  color: var(--fg);
  font-size: 14px;
  line-height: 1.5;
  align-items: initial;
}
/* ---------- 侧栏标签云（与原版 zbp 主题 github 一致：globe 球体/float 漂浮/wave 波浪/shuffle 洗牌/marquee 跑马灯） ---------- */
.sidebar-tags, .sidebar-categories {
  border-top: 1px solid var(--border);
  margin-top: 16px;
  padding-top: 16px;
}
.sidebar-tags-heading {
  color: var(--fg);
  align-items: center;
  gap: 6px;
  font-size: 14px;
  display: flex;
}
.sidebar-tags-heading .github-ico {
  width: 16px;
  height: 16px;
  color: var(--fg-muted);
}
.sidebar-tag-sphere {
  aspect-ratio: 1;
  width: 100%;
  margin-top: 12px;
  position: relative;
  overflow: hidden;
}
.sidebar-tag-cloud {
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}
.sidebar-tag-cloud a {
  max-width: 62%;
  min-height: 22px;
  color: var(--accent);
  text-overflow: ellipsis;
  white-space: nowrap;
  border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border));
  background: color-mix(in srgb, var(--accent) 7%, var(--canvas));
  pointer-events: auto;
  border-radius: 999px;
  align-items: center;
  padding: 2px 7px;
  font-size: 12px;
  line-height: 1.35;
  transition: opacity .12s, background .12s, color .12s;
  display: inline-flex;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}
.sidebar-tag-cloud a:hover {
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 14%, var(--canvas));
  text-decoration: none;
}
.sidebar-tag-cloud--float, .sidebar-tag-cloud--wave, .sidebar-tag-cloud--shuffle {
  flex-wrap: wrap;
  place-content: center;
  gap: 7px 6px;
  padding: 8px;
  display: flex;
}
.sidebar-tag-cloud--float a, .sidebar-tag-cloud--wave a, .sidebar-tag-cloud--shuffle a {
  max-width: calc(50% - 6px);
  position: relative;
  top: auto;
  left: auto;
}
.sidebar-tag-cloud--float a {
  animation: sidebar-tag-float 4.8s ease-in-out var(--tag-delay) infinite alternate;
}
.sidebar-tag-cloud--wave a {
  animation: sidebar-tag-wave 3.6s ease-in-out var(--tag-delay) infinite;
}
.sidebar-tag-cloud--shuffle a {
  transition: opacity .18s, transform .18s;
}
.sidebar-tag-cloud--shuffle.is-shuffling a {
  opacity: 0;
  transform: translateY(5px);
}
.sidebar-tag-cloud--marquee {
  animation: 42s linear infinite sidebar-tag-marquee;
}
.sidebar-tag-cloud--marquee a {
  animation: 42s linear infinite reverse sidebar-tag-marquee-label;
  transform: translate(-50%, -50%);
}
@keyframes sidebar-tag-float {
  0% {
    transform: translate(-2px, -3px);
  }
  to {
    transform: translate(2px, 3px);
  }
}
@keyframes sidebar-tag-wave {
  0%, to {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}
@keyframes sidebar-tag-marquee {
  to {
    transform: rotate(360deg);
  }
}
@keyframes sidebar-tag-marquee-label {
  to {
    transform: translate(-50%, -50%) rotate(-360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .sidebar-tag-cloud--float a, .sidebar-tag-cloud--wave a, .sidebar-tag-cloud--marquee, .sidebar-tag-cloud--marquee a {
    animation: none;
  }
}
/* ---------- Z-Blog 内置侧栏模块（divArchives/divCalendar/divSearchPanel 等）内部样式 ---------- */
.sidebar-module-content {
  margin-top: 8px;
}
.sidebar-module ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sidebar-module li {
  margin: 4px 0;
}
.sidebar-module li a {
  color: var(--fg-muted);
  font-size: 13px;
  line-height: 1.5;
  text-decoration: none;
}
.sidebar-module li a:hover {
  color: var(--accent);
  text-decoration: none;
}
.sidebar-module ul ul {
  margin-left: 14px;
}
.sidebar-module table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 10px;
}
.sidebar-module table th, .sidebar-module table td {
  text-align: center;
  padding: 4px 0;
  font-size: 12px;
  color: var(--fg-muted);
}
.sidebar-module table a {
  color: var(--accent);
  text-decoration: none;
}
.sidebar-module input[type="text"], .sidebar-module input[type="search"], .sidebar-module input[type="password"] {
  box-sizing: border-box;
  width: 100%;
  margin-top: 10px;
  padding: 7px 10px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--canvas);
  color: var(--fg);
  font-size: 13px;
}
.sidebar-module input[type="text"]:focus, .sidebar-module input[type="search"]:focus, .sidebar-module input[type="password"]:focus {
  border-color: var(--accent);
  outline: none;
}
.sidebar-module input[type="submit"], .sidebar-module input[type="button"], .sidebar-module button {
  margin-top: 8px;
  padding: 5px 14px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--button-bg);
  color: var(--fg);
  font-size: 13px;
  cursor: pointer;
}
.sidebar-module input[type="submit"]:hover, .sidebar-module input[type="button"]:hover, .sidebar-module button:hover {
  background: var(--button-hover);
  border-color: var(--fg-subtle);
}
.sidebar-module select {
  margin-top: 8px;
  padding: 4px 6px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--canvas);
  color: var(--fg);
  font-size: 12px;
}
.sidebar-module p {
  color: var(--fg-muted);
  font-size: 13px;
  line-height: 1.6;
}
.sidebar-module .sidebar-module-heading {
  margin: 0;
}
.sidebar-module a img {
  border-radius: 4px;
}
/* ---------- 系统侧栏模块 ---------- */
.profile-modules {
  margin-top: 16px;
  display: grid;
  gap: 12px;
  position: sticky;
  top: 20px;
}
.profile-modules .sidebar-module {
  /* margin: 0; */
  /* padding: 14px 16px; */
  
border-top: 1px solid var(--border);
    margin-top: 16px;
    padding-top: 16px;
  
  /* border: 1px solid var(--border); */
  /* border-radius: 8px; */
  /* background: var(--canvas-subtle); */
}
.profile-modules .sidebar-module-heading {
  margin: 0 0 10px;
}
.profile-modules .sidebar-module-heading .github-ico {
  color: var(--accent);
}
.profile-modules .sidebar-module-content {
  margin-top: 0;
}
.profile-modules .sidebar-module table {
  margin-top: 0;
}
.profile-modules .sidebar-module table td {
  height: 26px;
}
/* 系统标签列表：GitHub 风格 chip 流式排列 */
#divTags .sidebar-module-content ul, #divTags .sidebar-module-list, #divMisc .sidebar-module-content ul, #divMisc .sidebar-module-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
#divTags .sidebar-module-content li, #divTags .sidebar-module-list li, #divMisc .sidebar-module-content li, #divMisc .sidebar-module-list li {
  margin: 0;
}
#divTags .sidebar-module-content li a, #divTags .sidebar-module-list li a, #divMisc .sidebar-module-content li a, #divMisc .sidebar-module-list li a {
  display: inline-block;
  padding: 2px 10px;
  border: 1px solid var(--border);
  border-radius: 999px;
  font-size: 12px;
  color: var(--fg-muted);
}
#divTags .sidebar-module-content li a:hover, #divTags .sidebar-module-list li a:hover, #divMisc .sidebar-module-content li a:hover, #divMisc .sidebar-module-list li a:hover {
  border-color: var(--accent);
  color: var(--accent);
}
/* 日历：今天高亮 */
.profile-modules .sidebar-module table td.today a, .profile-modules .sidebar-module table td#today a, .profile-modules .sidebar-module table td.on a {
  color: var(--accent);
  font-weight: 600;
}
/* 站点信息：统计行分隔 */
#divStatistics .sidebar-module-content ul, #divStatistics .sidebar-module-list {
  gap: 0;
}
#divStatistics .sidebar-module-content li, #divStatistics .sidebar-module-list li {
  padding: 6px 0;
  border-bottom: 1px dashed var(--border);
}
#divStatistics .sidebar-module-content li:last-child, #divStatistics .sidebar-module-list li:last-child {
  border-bottom: 0;
}
/* 控制面板：紧凑两行 */
#divControlPanel .sidebar-module-content .cp-hello {
  margin: 0 0 6px;
}
#divControlPanel .sidebar-module-content .cp-login, #divControlPanel .sidebar-module-content .cp-vrs {
  margin-top: 6px;
}