.kt{--kt-done:color-mix(in srgb, var(--accent-bright) 14%, var(--surface-2));--kt-done-line:color-mix(in srgb, var(--accent-bright) 50%, var(--surface-2));--kt-bad:color-mix(in srgb, var(--fail-bright) 14%, var(--surface-2));flex-direction:column;gap:14px;display:flex}.kt:fullscreen{background:var(--surface);padding:20px 24px;overflow:auto}.kt-bar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.kt-opts{flex-wrap:wrap;gap:12px;display:flex}.kt-status{color:var(--ink-2);align-items:flex-start;gap:9px;margin:0;font-size:.9rem;display:flex}.kt-status>span:last-child{flex:1;min-width:0}.kt-dot{background:var(--accent-bright);width:9px;height:9px;box-shadow:0 0 0 3px var(--accent-line);border-radius:50%;flex:none;margin-top:.42em}.kt-status.paused .kt-dot{background:var(--warn-bright);box-shadow:0 0 0 3px var(--warn-line)}.kt-status.nofocus .kt-dot{background:var(--muted);box-shadow:none}.kt-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.kt-stats .stat{min-width:0}.kt-stats .value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kt-stats .meter{height:8px;margin:4px 0 2px}.kt-stats .meter>span{background:var(--accent-bright);transition:width .15s}.kt-stats .small{overflow-wrap:anywhere}@media (width<=760px){.kt-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.kt-board-wrap{border-radius:var(--r-md);position:relative}.kt-board{padding:4px 0 2px;display:block;overflow-x:auto}.kt-svg{width:100%;height:auto;max-width:calc(var(--units) * 52px);min-width:calc(var(--units) * 27px);-webkit-user-select:none;user-select:none;margin:0 auto;display:block}.kt:fullscreen .kt-svg{max-width:calc(var(--units) * 80px)}.kt-svg .k{cursor:pointer}.kt-svg .ks{fill:var(--line-2)}.kt-svg .kf{fill:var(--surface-2);stroke:var(--line-3);stroke-width:1.5px;transition:fill 80ms,stroke 80ms}.kt-svg .kc{transition:transform 50ms}.kt-svg text{text-anchor:middle;dominant-baseline:central;fill:var(--ink-2);pointer-events:none;font-family:var(--font)}.kt-svg .kl{font-size:19px;font-weight:500}.kt-svg .km{font-size:15px;font-weight:500}.kt-svg .kw{font-size:13.5px;font-weight:500}.kt-svg .ksub{fill:var(--muted);font-size:14px}.kt-svg .kst{text-anchor:start}.kt-svg .kgr{fill:var(--muted);text-anchor:end;font-size:13px}.kt-svg .k:hover .kf{stroke:var(--accent-text)}.kt-svg .k.done .kf{fill:var(--kt-done);stroke:var(--kt-done-line)}.kt-svg .k.done text{fill:var(--accent-text)}.kt-svg .k.on .kc{transform:translateY(4px)}.kt-svg .k.on .kf{fill:var(--accent);stroke:var(--accent-hover)}.kt-svg .k.on text{fill:var(--on-accent)}.kt-svg .k.bad .kf{stroke:var(--fail);stroke-width:3.5px}.kt-svg .k.bad:not(.on) .kf{fill:var(--kt-bad)}.kt-svg .k.bad:not(.on) text{fill:var(--fail)}.kt-svg .k.off{opacity:.4}.kt-svg .k.off .kf{fill:var(--sunken);stroke-dasharray:6 5}.kt-svg .k.nc{cursor:help}.kt-svg .k.nc .kf{fill:var(--sunken);stroke-dasharray:5 4}.kt-svg .k.nc text{fill:var(--muted)}.kt-paused{background:color-mix(in srgb, var(--surface) 88%, transparent);backdrop-filter:blur(2px);border-radius:var(--r-md);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex;position:absolute;inset:0}.kt-paused p{color:var(--ink);margin:0;font-weight:600}.kt-legend{flex-wrap:wrap;align-items:center;gap:6px 16px;margin:-4px 0 0;display:flex}.kt-legend span{align-items:center;gap:6px;display:inline-flex}.kt-sw{border:1.5px solid var(--line-3);background:var(--surface-2);border-radius:4px;width:16px;height:12px;display:inline-block}.kt-sw.done{background:var(--kt-done);border-color:var(--kt-done-line)}.kt-sw.on{background:var(--accent);border-color:var(--accent-hover)}.kt-sw.bad{background:var(--kt-bad);border-color:var(--fail)}.kt-sw.off{background:var(--sunken);border-style:dashed}.kt-extra{flex-wrap:wrap;align-items:center;gap:8px;font-size:.9rem;display:flex}.kt-held{min-height:28px;margin-top:8px}.kt-big{font:600 1.6rem/1.2 var(--mono);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}.kt-row{flex-wrap:wrap;align-items:baseline;gap:18px;display:flex}.kt-row>div{flex-direction:column;display:flex}.kt-row .label{font:600 11px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.kt-inline{color:var(--ink-2);align-items:center;gap:8px;font-size:.92rem;display:inline-flex}.kt-inline select{padding:5px 8px}.kt>.limits-host>.limits:first-child{margin-top:0}.kt-sound select{padding:5px 8px}.kt-timing .tabs{margin-bottom:12px}.kt-how{color:var(--ink-2);max-width:75ch;margin:0 0 12px;font-size:.93rem}.kt-tstats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:4px;display:grid}.kt-tstats .stat{background:var(--surface)}.kt-tstats .value{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (width<=760px){.kt-tstats{grid-template-columns:repeat(2,minmax(0,1fr))}}.kt-timing .kt-inline{flex-wrap:wrap;margin:4px 0 8px}.kt-hist{border-bottom:1px solid var(--line-3);align-items:flex-end;gap:1px;height:96px;margin-top:12px;display:flex}.kt-hist>span{background:var(--accent-bright);border-radius:2px 2px 0 0;flex:1;min-width:0}.kt-hist>span.bad{background:var(--fail-bright)}.kt-axis{font:.78rem var(--mono);color:var(--muted);justify-content:space-between;margin:3px 0 0;display:flex}.kt-more{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.kt-h3{flex-wrap:wrap;align-items:baseline;gap:10px;margin:0 0 6px;font-size:.98rem;display:flex}.kt-table-wrap{margin-top:12px;overflow-x:auto}.kt-keytable td,.kt-keytable th{white-space:nowrap}.kt-keytable td:not(:first-child){font-family:var(--mono);font-variant-numeric:tabular-nums}.kt-combos{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.kt-combos li{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label state""keys keys";align-items:center;gap:6px 12px;padding:10px 12px;display:grid}.kt-combo-label{grid-area:label;font-weight:500}.kt-combo-state{color:var(--muted);grid-area:state;font-size:.85rem}.kt-combo-keys{flex-wrap:wrap;grid-area:keys;gap:4px;display:flex}.kt-combo-keys .kbd.on{background:var(--accent);border-color:var(--accent-hover);color:var(--on-accent)}.kt-combos li.pass{border-color:var(--accent-line);background:var(--accent-soft)}.kt-combos li.pass .kt-combo-state{color:var(--accent-text);font-weight:600}.kt-speed-opts{margin:0 0 12px}.kt-socd-live{flex-wrap:wrap;gap:8px 18px;margin:0 0 4px;padding:0;list-style:none;display:flex}.kt-socd-live li{gap:4px;display:flex}.kt-socd-live .kbd.on,.kt-combo-keys .kbd.on{background:var(--accent);border-color:var(--accent-hover);color:var(--on-accent)}.kt-svg .klat{fill:var(--muted);text-anchor:end;font-size:12px}.kt-shared{--kt-done:color-mix(in srgb, var(--accent-bright) 22%, var(--surface));--kt-done-line:color-mix(in srgb, var(--accent-bright) 55%, var(--surface));--kt-bad:color-mix(in srgb, var(--fail-bright) 22%, var(--surface));flex-direction:column;gap:10px;display:flex}.kt-shared-layout{color:var(--ink-2);margin:0;font-size:.9rem}.kt-shared-board{width:100%;height:auto;display:block}.kt-shared-key{fill:var(--surface);stroke:var(--line-3);stroke-width:1px}.kt-shared-key.done{fill:var(--kt-done);stroke:var(--kt-done-line)}.kt-shared-key.bad{fill:var(--kt-bad);stroke:var(--fail);stroke-width:1.6px}.kt-shared-key.off{fill:var(--sunken);stroke-dasharray:3 2;opacity:.6}.kt-shared-key.nc{fill:var(--sunken);stroke-dasharray:3 2}.kt-shared-legend{color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin:0;font-size:.82rem;display:flex}.kt-shared-legend span{align-items:center;gap:6px;display:inline-flex}.kt-shared-sw{border:1.5px solid var(--line-3);background:var(--surface);border-radius:3px;width:14px;height:10px;display:inline-block}.kt-shared-sw.done{background:var(--kt-done);border-color:var(--kt-done-line)}.kt-shared-sw.bad{background:var(--kt-bad);border-color:var(--fail)}.kt-shared-sw.off{background:var(--sunken);border-style:dashed}.kt-shared-rows{flex-direction:column;gap:8px;margin:4px 0 0;display:flex}.kt-shared-rows>div{grid-template-columns:minmax(0,10em) minmax(0,1fr);gap:2px 12px;display:grid}.kt-shared-rows dt{color:var(--muted);font-size:.9rem}.kt-shared-rows dd{color:var(--ink);margin:0;font-size:.92rem}.kt-shared-rows .bad dd{color:var(--fail)}.kt-shared-list{margin:0;padding-left:1.2em}@media (width<=480px){.kt-shared-rows>div{grid-template-columns:minmax(0,1fr)}}
