@layer kinetika{.kn-d-lbl{font-family:var(--kn-font-mono);font-size:var(--kn-fs-caption);letter-spacing:var(--kn-track-caps);text-transform:uppercase;color:var(--kn-text-3)}.kn-d-skel{border-radius:var(--kn-r-xs);background:linear-gradient(90deg,var(--kn-surface-2) 25%,var(--kn-inset) 37%,var(--kn-surface-2) 63%);background-size:400% 100%;animation:km-shimmer 1.4s ease infinite}.kn-d-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:var(--kn-sp-8) var(--kn-sp-4);color:var(--kn-text-3);font-size:var(--kn-fs-small);text-align:center}.kn-d-empty__dot{width:8px;height:8px;border-radius:var(--kn-r-full);background:var(--kn-border-strong)}.kn-dt{background:var(--kn-surface);border:1px solid var(--kn-border);border-radius:var(--kn-r-card);overflow:hidden;font-feature-settings:var(--kn-num)}.kn-dt__toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--kn-border)}.kn-dt__hint{font-size:var(--kn-fs-caption);color:var(--kn-text-3);margin-left:auto}.kn-dt__colsbtn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:1px solid var(--kn-border);border-radius:var(--kn-r-ctl);background:transparent;color:var(--kn-text-2);font-family:var(--kn-font-ui);font-size:var(--kn-fs-small);cursor:pointer;transition:border-color var(--kn-dur-fast) var(--kn-ease),color var(--kn-dur-fast) var(--kn-ease)}.kn-dt__colsbtn:hover{border-color:var(--kn-border-strong);color:var(--kn-text)}.kn-dt__colsbtn[aria-expanded=true]{border-color:var(--kn-accent);color:var(--kn-accent-strong)}.kn-dt__colsbtn:focus-visible{outline:none;box-shadow:var(--kn-focus-ring)}.kn-dt__colschev{color:var(--kn-text-3);transition:transform var(--kn-dur-fast) var(--kn-ease)}.kn-dt__colschev[data-open=true]{transform:rotate(180deg)}.kn-dt__colspanel{display:flex;flex-wrap:wrap;gap:8px;width:max-content;max-width:min(560px,calc(100vw - 32px));padding:12px;background:var(--kn-elevated);border:1px solid var(--kn-border);border-radius:var(--kn-r-box);box-shadow:var(--kn-shadow-2)}.kn-dt__colspanel .kn-dt__hint{flex:1 0 100%;margin-left:0}.kn-dt-chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 11px;border:1px solid var(--kn-border);border-radius:var(--kn-r-full);background:transparent;color:var(--kn-text-3);font-family:var(--kn-font-ui);font-size:var(--kn-fs-caption);cursor:pointer;transition:border-color var(--kn-dur-fast) var(--kn-ease),color var(--kn-dur-fast) var(--kn-ease),background var(--kn-dur-fast) var(--kn-ease)}.kn-dt-chip:hover{border-color:var(--kn-border-strong);color:var(--kn-text-2)}.kn-dt-chip[data-on=true]{border-color:var(--kn-accent);background:var(--kn-accent-soft);color:var(--kn-accent-strong)}.kn-dt__scroll{overflow-x:auto;overflow-y:auto;overscroll-behavior:contain}.kn-dt__grid{font-size:var(--kn-fs-small)}.kn-dt__row{display:grid;align-items:center;border-bottom:1px solid var(--kn-border);transition:background var(--kn-dur-fast) var(--kn-ease)}.kn-dt__row:last-child{border-bottom:none}.kn-dt__row[data-selected=true]{background:var(--kn-accent-soft)}.kn-dt__row:not([data-selected=true]):hover{background:var(--kn-surface-2)}.kn-dt__row--head{position:-webkit-sticky;position:sticky;top:0;z-index:var(--kn-z-sticky);border-bottom:1px solid var(--kn-border-strong)}.kn-dt__row--head,.kn-dt__row--head:hover{background:var(--kn-surface)}.kn-dt__cell{padding:var(--kn-cell-py) 14px;min-width:0}.kn-dt__cell--num{font-family:var(--kn-font-mono)}.kn-dt__cell__text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kn-dt__hcell{position:relative;display:flex;align-items:center;gap:6px;padding:10px 14px;min-width:0;font-family:var(--kn-font-mono);font-size:var(--kn-fs-caption);letter-spacing:var(--kn-track-caps);text-transform:uppercase;color:var(--kn-text-3);font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none}.kn-dt__hcell[data-align=right]{justify-content:flex-end}.kn-dt__hcell[data-active=true]{color:var(--kn-accent-strong);font-weight:700}.kn-dt__grip{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:20px;border:none;background:transparent;color:var(--kn-border-strong);font-size:var(--kn-fs-caption);cursor:-webkit-grab;cursor:grab;border-radius:var(--kn-r-xs);touch-action:none;transition:color var(--kn-dur-fast) var(--kn-ease)}.kn-dt__grip:hover{color:var(--kn-text-3)}.kn-dt__grip:active{cursor:-webkit-grabbing;cursor:grabbing}.kn-dt__sort{flex:1 1;min-width:0;display:inline-flex;align-items:center;gap:6px;border:none;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;padding:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--kn-dur-fast) var(--kn-ease)}.kn-dt__hcell[data-align=right] .kn-dt__sort{justify-content:flex-end}.kn-dt__sort--static{cursor:default}.kn-dt__sort:not(.kn-dt__sort--static):hover{color:var(--kn-text)}.kn-dt__glyph{font-size:var(--kn-fs-caption);opacity:.9}.kn-dt__resize{position:absolute;right:-1px;top:0;bottom:0;width:7px;cursor:col-resize;border-right:2px solid transparent;touch-action:none;transition:border-color var(--kn-dur-fast) var(--kn-ease)}.kn-dt__resize:hover{border-right:2px solid var(--kn-accent)}.kn-dt__check{accent-color:var(--kn-accent);width:15px;height:15px;cursor:pointer}.kn-dt__edit{width:100%;font-family:var(--kn-font-ui);color:var(--kn-text);background:var(--kn-surface);border:1px solid var(--kn-accent);border-radius:var(--kn-r-xs);padding:4px 8px;outline:none;box-shadow:var(--kn-focus-ring)}.kn-dt__edit,.kn-dt__selbar{font-size:var(--kn-fs-small)}.kn-dt__selbar{display:flex;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--kn-border);color:var(--kn-text-3)}.kn-dt__selcount{color:var(--kn-accent-strong);font-weight:600}.kn-dt__skelbar{height:12px}.kn-list{list-style:none;margin:0;padding:0;background:var(--kn-surface);border:1px solid var(--kn-border);border-radius:var(--kn-r-card);overflow:hidden}.kn-list--scroll{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}.kn-list__row{display:flex;align-items:center;gap:12px;width:100%;padding:var(--kn-cell-py) 14px;border-bottom:1px solid var(--kn-border);transition:background var(--kn-dur-fast) var(--kn-ease)}.kn-list li:last-child .kn-list__row{border-bottom:none}.kn-list__row[data-selected=true]{background:var(--kn-accent-soft)}.kn-list__row:not([data-selected=true]):hover{background:var(--kn-surface-2)}.kn-list__row--btn{border:none;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}.kn-list__row--check{cursor:pointer}.kn-list__main{flex:1 1;min-width:0;font-size:var(--kn-fs-small);color:var(--kn-text)}.kn-list__meta{margin-left:auto;color:var(--kn-text-3);font-size:var(--kn-fs-small);font-feature-settings:var(--kn-num)}.kn-list__check{accent-color:var(--kn-accent);width:15px;height:15px;cursor:pointer}.kn-list__skel{display:flex;align-items:center;gap:12px;padding:var(--kn-cell-py) 14px;border-bottom:1px solid var(--kn-border)}.kn-tree{background:var(--kn-surface);border:1px solid var(--kn-border);border-radius:var(--kn-r-card);padding:6px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}.kn-tree__item{display:flex;align-items:center;gap:8px;min-height:30px;padding:4px 8px;border-radius:var(--kn-r-ctl);color:var(--kn-text-2);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background var(--kn-dur-fast) var(--kn-ease),color var(--kn-dur-fast) var(--kn-ease)}.kn-tree__item:hover{background:var(--kn-surface-2);color:var(--kn-text)}.kn-tree__item[data-selected=true]{background:var(--kn-accent-soft);color:var(--kn-accent-strong);font-weight:600}.kn-tree__toggle{display:inline-flex;align-items:center;justify-content:center;width:18px;min-width:18px;height:18px;border:none;background:transparent;color:var(--kn-text-3);font-size:var(--kn-fs-caption);cursor:pointer;border-radius:var(--kn-r-xs);transition:transform var(--kn-dur-fast) var(--kn-ease),color var(--kn-dur-fast) var(--kn-ease)}.kn-tree__toggle:hover{color:var(--kn-text)}.kn-tree__toggle[data-open=true]{transform:rotate(90deg)}.kn-tree__spacer{width:18px;min-width:18px}.kn-tree__icon{display:inline-flex;color:var(--kn-text-3);font-size:var(--kn-fs-small)}.kn-tree__label{flex:1 1;min-width:0;font-size:var(--kn-fs-small);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kn-kpi{display:flex;flex-direction:column;gap:10px;background:var(--kn-surface);border:1px solid var(--kn-border);border-radius:var(--kn-r-card);padding:var(--kn-card-pad);min-height:118px}.kn-kpi__body{display:flex;align-items:flex-end;gap:12px}.kn-kpi__value{font-feature-settings:var(--kn-num);font-size:var(--kn-fs-h2);font-weight:700;line-height:1.1;color:var(--kn-text)}.kn-kpi__delta,.kn-kpi__value{font-family:var(--kn-font-mono)}.kn-kpi__delta{font-feature-settings:var(--kn-num);font-size:var(--kn-fs-caption);margin-top:4px;color:var(--kn-text-3)}.kn-kpi__delta[data-tone=good]{color:var(--kn-success)}.kn-kpi__delta[data-tone=bad]{color:var(--kn-danger)}.kn-kpi__spark{margin-left:auto;overflow:visible;flex-shrink:0}.kn-kpi__skel-val{width:96px;height:26px}.kn-kpi__skel-delta{width:54px;height:12px}.kn-chart{display:flex;flex-direction:column;gap:14px;background:var(--kn-surface);border:1px solid var(--kn-border);border-radius:var(--kn-r-card);padding:var(--kn-card-pad)}.kn-chart__head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.kn-chart__title{font-size:var(--kn-fs-body-lg);font-weight:600;color:var(--kn-text);margin:0}.kn-chart__legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-left:auto}.kn-chart__leg-item{display:inline-flex;align-items:center;gap:6px;font-size:var(--kn-fs-caption);color:var(--kn-text-2)}.kn-chart__leg-dot{width:10px;height:10px;min-width:10px;border-radius:var(--kn-r-xs)}.kn-chart__body{min-width:0}.kn-bars{display:flex;flex-direction:column;gap:8px}.kn-bars__row{display:flex;align-items:center;gap:10px}.kn-bars__label{font-size:var(--kn-fs-small);color:var(--kn-text-2);flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kn-bars__track{flex:1 1;min-width:0;display:flex}.kn-bars__bar{height:20px;border-radius:var(--kn-r-xs);min-width:2px;transition:max-width var(--kn-dur) var(--kn-ease)}.kn-bars__val{font-family:var(--kn-font-mono);font-feature-settings:var(--kn-num);font-size:var(--kn-fs-caption);color:var(--kn-text-2);flex-shrink:0;min-width:40px;text-align:right}.kn-cols{width:100%;min-width:0;line-height:0}.kn-cols svg{display:block;max-width:100%}.kn-cols__grid{stroke:var(--kn-border);stroke-width:1}.kn-cols__tick{fill:var(--kn-text-3);font-family:var(--kn-font-mono);font-feature-settings:var(--kn-num);font-size:var(--kn-fs-caption)}}