  .docs-wrapper {
    display: flex;
    padding-top: 2rem;
  }
  
  .docs-sidebar {
    width: 220px;
    border-right: 1px solid var(--border);
    padding: 1rem 1rem 2rem;
    background-color: transparent;
  }

  .docs-sidebar h3 {
    font-size: 1rem;
    margin-bottom: 0.5rem;
  }

  .docs-sidebar ul {
    list-style: none;
    padding-left: 0;
  }

  .docs-sidebar a {
    text-decoration: none;
    color: var(--secondary);
    display: block;
    padding: 0.3rem 0;
  }

  .docs-sidebar a:hover,
  .docs-sidebar a.active {
    font-weight: bold;
    color: var(--primary);
  }
  
  .docs-content {
    flex: 1;
    padding: 2rem;
    min-width: 0;
    overflow-x: hidden;
  }

  .docs-content table {
    display: block;
    overflow-x: auto;
    max-width: 100%;
  }

  .docs-content h1 {
    margin-bottom: 0.5rem;
  }

  .docs-description {
    color: var(--secondary);
  }

  .docs-content-body {
    margin-top: 1.5rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--border);
  }

  .docs-content-body figure {
    margin: 0;
    width: 100%;
  }

  .docs-content-body figure img {
    width: 100%;
    height: auto;
    background: white;
  }

  .docs-content-body .highlight {
    position: relative;
    background: var(--code-block-bg);
    border-radius: 6px;
    padding: 1rem 1.25rem;
    margin: 1rem 0;
  }

  .docs-content-body .highlight pre {
    margin: 0;
    color: #f8f8f2;
    font-size: 0.9em;
    overflow-x: auto;
  }

  .docs-content-body .copy-code {
    position: absolute;
    top: 50%;
    right: 0.75rem;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: rgba(255,255,255,0.1);
    border: none;
    border-radius: 4px;
    color: #aaa;
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
  }

  .docs-content-body .copy-code:hover {
    background: rgba(255,255,255,0.2);
    color: #fff;
  }

.tabpane { margin: 1rem 0; }
.tabpane-tabs { display: flex; gap: 0.15rem; margin-bottom: 0; justify-content: flex-end; }
.tabpane-tab {
  padding: 0.2rem 0.6rem;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 0.75em;
  color: #888;
  border-bottom: 2px solid transparent;
}
.tabpane-tab.active { color: #555; border-bottom: 2px solid #888; }
.tabpane-tab:hover { color: #555; }
.tabpane-panels { }
.tabpane-panel { display: none; }
.tabpane-panel.active { display: block; }
.tabpane-panel > p:first-child, .tabpane-panel > pre:first-child { margin-top: 0; }
  