.data-structure-page{--ds-green:#42967b;--ds-amber:#b5842c;--ds-blue:#4f46e5;--ds-unknown:#7b8492;max-width:1440px;margin:0 auto;line-height:1.5}
.data-structure-page h2,.data-structure-page h3{margin:0 0 10px;font-weight:600}
.ds-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.ds-heading p{margin:0;color:var(--el-text-color-secondary)}
.ds-filters{display:flex;gap:14px;flex-wrap:wrap;margin:16px 0}
.ds-filters label{display:flex;flex-direction:column;gap:6px;min-width:190px;max-width:260px;flex:1}
.ds-note{font-size:13px;color:var(--el-text-color-secondary);line-height:1.6;overflow-wrap:anywhere}
.ds-source-context{font-size:14px;color:var(--el-text-color-regular);margin:16px 0}
.ds-overviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ds-overviews>*{min-width:0}
.ds-rates{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}
.ds-rates strong{display:block;font-size:36px;font-weight:600;margin:6px 0;font-variant-numeric:tabular-nums}
.ds-rates span{display:block;color:var(--el-text-color-secondary);font-size:13px}
.ds-stack{display:flex;background:var(--el-fill-color);height:20px;border-radius:4px;overflow:hidden}
.ds-stack span{height:100%}
.ds-continuous{background:var(--ds-green,#42967b)}
.ds-broken{background:var(--ds-amber,#b5842c)}
.ds-single{background:var(--ds-blue,#4f46e5)}
.ds-unknown{background:var(--ds-unknown,#7b8492)}
.ds-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 8px;margin:22px 0}
.ds-legend .ds-legend-item{justify-content:flex-start;margin:0;white-space:normal;text-align:left;line-height:1.5}
.ds-legend i{width:10px;height:10px;flex-shrink:0;display:inline-block;margin-right:6px}
.ds-browse{max-width:100%;white-space:normal;height:auto;min-height:32px;line-height:1.5}
.ds-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:16px 0 20px}
.ds-metrics>div{background:var(--el-bg-color);padding:20px;border:1px solid var(--el-border-color-light);border-radius:8px}
.ds-metrics span,.ds-metrics small{display:block;color:var(--el-text-color-secondary);font-size:13px}
.ds-metrics small{margin-top:8px}
.ds-metrics strong{display:block;font-size:30px;font-weight:600;margin-top:8px;font-variant-numeric:tabular-nums}
.ds-panel,.ds-panels{margin-top:20px}
.ds-table-scroll{overflow-x:auto}
.ds-matrix{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}
.ds-matrix th,.ds-matrix td{padding:12px 8px;text-align:center;border-bottom:1px solid var(--el-border-color-lighter);font-weight:400}
.ds-matrix th:first-child{text-align:left;min-width:130px}
.ds-matrix small,.ds-bar-row small,.ds-combo small{display:block;color:var(--el-text-color-secondary);margin-top:5px}
.ds-bar-row{display:grid;grid-template-columns:minmax(90px,1fr) 1.3fr 80px;gap:10px;align-items:center;margin:20px 0;font-size:13px}
.ds-bar-row>span{text-align:right;font-variant-numeric:tabular-nums}
.ds-label-button{min-width:0;white-space:normal;justify-content:flex-start;text-align:left;line-height:1.5}
.ds-pending-bar{height:6px;border-radius:100px;background:var(--el-fill-color-light)}
.ds-channel-metrics{display:grid;gap:8px;font-size:13px;margin:12px 0}
.ds-channel{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:12px 0;font-size:13px}
.ds-channel>span{white-space:nowrap}
.ds-combo{padding:16px 0;border-bottom:1px solid var(--el-border-color-lighter);font-size:14px}
.ds-empty-note{padding:24px 16px;border-radius:6px;background:var(--el-fill-color-light);color:var(--el-text-color-secondary);font-size:14px}
.ds-combination-summary{margin-top:20px}
.ds-timeline{position:relative;height:32px;background:var(--el-fill-color);margin:12px 0;overflow:hidden}
.ds-timeline>span{position:absolute;top:6px;height:20px;opacity:.8}
.ds-video{display:block;width:100%;max-height:65vh;background:#000}
.data-structure-page .el-pagination{margin-top:14px;max-width:100%;overflow-x:auto}
@media(max-width:1000px){.ds-overviews{grid-template-columns:1fr}.ds-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.ds-filters label{min-width:100%;max-width:100%}.ds-bar-row{grid-template-columns:minmax(80px,1fr) 1fr 68px}.ds-rates strong{font-size:27px}.ds-heading{align-items:flex-start}.ds-channel{flex-wrap:wrap}.ds-metrics>div{padding:12px}.ds-metrics strong{font-size:25px}.ds-legend{grid-template-columns:1fr}}
