@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300;400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap");

:root {
  --theme-color: #0f766e;
  --base-font-family: "IBM Plex Sans", system-ui, -apple-system, sans-serif;
  --base-font-size: 16px;
  --code-font-family: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --cover-heading-color: #0f172a;
  --cover-blockquote-color: #334155;
  --link-color: #0f766e;
  --link-color--hover: #115e59;
  --sidebar-nav-link-color--active: #0f766e;
  --selection-color: rgba(15, 118, 110, 0.2);
}

html,
body {
  height: 100%;
}

body {
  min-height: 100vh;
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
}

#app {
  min-height: 100vh;
}

.app,
.main {
  min-height: 100vh;
}

.app {
  background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
}

.app-name-link img {
  width: 28px;
  height: 28px;
}

.markdown-section {
  max-width: 980px;
  min-height: 60vh;
  padding-bottom: 4rem;
}

.markdown-section code {
  font-family: var(--code-font-family);
  font-size: 0.9em;
}

.markdown-section pre {
  border-radius: 12px;
}

.sidebar {
  background: rgba(248, 250, 252, 0.9);
  border-right: 1px solid #e2e8f0;
}

.sidebar-nav > ul > li > p {
  margin: 1.2rem 0 0.35rem;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #64748b;
}

.sidebar-nav > ul > li > p::after {
  content: \"\";
  display: block;
  height: 1px;
  background: #e2e8f0;
  margin-top: 0.5rem;
}

.sidebar-nav ul ul {
  margin: 0.4rem 0 0.9rem 0.6rem;
  padding-left: 0.8rem;
  border-left: 2px solid #e2e8f0;
}

.sidebar-nav ul ul li a {
  font-size: 0.95rem;
  color: #475569;
}

.sidebar-nav ul ul li a:hover {
  color: #0f766e;
}

.sidebar-nav ul ul ul {
  margin-left: 0.6rem;
  padding-left: 0.8rem;
  border-left: 1px dashed #cbd5f5;
}

.sidebar-nav ul ul ul li a {
  font-size: 0.86rem;
  color: #94a3b8;
}

.sidebar-nav ul ul ul li a::before {
  content: \"— \";
  color: #cbd5f5;
}

.sidebar ul li.active > a {
  font-weight: 600;
  color: #0f766e;
  background: rgba(15, 118, 110, 0.08);
  border-radius: 8px;
}

.sidebar ul li.active > a::before {
  content: \"\";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 999px;
  background: #0f766e;
}

.cover-main {
  text-align: left;
}

.cover-main h1 {
  font-size: 3rem;
  letter-spacing: -0.02em;
}

.cover-main p {
  max-width: 520px;
}

section.cover {
  background: radial-gradient(circle at top, #e0f2f1 0%, #f8fafc 55%, #f1f5f9 100%);
}

.docsify-pagination-container {
  border-top: 1px solid #e2e8f0;
}

.main {
  background: transparent;
}

.content {
  min-height: 100vh;
  background: transparent;
}

@media (max-width: 640px) {
  .cover-main h1 {
    font-size: 2.2rem;
  }
}
