/* 主题 3：侧边栏——石墨色侧栏 + 紫色点缀，表格列表，“数据表”式详情 */
body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; background: #f6f7f9; color: #1f2328; }
a { color: #6d28d9; }

.sb-shell { display: grid; grid-template-columns: 250px 1fr; min-height: 100vh; }
.sb-side { background: #22272e; color: #adbac7; padding: 1.5rem 1.2rem; position: sticky; top: 0; height: 100vh; overflow-y: auto; }
.sb-brand { display: block; color: #fff; font-size: 1.35rem; font-weight: 700; text-decoration: none; margin-bottom: 1.5rem; word-break: break-word; }
.sb-label { font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; }
.sb-search { margin-bottom: 1.5rem; }
.sb-nav { list-style: none; padding: 0; }
.sb-nav li a { display: block; color: #cdd9e5; text-decoration: none; padding: .35rem 0; border-left: 3px solid transparent; padding-left: .6rem; }
.sb-nav li a:hover { border-left-color: #a78bfa; color: #fff; }
.sb-menu { display: none; }
.sb-content { padding: 2rem 2.5rem; min-width: 0; }
.sb-foot { margin-top: 3rem; padding-top: 1rem; border-top: 1px solid #d0d7de; font-size: .8rem; color: #57606a; }

@media (max-width: 991.98px) {
    .sb-shell { grid-template-columns: 1fr; }
    .sb-side { position: static; height: auto; padding: 1rem; }
    .sb-brand { margin-bottom: .75rem; }
    .sb-nav { display: none; }
    .sb-menu { display: block; }
    .sb-menu summary { cursor: pointer; color: #fff; }
    .sb-menu a { display: block; color: #cdd9e5; padding: .3rem 0; }
    .sb-content { padding: 1.25rem 1rem; }
}

/* 产品列表：表格 */
.ct-box { margin: 1.5rem 0; background: #fff; border: 1px solid #d0d7de; border-radius: 6px; padding: .75rem 1rem; }
.ct-caption { font-weight: 600; margin-bottom: .5rem; }
.ct-table { margin-bottom: 0; }
.ct-table thead th { font-size: .78rem; text-transform: uppercase; color: #57606a; border-bottom-width: 2px; }
.ct-cas { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; white-space: nowrap; }
.ct-code { color: #57606a; white-space: nowrap; }

/* 产品详情：数据表 */
.ds-head { border-bottom: 2px solid #6d28d9; padding-bottom: .75rem; margin-bottom: 1.25rem; }
.ds-head h1 { font-size: 1.7rem; margin: 0; }
.ds-head h2 { font-size: 1.1rem; color: #57606a; margin: .3rem 0 0; }
.ds-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1rem; }
.ds-cell { background: #fff; border: 1px solid #d0d7de; border-radius: 6px; padding: 1rem; }
.ds-cell h3 { font-size: .85rem; text-transform: uppercase; letter-spacing: .05em; color: #6d28d9; }
.ds-kv { width: 100%; }
.ds-kv td { padding: .3rem 0; border-bottom: 1px solid #eaeef2; vertical-align: top; }
.ds-kv td:first-child { color: #57606a; width: 42%; padding-right: .5rem; }
.ds-structure { text-align: center; }
.ds-structure img { max-height: 240px; }
.ds-actions { margin: 1.25rem 0; display: flex; gap: 1.25rem; align-items: center; }

.home-feature { background: #fff; border: 1px solid #d0d7de; border-radius: 6px; padding: 1.25rem; }
.home-feature-title { font-size: 1.5rem; }
.sb-go { background: #6d28d9; color: #fff; border: 0; }
.sb-go:hover { background: #5b21b6; color: #fff; }
