.sk-root { min-width: 0; }
.main-content:has(#tab-sankey.active) { min-width: 0; }
.sk-root .panel { padding: 20px; margin-bottom: 16px; }
.sk-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.sk-field { display: grid; grid-template-columns: minmax(0, 1fr) 72px; gap: 8px; }
.sk-controls label { display: flex; flex-direction: column; gap: 7px; font-size: 12px; color: var(--text-muted, #62708a); font-weight: 600; }
.sk-controls select, .sk-controls input { width: 100%; min-width: 0; padding: 9px; border: 1px solid var(--border, #dce0ea); background: var(--bg-input, #f7f8fc); color: var(--text-primary, #26334f); border-radius: 8px; font: inherit; font-size: 13px; }
.sk-actions { display: flex; align-items: center; gap: 14px; margin-top: 16px; }
.sk-actions [role=status], .sk-muted { font-size: 12px; line-height: 1.6; color: var(--text-muted, #62708a); }
.sk-chart-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.sk-chart-header h3 { font-size: 17px; margin: 0; }
.sk-chart-header strong { min-width: 0; overflow-wrap: anywhere; }
.sk-chart-header button { flex-shrink: 0; }
.sk-summary { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.sk-summary span { padding: 4px 9px; font-size: 11px; color: var(--text-muted, #526078); background: var(--bg-input, #f5f6fc); border: 1px solid var(--border, #e4e7f0); border-radius: 6px; }
.sk-canvas { width: 100%; overflow: auto; max-height: 760px; border-top: 1px solid var(--border, #e4e7f0); margin-top: 14px; }
.sk-canvas svg { display: block; width: 100%; height: auto; }
.sk-canvas.sk-zoom svg { width: 1240px; min-width: 1240px; }
.sk-label { font-size: 15px; fill: var(--text-primary, #26334f); paint-order: stroke; stroke: var(--bg-card, white); stroke-width: 4px; stroke-linejoin: round; }
.sk-column-label { font-size: 14px; font-weight: 700; fill: var(--text-primary, #26334f); }
.sk-ribbon { opacity: .26; transition: opacity .15s; }
.sk-link:hover .sk-ribbon, .sk-link:focus .sk-ribbon { opacity: .7; }
.sk-link.sk-dim { opacity: .12; }
.sk-link, .sk-node { cursor: pointer; }
.sk-node:focus, .sk-link:focus { outline: none; }
.sk-node:focus rect { stroke: #e9a226; stroke-width: 3px; }
.sk-inspector { margin-top: 16px; padding: 16px; border: 1px solid var(--border, #dce0ea); border-radius: 10px; background: var(--bg-input, #f8f9fd); font-size: 13px; }
.sk-inspector p { color: var(--text-muted, #526078); font-size: 12px; }
.sk-records { max-height: 300px; overflow: auto; padding-left: 25px; }
.sk-records li { padding: 8px 6px; border-bottom: 1px solid var(--border, #e4e7f0); overflow-wrap: anywhere; }
.sk-records strong { font-size: 12px; font-weight: 500; }
.sk-records small { display: block; color: var(--text-muted, #526078); margin-top: 4px; }
.sk-ledger summary { cursor: pointer; font-size: 13px; font-weight: 600; }
.sk-table-scroll { max-height: 420px; overflow: auto; margin-top: 12px; }
.sk-table-scroll table { width: 100%; table-layout: fixed; }
.sk-table-scroll th, .sk-table-scroll td { font-size: 12px; overflow-wrap: anywhere; }
.sk-table-scroll th:nth-child(3), .sk-table-scroll th:nth-child(4) { width: 100px; }
.sk-error { border-left: 3px solid #dc4a55; }
.sk-error p { font-size: 13px; }
@media (max-width: 800px) { .sk-fields { grid-template-columns: 1fr; gap: 12px; } .sk-chart-header { align-items: flex-start; flex-wrap: wrap; } .sk-root .panel { padding: 14px; } }
