    :root { --doc-max: 980px; }
    body { background: var(--bg-page); color: var(--text-primary); }
    .doc-container { max-width: var(--doc-max); margin: 0 auto; padding: var(--space-xl) var(--space-lg); }

    .doc-header { text-align: center; margin-bottom: var(--space-2xl); padding-bottom: var(--space-xl); border-bottom: 1px solid var(--border); }
    .doc-header h1 { font-size:var(--font-size-2xl); font-weight: 800; margin: 0 0 var(--space-sm); }
    .doc-header p { color: var(--text-muted); font-size: var(--font-size-sm); margin: 0; }

    .doc-section { margin-bottom: var(--space-2xl); }
    .doc-section h2 { font-size:var(--font-size-lg); font-weight: 700; margin: 0 0 var(--space-md); padding-bottom: var(--space-xs); border-bottom: 1px solid var(--border); }
    .doc-section h3 { font-size: var(--font-size-base); font-weight: 600; margin: var(--space-lg) 0 var(--space-sm); color: var(--text-secondary); }
    .doc-section p, .doc-section li { font-size: var(--font-size-sm); line-height: 1.65; color: var(--text-secondary); }
    .doc-section ul { padding-left: var(--space-lg); margin: var(--space-sm) 0; }
    .doc-section li { margin-bottom: var(--space-xs); }

    pre.code-block {
      background: var(--bg-elevated); border: 1px solid var(--border);
      border-radius: var(--radius-sm); padding: var(--space-md);
      overflow-x: auto; font-size: var(--font-size-sm); line-height: 1.5;
      font-family: var(--font-mono); margin: var(--space-sm) 0 var(--space-md);
    }
    code { font-family: var(--font-mono); font-size: 0.9em; background: var(--bg-elevated); padding: 1px 5px; border-radius: 3px; }
    pre.code-block code { background: none; padding: 0; }

    .param-table { width: 100%; border-collapse: collapse; font-size: var(--font-size-sm); margin: var(--space-sm) 0 var(--space-md); }
    .param-table th, .param-table td { padding: 8px 12px; text-align: left; border-bottom: 1px solid var(--border); }
    .param-table th { font-size: var(--font-size-xs); text-transform: uppercase; color: var(--text-muted); font-weight: 600; background: var(--bg-elevated); }
    .param-table td code { font-size: var(--font-size-xs); }
    .required { color: var(--status-error); font-weight: 600; font-size: var(--font-size-xs); }
    .optional { color: var(--text-muted); font-size: var(--font-size-xs); }

    .error-table { width: 100%; border-collapse: collapse; font-size: var(--font-size-sm); }
    .error-table th, .error-table td { padding: 8px 12px; text-align: left; border-bottom: 1px solid var(--border); }
    .error-table th { font-size: var(--font-size-xs); text-transform: uppercase; color: var(--text-muted); font-weight: 600; background: var(--bg-elevated); }

    .endpoint-badge { display: inline-block; background: var(--status-success); color: var(--text-inverse); padding: 3px 10px; border-radius: 4px; font-size: var(--font-size-xs); font-weight: 700; font-family: var(--font-mono); letter-spacing: 0.5px; margin-right: var(--space-xs); }
    .endpoint-path { font-family: var(--font-mono); font-size: var(--font-size-base); font-weight: 600; }

    .note-box { background: #3b82f610; border: 1px solid #3b82f630; border-radius: var(--radius-sm); padding: var(--space-sm) var(--space-md); font-size: var(--font-size-sm); color: var(--text-secondary); margin: var(--space-md) 0; }
    .warn-box { background: #f59e0b10; border: 1px solid #f59e0b30; border-radius: var(--radius-sm); padding: var(--space-sm) var(--space-md); font-size: var(--font-size-sm); color: var(--text-secondary); margin: var(--space-md) 0; }

    .toc { list-style: none; padding: 0; margin: var(--space-md) 0; }
    .toc li { margin-bottom: var(--space-xs); }
    .toc a { color: var(--text-secondary); text-decoration: none; font-size: var(--font-size-sm); }
    .toc a:hover { color: var(--text-primary); text-decoration: underline; }

    @media (max-width: 600px) {
      .doc-container { padding: var(--space-md); }
      pre.code-block { font-size: var(--font-size-xs); padding: var(--space-sm); }
    }
