.ksh,.ksh-state,.ksh-device{min-width:0;font-family:var(--font-ui), system-ui, sans-serif;color:var(--kt-ink);gap:14px;display:grid}.ksh h3,.ksh h4,.ksh h5,.ksh-state h3,.ksh-device h3{color:var(--kt-ink);margin:0}.ksh p,.ksh-state p,.ksh-device p{color:var(--kt-ink-muted);margin:0}.ksh .ksh-guest-link{text-underline-offset:3px;justify-self:start;align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}.ksh button,.ksh select,.ksh input,.ksh-state button,.ksh-device button{border:1px solid var(--kt-line-strong);min-height:44px;font:inherit;border-radius:3px}.ksh button,.ksh-state button,.ksh-device button{background:var(--kt-value-surface);color:var(--kt-on-accent);cursor:pointer;padding:9px 14px}.ksh button:not(.ksh-secondary),.ksh-state button:not(.ksh-secondary),.ksh-device button:not(.ksh-secondary){color:var(--kt-on-accent)}.ksh button:hover:not(:disabled),.ksh-state button:hover:not(:disabled),.ksh-device button:hover:not(:disabled){background:var(--kt-accent-hi)}.ksh button:disabled,.ksh-state button:disabled,.ksh-device button:disabled{cursor:wait;opacity:.65}.ksh button:focus-visible,.ksh select:focus-visible,.ksh input:focus-visible,.ksh summary:focus-visible,.ksh-state button:focus-visible,.ksh-device button:focus-visible{outline:3px solid var(--kt-ink);outline-offset:3px}.ksh-source-head,.ksh-row-head,.ksh-detail-head,.ksh-page{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.ksh-source-head>div,.ksh-row-head>div,.ksh-detail-head>div{min-width:0}.ksh-source-head p,.ksh-row-head p{margin-top:4px}.ksh-empty .ksh-next-game{border:1px solid var(--kt-line-strong);background:var(--kt-value-surface);min-height:44px;color:var(--kt-on-accent);border-radius:3px;justify-content:space-between;align-items:center;gap:24px;margin-top:14px;padding:9px 16px;font-weight:600;text-decoration:none;display:inline-flex}.ksh-empty .ksh-next-game:hover{background:var(--kt-accent-hi)}.ksh-empty .ksh-next-game:focus-visible{outline:3px solid var(--kt-ink);outline-offset:3px}.ksh-empty>button{margin-top:14px}.ksh,.ksh-filters,.ksh-row,.ksh-detail,.ksh-empty,.ksh-state,.ksh-device{border:1px solid var(--kt-line-strong);background:var(--kt-surface-raised)}.ksh,.ksh-device,.ksh-state{padding:16px}.ksh-filters>summary{min-height:44px;color:var(--kt-ink);cursor:pointer;padding:12px 14px;font-weight:700}.ksh-filters form{border-top:1px solid var(--kt-line-faint);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 14px 14px;display:grid}.ksh-filters label{color:var(--kt-ink);gap:5px;padding-top:12px;font-size:.78rem;font-weight:700;display:grid}.ksh select,.ksh input{background:var(--kt-surface);width:100%;color:var(--kt-ink);color-scheme:inherit;padding:8px 10px}.ksh-filter-actions{grid-column:1/-1;align-items:end;gap:10px;padding-top:12px;display:flex}.ksh .ksh-secondary,.ksh-state .ksh-secondary,.ksh-device .ksh-secondary{background:var(--kt-surface-plate);color:var(--kt-ink)}.ksh-list{overscroll-behavior:contain;scrollbar-gutter:stable;gap:12px;max-height:min(60vh,520px);margin:0;padding:0 4px 0 0;list-style:none;display:grid;overflow-y:auto}.ksh-row,.ksh-detail,.ksh-empty{padding:14px}.ksh-row time{max-width:15rem;color:var(--kt-ink-muted);text-align:right;flex:none;font-size:.75rem}.ksh-row-facts,.ksh-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:14px 0;display:grid}.ksh-row-facts>div,.ksh-detail-facts>div{border-top:1px solid var(--kt-line-faint);min-width:0;padding-top:7px}.ksh dt{color:var(--kt-ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:700}.ksh dd{overflow-wrap:anywhere;color:var(--kt-ink);margin:3px 0 0;font-size:.82rem}.ksh code{color:inherit;font-family:var(--font-mono), ui-monospace, monospace}.ksh-page{align-items:center}.ksh-page small{color:var(--kt-ink-muted);text-align:right}.ksh-detail{border-color:var(--kt-line-strong);background:var(--kt-surface-plate)}.ksh-detail-head>div>p{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:700}.ksh-detail-actions{flex-wrap:wrap;gap:10px;display:flex}.ksh-action-error,.ksh-error,.ksh .ksh-action-error{color:var(--kt-negative)}.ksh-action-status,.ksh-replay-message{color:var(--kt-ink)}.ksh-replay-viewer{border:1px solid var(--kt-line-strong);background:var(--kt-surface-raised);gap:14px;margin-top:14px;padding:14px;display:grid}.ksh-replay-viewer h5{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.06em;margin-top:4px;font-size:.78rem}.ksh-replay-events{border-top:1px solid var(--kt-line-faint);color:var(--kt-ink);padding-top:10px}.ksh-replay-events summary{cursor:pointer;min-height:44px;font-weight:700}.ksh-replay-events ol{gap:8px;margin:0;padding-left:2rem;display:grid}.ksh-replay-events li[aria-current=step]{color:var(--kt-ink);font-weight:700}#ksh-replay:focus-visible{outline:3px solid var(--kt-ink);outline-offset:3px}.ksh-empty{text-align:center}@media (max-width:720px){.ksh-source-head,.ksh-row-head,.ksh-detail-head,.ksh-page{flex-direction:column;align-items:stretch}.ksh-source-head button,.ksh-page button{width:100%}.ksh-row time,.ksh-page small{text-align:left;max-width:none}}@media (max-width:420px){.ksh-list{max-height:65vh}.ksh-filters form,.ksh-row-facts,.ksh-detail-facts{grid-template-columns:minmax(0,1fr)}.ksh-filter-actions{flex-direction:column;align-items:stretch}.ksh-filter-actions button{width:100%}}@media (prefers-reduced-motion:reduce){.ksh *,.ksh-state *,.ksh-device *{scroll-behavior:auto;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.ksh,.ksh-state,.ksh-device,.ksh-filters,.ksh-row,.ksh-detail,.ksh-empty,.ksh select,.ksh input{color:canvastext;background:canvas;border-color:canvastext}.ksh button,.ksh-state button,.ksh-device button,.ksh .ksh-secondary{color:buttontext;background:buttonface;border-color:buttontext}.ksh button:focus-visible,.ksh select:focus-visible,.ksh input:focus-visible,.ksh summary:focus-visible,.ksh-state button:focus-visible,.ksh-device button:focus-visible{outline-color:highlight}.ksh p,.ksh dt,.ksh dd,.ksh time,.ksh h3,.ksh h4,.ksh-state p,.ksh-state h3,.ksh-device p,.ksh-device h3,.ksh .ksh-action-error,.ksh .ksh-replay-message{color:canvastext}}