.tr-monitor { overflow: auto; min-height: 0; }
.tr-table-scroll { overflow-x: auto; }
.tr-table-scroll table { min-width: 1100px; font-size: var(--mantine-font-size-sm); }
.tr-table-scroll th { white-space: nowrap; }
.tr-sort-button { font-weight: 600; padding: 4px 0; }
.tr-sort-button:hover { color: var(--mantine-primary-color-filled); }
.tr-sort-button:focus-visible { outline: 2px solid var(--mantine-primary-color-filled); outline-offset: 3px; }
.tr-table-scroll td { vertical-align: top; }
.tr-task-link { color: light-dark(var(--mantine-primary-color-6), var(--mantine-primary-color-2)); overflow-wrap: anywhere; }
.tr-task-link:hover { text-decoration: underline; }
.tr-schedule { border: 1px solid var(--mantine-color-default-border); border-radius: var(--mantine-radius-md); padding: var(--mantine-spacing-md); overflow-x: auto; }
.tr-schedule-grid { min-width: 560px; padding-right: 24px; }
.tr-schedule-row { display: grid; grid-template-columns: 190px 1fr; gap: 20px; align-items: center; min-height: 38px; }
.tr-track { position: relative; height: 30px; background: linear-gradient(to bottom, transparent 14px, var(--mantine-color-default-border) 14px, var(--mantine-color-default-border) 16px, transparent 16px); }
.tr-now { position: absolute; top: 0; bottom: 0; border-left: 2px dashed light-dark(var(--mantine-primary-color-6), var(--mantine-primary-color-2)); opacity: .65; }
.tr-slot { position: absolute; top: 4px; transform: translateX(-50%); }
.tr-scale { position: relative; height: 22px; font-size: var(--mantine-font-size-xs); color: var(--mantine-color-dimmed); }
.tr-scale span { position: absolute; transform: translateX(-50%); }
.tr-interval-label { position: absolute; top: 3px; background: var(--mantine-color-body); padding-right: 8px; }
.tr-json { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 400px; overflow: auto; font-size: 12px; padding: 12px; border-radius: var(--mantine-radius-sm); background: var(--mantine-color-default-hover); }
.tr-wrap { white-space: pre-wrap; overflow-wrap: anywhere; }
.tr-json-panel { position: relative; }
.tr-json-copy { position: absolute; top: 10px; right: 10px; }
.tr-copy-control { display: inline-flex; align-items: center; gap: 6px; }
.tr-copy-button { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; padding: 0; border: 0; border-radius: 4px; background: transparent; color: inherit; cursor: pointer; }
.tr-copy-button:hover { background: var(--mantine-color-default-hover); }
.tr-copy-button:focus-visible { outline: 2px solid var(--mantine-primary-color-filled); outline-offset: 2px; }
.tr-copy-icon { position: relative; width: 16px; height: 16px; }
.tr-copy-icon::before, .tr-copy-icon::after { content: ""; position: absolute; width: 9px; height: 11px; border: 1.5px solid currentColor; border-radius: 1px; }
.tr-copy-icon::before { left: 1px; top: 1px; }
.tr-copy-icon::after { left: 5px; top: 5px; background: var(--mantine-color-body); }
.tr-copy-feedback { max-width: 260px; font-size: 12px; }
.tr-copy-button[data-copy-state="success"] { color: var(--mantine-color-green-7); }
.tr-copy-button[data-copy-state="error"] { color: var(--mantine-color-red-7); }
.tr-copy-manual { display: block; width: 100%; min-height: 80px; color: inherit; background: var(--mantine-color-body); border: 1px solid var(--mantine-color-default-border); }
.tr-json-panel .tr-json { padding-right: 40px; }
.tr-detail-info th { text-align: left; }
.tr-detail-info tbody tr:nth-child(even) { background-color: light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-6)); }
