@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);:root{--bg-primary:#0d1117;--bg-secondary:#161b22;--bg-tertiary:#21262d;--bg-hover:#30363d;--border-color:#30363d;--border-light:#21262d;--text-primary:#e6edf3;--text-secondary:#8b949e;--text-muted:#6e7681;--accent-blue:#58a6ff;--accent-green:#3fb950;--accent-green-bg:#2ea04333;--accent-red:#f85149;--accent-yellow:#d29922;--accent-purple:#a371f7;--status-success:#238636;--status-success-text:#3fb950;--nav-height:48px;--nav-bg:#1a1e26;--nav-border:#ffffff14;--row-hover:#ffffff0f}[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f6f8fa;--bg-tertiary:#eaeef2;--bg-hover:#d0d7de;--border-color:#d0d7de;--border-light:#eaeef2;--text-primary:#1f2328;--text-secondary:#656d76;--text-muted:#8b949e;--accent-blue:#0969da;--accent-green:#1a7f37;--accent-green-bg:#1a7f371a;--accent-red:#cf222e;--accent-yellow:#9a6700;--accent-purple:#8250df;--status-success:#1a7f37;--status-success-text:#1a7f37;--nav-bg:#fff;--nav-border:#00000014;--row-hover:#0000000a}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0d1117;background-color:var(--bg-primary);color:#e6edf3;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#161b22;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#30363d;background:var(--bg-hover);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#6e7681;background:var(--text-muted)}.entity-filters{flex-shrink:0;margin-bottom:.25rem;padding:0}.filters-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.filters-header h3{display:none}.add-filter-btn{background:var(--accent-blue);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .15s ease}.add-filter-btn:hover:not(:disabled){background:#4090e0}.add-filter-btn:disabled{background:var(--bg-hover);color:var(--text-muted);cursor:not-allowed}.filters-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:1rem;text-align:center}.filters-loading .loading-spinner{animation:spin 1s linear infinite;border-top:4px solid var(--bg-tertiary);border:4px solid var(--bg-tertiary);border-radius:50%;border-top-color:var(--accent-blue);display:inline-block;height:2.5rem;width:2.5rem}.filters-loading .loading-text{color:var(--text-secondary);font-size:.875rem}.no-filters{display:none}.filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.375rem}.filter-attribute-select,.filter-operator-select{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);cursor:pointer;font-size:.8125rem;min-width:120px;padding:.375rem .5rem}.filter-attribute-select:focus,.filter-operator-select:focus{border-color:var(--accent-blue);outline:none}.filter-value-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);flex:1 1;font-size:.8125rem;min-width:120px;padding:.375rem .5rem}.filter-value-input::placeholder{color:var(--text-muted)}.filter-value-input:focus{border-color:var(--accent-blue);outline:none}.remove-filter-btn{align-items:center;background:#f851491a;border:1px solid #f851494d;border-radius:6px;color:var(--accent-red);cursor:pointer;display:flex;font-size:1.1rem;height:32px;justify-content:center;line-height:1;transition:all .15s ease;width:32px}.remove-filter-btn:hover{background:#f8514933;border-color:#f8514980}.apply-filters-btn{background:var(--accent-green);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;margin-top:.5rem;padding:.5rem 1.25rem;transition:all .15s ease}.apply-filters-btn:hover{background:#36a347}.clear-filters-btn{background:#0000;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.875rem;margin-left:.5rem;margin-top:.5rem;padding:.5rem 1rem;transition:all .15s ease}.clear-filters-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.preset-filters{display:flex;flex-wrap:wrap;gap:.375rem;margin-bottom:.5rem}.preset-filter-pill{align-items:center;background:#2d333b;background:var(--bg-tertiary,#2d333b);border:1px solid #444c56;border:1px solid var(--border-color,#444c56);border-radius:12px;color:#8b949e;color:var(--text-secondary,#8b949e);display:inline-flex;font-size:.75rem;padding:.1875rem .625rem;white-space:nowrap}.entity-table-container{display:flex;flex:1 1;flex-direction:column;min-height:0}.table-controls{align-items:center;display:flex;flex-shrink:0;gap:1rem;justify-content:space-between;padding:.375rem 0}.search-container{align-items:center;display:flex;flex:1 1;gap:.75rem;max-width:500px}.search-input-wrapper{flex:1 1;position:relative}.search-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.875rem;padding:.6rem 2.5rem .6rem 1rem;transition:border-color .15s ease;width:100%}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:var(--accent-blue);outline:none}.search-btn{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;justify-content:center;padding:.6rem 1rem;transition:all .15s ease}.search-btn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.search-btn svg{height:16px;width:16px}.table-controls-right{align-items:center;display:flex;gap:1rem}.filter-dropdown{position:relative}.filter-dropdown-btn{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.6rem 1rem;transition:all .15s ease}.filter-dropdown-btn:hover{border-color:var(--text-muted)}.filter-dropdown-btn svg{height:12px;opacity:.7;width:12px}.pagination-info{white-space:nowrap}.limit-control label,.pagination-info{color:var(--text-secondary);font-size:.875rem}.limit-control label{align-items:center;display:flex;gap:.5rem}.limit-select{background:var(--bg-primary);cursor:pointer;font-size:.875rem;padding:.4rem .6rem}.limit-select:focus{border-color:var(--accent-blue);outline:none}.table-wrapper{flex:1 1;min-height:0;overflow-x:auto}.entity-table{border-collapse:collapse;font-size:.875rem;width:100%}.entity-table thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.entity-table th{background:#0000;border-bottom:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;font-size:.75rem;font-weight:500;letter-spacing:.05em;padding:.4rem .75rem;text-align:left;text-transform:uppercase;transition:color .15s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.entity-table th:hover{color:var(--text-primary)}.entity-table th.sortable{cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.entity-table th.sortable:hover{background:#ffffff0a}.entity-table th .sort-indicator{display:inline-block;font-size:.75rem;margin-left:.375rem;opacity:.4;transition:opacity .15s ease,color .15s ease}.entity-table th.sortable:hover .sort-indicator{opacity:.7}.entity-table th.sortable .sort-indicator.sort-asc,.entity-table th.sortable .sort-indicator.sort-desc{color:var(--accent-blue);font-weight:700;opacity:1}.entity-table th.sorted{color:var(--accent-blue)}.entity-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:.8125rem;max-width:250px;overflow:hidden;padding:.35rem .75rem;text-overflow:ellipsis;white-space:nowrap}.entity-table tbody tr{transition:background-color .2s ease}.entity-table tbody tr:hover{background:var(--row-hover)}.entity-id,.entity-table tbody tr.clickable-row{cursor:pointer}.entity-id{border-radius:4px;color:var(--accent-blue);font-weight:600;margin:-.125rem -.375rem;padding:.125rem .375rem;text-decoration:none;transition:all .15s ease}.entity-id:hover{background:#58a6ff1a;text-decoration:underline}.table-link{color:var(--accent-blue);cursor:pointer;text-decoration:none;transition:all .15s ease}.table-link:hover{color:#79b8ff;text-decoration:underline}.reference-link{align-items:center;border-radius:4px;color:var(--accent-blue);cursor:pointer;display:inline-flex;gap:.25rem;margin:-.125rem -.375rem;padding:.125rem .375rem;text-decoration:none;transition:all .15s ease}.reference-link:hover{background:#58a6ff1a;text-decoration:underline}.reference-link:after{content:"→";font-size:.75rem;opacity:0;transform:translateX(-4px);transition:all .15s ease}.reference-link:hover:after{opacity:.7;transform:translateX(0)}.status-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.status-badge.success{background:var(--status-success);color:var(--status-success-text)}.status-badge.synced{background:var(--status-success);color:#fff}.status-badge.pending{background:#d2992233;color:var(--accent-yellow)}.status-badge.error{background:#f8514933;color:var(--accent-red)}.more-attributes{color:var(--text-muted);font-style:italic;text-align:center}.table-loading{align-items:center;display:flex;flex-direction:column;gap:1rem}.table-empty,.table-loading{padding:3rem;text-align:center}.table-empty{color:var(--text-secondary)}.pagination-controls{align-items:center;display:flex;flex-shrink:0;gap:.5rem;justify-content:center;padding:.5rem 0}.pagination-btn{transition:all .15s ease}.pagination-btn:hover:not(:disabled){border-color:var(--text-muted)}.page-info{font-size:.875rem;padding:0 .5rem}.null-value{color:var(--text-muted);font-style:italic}.ss-container{border:1px solid var(--border-color);border-radius:6px;max-width:100%;outline:none;overflow:hidden;width:-webkit-fit-content;width:fit-content}.ss-container:focus-visible{box-shadow:0 0 0 2px #58a6ff4d}.ss-scroll{max-height:500px;overflow:auto}.ss-table{border-collapse:collapse;font-family:SF Mono,Consolas,Monaco,monospace;font-size:.6875rem;user-select:none;-webkit-user-select:none;white-space:nowrap}.ss-corner{border-right:1px solid var(--border-color);cursor:default;left:0;min-width:36px;z-index:3}.ss-col-header,.ss-corner{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);position:-webkit-sticky;position:sticky;top:0}.ss-col-header{border-right:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;font-size:.625rem;font-weight:600;letter-spacing:.5px;min-width:70px;padding:.25rem .5rem;text-align:center;text-transform:uppercase;z-index:2}.ss-col-header:hover{background:var(--bg-hover)}.ss-col-header.ss-col-selected{background:#58a6ff26;color:var(--accent-blue)}.ss-row-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-light);border-right:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;font-size:.625rem;font-weight:600;left:0;min-width:36px;padding:.25rem .375rem;position:-webkit-sticky;position:sticky;text-align:center;z-index:1}.ss-row-header:hover{background:var(--bg-hover)}.ss-row-header.ss-row-selected{background:#58a6ff26;color:var(--accent-blue)}.ss-cell{border-bottom:1px solid var(--border-light);border-right:1px solid var(--border-light);color:var(--text-primary);cursor:cell;padding:.25rem .5rem;position:relative}.ss-cell.ss-selected{background:#58a6ff26!important}.ss-cell.ss-sel-top{border-top:2px solid var(--accent-blue)}.ss-cell.ss-sel-bottom{border-bottom:2px solid var(--accent-blue)}.ss-cell.ss-sel-left{border-left:2px solid var(--accent-blue)}.ss-cell.ss-sel-right{border-right:2px solid var(--accent-blue)}tr.ss-row-type-header td.ss-cell{background:#58a6ff14;color:var(--accent-blue);font-weight:600}tr.ss-row-type-header td.ss-row-header{background:#58a6ff1f}tr.ss-row-type-unit td.ss-cell{background:#a371f70f;color:var(--text-secondary);font-style:italic}tr.ss-row-type-unit td.ss-row-header{background:#a371f71a}tr.ss-row-type-sample td.ss-cell{background:var(--bg-primary)}tr.ss-row-type-label td.ss-cell{background:#d299220f;color:var(--text-secondary)}tr.ss-row-type-label td.ss-row-header{background:#d299221a}tr.ss-row-type-computed td.ss-cell{background:#3fb9500f;font-weight:600}tr.ss-row-type-computed td.ss-row-header{background:#3fb9501a}tr td.ss-cell.ss-cell-changed{background:#3fb9502e}tr td.ss-cell.ss-cell-added{background:#3fb9501f}tr td.ss-cell.ss-cell-removed{background:#f8514926;color:var(--text-muted);text-decoration:line-through}tr.ss-row-added td.ss-cell{background:#3fb9501f}tr.ss-row-changed td.ss-cell{background:#3fb9502e}tr.ss-row-removed td.ss-cell{background:#f8514926;color:var(--text-muted);text-decoration:line-through}.ss-empty{color:var(--text-secondary);font-size:.8125rem;padding:2rem;text-align:center}.ws-outer{display:flex;flex-direction:column;gap:0}.ws-sheet-tabs{background:var(--bg-tertiary);border:1px solid var(--border-color);border-bottom:none;border-radius:6px 6px 0 0;display:flex;gap:0}.ws-sheet-tabs+.ss-container{border-top-left-radius:0;border-top-right-radius:0}.ws-sheet-tab{background:none;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:.75rem;font-weight:500;padding:.375rem .75rem;transition:color .15s ease,border-color .15s ease}.ws-sheet-tab.active,.ws-sheet-tab:hover{color:var(--text-primary)}.ws-sheet-tab.active{background:var(--bg-secondary);border-bottom-color:var(--accent-blue)}.ws-empty{color:var(--text-secondary);font-size:.8125rem;padding:2rem;text-align:center}.rv-container{align-items:flex-start;display:flex;flex-direction:row;gap:1.25rem}.rv-section{display:flex;flex-direction:column;gap:.5rem}.rv-section-raw{flex:1 1;min-width:0;overflow-x:auto}.rv-section-reported{flex:0 0 auto;max-width:280px;min-width:160px}.rv-section-title{color:var(--text-primary);font-size:.8125rem;font-weight:600;margin:0}.rv-cal-status{border-radius:9999px;display:inline-block;font-size:.625rem;font-weight:600;padding:.0625rem .375rem;text-transform:capitalize}.rv-cal-inrange{background:#3fb95026;color:var(--accent-green)}.rv-cal-underrange{background:#d2992226;color:var(--accent-yellow)}.rv-cal-overrange{background:#f8514926;color:var(--accent-red)}.rv-cal-range{font-family:SF Mono,Consolas,monospace;font-size:.75rem}.rv-cal-range,.rv-empty{color:var(--text-secondary)}.rv-empty{font-size:.8125rem;padding:2rem;text-align:center}.entity-detail-page{box-sizing:border-box;min-height:0;overflow-y:visible;padding:.75rem 0 0;width:100%}.entity-detail-container{display:flex;flex-direction:column}.entity-detail-header-row{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;margin-bottom:.5rem;padding-bottom:.5rem}.entity-detail-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0;white-space:nowrap}.entity-detail-header{align-items:center;display:flex;justify-content:space-between;padding:0 0 .5rem}.header-actions{gap:.5rem}.header-actions,.history-btn{align-items:center;display:flex}.history-btn{background:var(--accent-blue);border:1px solid var(--accent-blue);border-radius:4px;color:#fff;cursor:pointer;font-size:.75rem;gap:.375rem;line-height:1;padding:.25rem .5rem;transition:all .15s ease}.history-btn:hover{background:var(--accent-blue);border-color:var(--accent-blue);opacity:.85}.entity-detail-header h2{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0}.close-btn{align-items:center;display:flex;font-size:.75rem;gap:.375rem;line-height:1;padding:.25rem .5rem;transition:all .15s ease}.close-btn:hover{background-color:var(--bg-hover)}.entity-detail-tabs{display:inline-flex;gap:0;margin-left:auto;margin-right:1rem}.entity-detail-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;display:flex;font-family:inherit;font-size:.75rem;font-weight:500;gap:.375rem;padding:.375rem .75rem;transition:color .15s ease,border-color .15s ease}.entity-detail-tab:hover{color:var(--text-primary)}.entity-detail-tab.active{border-bottom-color:var(--accent-blue);color:var(--text-primary)}.entity-detail-tab .tab-count{color:var(--text-muted);font-size:.6875rem;font-weight:400}.entity-detail-tab.active .tab-count{color:var(--text-secondary)}.entity-detail-tab-content{flex:1 1;padding:0}.entity-detail-content{flex:1 1;padding:.75rem 1rem}.entity-detail-section{margin-bottom:.5rem}.entity-detail-section:last-child{margin-bottom:0}.entity-detail-section h3{color:var(--text-primary);font-size:.8125rem;font-weight:600;margin:0 0 .25rem}.section-description{color:var(--text-secondary);font-size:.75rem;font-style:italic;margin:0 0 .5rem}.detail-row{border-bottom:1px solid var(--border-light);display:flex;padding:.1875rem 0}.detail-row:last-child{border-bottom:none}.detail-label{color:var(--text-secondary);font-size:.8125rem;font-weight:500;margin-right:.75rem;min-width:90px}.detail-value{color:var(--text-primary);flex:1 1;font-size:.8125rem}.entity-attributes-table{border-collapse:collapse;margin-top:.375rem;width:100%}.entity-attributes-table thead{background-color:var(--bg-tertiary)}.entity-attributes-table th{border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:.4rem .5rem;text-align:left;text-transform:uppercase;vertical-align:middle}.entity-attributes-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:.8125rem;padding:.4rem .5rem;vertical-align:middle}.entity-attributes-table tbody tr:hover{background-color:var(--bg-tertiary)}.entity-attributes-table tbody tr.null-row{opacity:.5}.entity-attributes-table tbody tr.null-row:hover{opacity:.7}.attr-name-cell{min-width:140px}.attr-name-cell .attr-name{color:var(--text-primary);font-family:SF Mono,Consolas,monospace;font-size:.8125rem;font-weight:500}.attr-description-small{color:var(--text-muted);font-size:.6875rem;font-style:italic;margin-top:.125rem}.attr-value-cell{max-width:500px;word-break:break-word}.attr-value-cell.empty{color:var(--text-muted)}.attr-value-cell .json-value{word-wrap:break-word;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;font-family:SF Mono,Consolas,monospace;font-size:.75rem;margin:0;max-height:100px;overflow-y:auto;padding:.375rem;white-space:pre-wrap}.empty-value{color:var(--text-muted)}.empty-value,.no-attributes{font-size:.8125rem;font-style:italic}.no-attributes{color:var(--text-secondary);padding:1rem;text-align:center}.entity-detail-empty,.entity-detail-error,.entity-detail-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;text-align:center}.entity-detail-error{color:var(--accent-red);font-size:.875rem}.reference-indicator{color:var(--accent-blue);display:inline-block;font-size:.6875rem;font-style:italic;font-weight:400;margin-left:.375rem}.entity-link{align-items:center;background:#58a6ff1a;border:none;border-radius:4px;color:var(--accent-blue);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.8125rem;font-weight:500;gap:.1875rem;padding:.1875rem .375rem;text-decoration:none;transition:all .15s ease}.entity-link:after{content:"→";font-size:.75em;opacity:.5;transition:all .15s ease}.entity-link:hover{background:#58a6ff33;color:#79b8ff}.entity-link:hover:after{opacity:1;transform:translateX(2px)}.entity-link-button{background:var(--accent-blue);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8125rem;margin-bottom:.375rem;padding:.25rem .5rem;transition:background-color .15s ease}.entity-link-button:hover{background:#4090e0}.relationship-table{border-collapse:collapse;font-size:.8125rem;margin-bottom:1rem;width:100%}.relationship-table thead{background:var(--bg-tertiary)}.relationship-table th{border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:.4rem .5rem;text-align:left;text-transform:uppercase}.relationship-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);padding:.4rem .5rem}.relationship-table tbody tr:hover{background:var(--bg-tertiary)}.relationship-group{margin-bottom:1rem}.relationship-group-heading{font-weight:600;margin:0 0 .375rem}.no-relationships,.relationship-group-heading{color:var(--text-secondary);font-size:.8125rem}.no-relationships{font-style:italic;padding:1rem;text-align:center}.see-all-link{margin-top:.5rem}.see-all-button{background:#0000;border:1px solid var(--accent-blue);border-radius:4px;color:var(--accent-blue);cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:500;padding:.375rem .75rem;transition:all .15s ease}.see-all-button:hover{background:#58a6ff1a;border-color:var(--accent-blue)}.entity-events-table{border-collapse:collapse;font-size:.8125rem;width:100%}.entity-events-table thead{background:var(--bg-tertiary)}.entity-events-table th{border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:.5rem .75rem;text-align:left;text-transform:uppercase;white-space:nowrap}.entity-events-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);padding:.5rem .75rem;white-space:nowrap}.entity-events-table tbody tr:hover{background:var(--bg-tertiary)}.events-empty-state{color:var(--text-secondary);font-size:.8125rem;padding:2rem;text-align:center}.entity-meta-strip{border-bottom:1px solid var(--border-light);color:var(--text-muted);display:flex;font-size:.75rem;gap:1.5rem;margin-bottom:.375rem;padding:.375rem 0}.meta-item{white-space:nowrap}.entity-view{padding:.75rem 1rem}.entity-view,.entity-view-header{display:flex;flex-direction:column}.entity-view-header{flex-shrink:0;gap:0;margin-bottom:.5rem}.entity-view-subtitle{display:none}.view-tabs-container{margin-bottom:1.5rem}.view-tabs{background:var(--bg-secondary);border-radius:6px;display:inline-flex;padding:4px}.view-tab{background:#0000;border-radius:4px;padding:.5rem 1rem;transition:all .15s ease}.view-tab.active{background:var(--bg-tertiary)}.error-message{background:#f851491a;border-radius:6px;font-size:.875rem;margin-top:.75rem;padding:.75rem 1rem}.recent-activity-strip{border-top:1px solid var(--border-color);flex-shrink:0;margin-top:.5rem}.recent-activity-toggle{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.8125rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:color .15s ease;width:100%}.recent-activity-toggle:hover{color:var(--text-primary)}.toggle-arrow{font-size:.625rem;transition:transform .15s ease}.toggle-arrow.open{transform:rotate(90deg)}.recent-activity-list{border-top:1px solid var(--border-light)}.recent-activity-item{align-items:center;cursor:pointer;display:flex;font-size:.8125rem;gap:.75rem;padding:.375rem 1rem;transition:background .1s ease}.recent-activity-item:hover{background:var(--bg-tertiary)}.activity-action{border-radius:3px;display:inline-flex;font-size:.6875rem;font-weight:500;padding:.125rem .375rem;text-transform:lowercase}.activity-action.created{background:#3fb95026;color:var(--accent-green)}.activity-action.updated{background:#58a6ff26;color:var(--accent-blue)}.activity-action.deleted{background:#f8514926;color:var(--accent-red)}.activity-entity{color:var(--accent-blue);font-weight:500}.activity-attrs,.activity-time{color:var(--text-muted);font-size:.75rem}.activity-time{margin-left:auto;white-space:nowrap}.entity-detail-wrapper{padding:.75rem 1rem}.attribute-management{display:flex;flex-direction:column;height:100vh;overflow:hidden;padding:.75rem 1rem}.attribute-management-header{align-items:center;display:flex;flex-shrink:0;gap:1rem;margin-bottom:.5rem}.attribute-management-subtitle{display:none}.attr-count-info{color:var(--text-muted);font-size:.8125rem}.btn-add{background-color:var(--accent-blue);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8125rem;font-weight:500;margin-left:auto;padding:.375rem .75rem;transition:background-color .15s ease}.btn-add:hover{background-color:#4090e0}.error-message{background-color:#f851491a;border:1px solid #f851494d;border-radius:4px;color:var(--accent-red);flex-shrink:0;font-size:.8125rem;margin-bottom:.5rem;padding:.375rem .75rem}.attribute-form-container{border-bottom:1px solid var(--border-color);flex-shrink:0;margin-bottom:.5rem;padding:.75rem 0}.attribute-form h2{color:var(--text-primary);font-size:.9375rem;font-weight:600;margin:0 0 .75rem}.form-group{margin-bottom:.75rem}.form-group label{color:var(--text-secondary);display:block;font-size:.8125rem;font-weight:500;margin-bottom:.25rem}.form-group input,.form-group select,.form-group textarea{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:.8125rem;padding:.4rem .5rem;transition:border-color .15s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-blue);outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:disabled{background-color:var(--bg-tertiary);color:var(--text-muted);cursor:not-allowed}.form-group textarea{min-height:80px;resize:vertical}.form-hint{color:var(--text-muted);display:block;font-size:.8125rem;font-style:italic;margin-top:.375rem}.form-actions{display:flex;gap:.5rem;margin-top:.75rem}.btn-primary,.btn-secondary{border:none;border-radius:4px;cursor:pointer;font-size:.8125rem;font-weight:500;padding:.375rem .75rem;transition:all .15s ease}.btn-primary{background-color:var(--accent-blue);color:#fff}.btn-primary:hover{background-color:#4090e0}.btn-secondary{background-color:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background-color:var(--bg-hover);border-color:var(--text-muted)}.attributes-table-container{flex:1 1;min-height:0;overflow-y:auto}.empty-state{color:var(--text-secondary);font-size:.875rem;padding:3rem 1.5rem;text-align:center}.empty-state p{margin:.5rem 0}.attributes-table{border-collapse:collapse;width:100%}.attributes-table thead{background-color:var(--bg-tertiary);position:-webkit-sticky;position:sticky;top:0;z-index:10}.attributes-table th{border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-weight:500;text-align:left}.attributes-table td,.attributes-table th{font-size:.8125rem;padding:.4rem .5rem;vertical-align:middle}.attributes-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary)}.attributes-table tbody tr:hover{background-color:var(--bg-tertiary)}.attr-name{color:var(--text-primary);font-family:SF Mono,Consolas,monospace;font-size:.8125rem;font-weight:500}.data-type-badge{border-radius:9999px;display:inline-block;font-size:.625rem;font-weight:600;letter-spacing:.5px;padding:.0625rem .375rem;text-transform:uppercase}.data-type-badge[data-type=text]{background-color:#58a6ff26;color:var(--accent-blue)}.data-type-badge[data-type=number]{background-color:#a371f726;color:var(--accent-purple)}.data-type-badge[data-type=boolean]{background-color:#3fb95026;color:var(--accent-green)}.data-type-badge[data-type=date]{background-color:#d2992226;color:var(--accent-yellow)}.data-type-badge[data-type=json]{background-color:#f8514926;color:var(--accent-red)}.entity-reference-badge{color:var(--accent-blue);display:inline-block;font-size:.6875rem;font-style:italic;font-weight:400}.attr-references{color:var(--text-muted);font-size:.8125rem}.attr-description{color:var(--text-secondary);font-size:.8125rem;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attr-date{color:var(--text-muted);font-size:.75rem}.attr-actions{display:flex;gap:.375rem}.btn-delete,.btn-edit{border:none;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500;padding:.25rem .5rem;transition:all .15s ease}.btn-edit{background-color:#d2992226;border:1px solid #d299224d;color:var(--accent-yellow)}.btn-edit:hover{background-color:#d2992240;border-color:#d2992280}.btn-delete{background-color:#f851491a;border:1px solid #f851494d;color:var(--accent-red)}.btn-delete:hover{background-color:#f8514933;border-color:#f8514980}.loading-container{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:2rem;text-align:center}.loading-spinner{border-top:4px solid var(--bg-tertiary);border:4px solid var(--bg-tertiary);height:2.5rem;width:2.5rem}.loading-text{font-size:.9375rem}.entity-history-page{background:var(--bg-primary);box-sizing:border-box;flex:1 1;min-height:0;overflow-y:visible;padding:.75rem 1rem}.entity-history-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:.5rem;padding-bottom:.375rem}.history-stats-inline{color:var(--text-muted);font-size:.75rem;margin-left:auto;margin-right:.75rem;white-space:nowrap}.close-btn{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);cursor:pointer;flex-shrink:0;font-size:.8125rem;padding:.3rem .625rem;transition:background .15s ease,border-color .15s ease}.close-btn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.timeline{border-left:2px solid var(--border-color);margin-left:.25rem;padding-left:1.5rem;position:relative}.time-delta{align-items:center;display:flex;margin-left:-1.5rem;padding:.125rem 0 .125rem 1.5rem;position:relative}.time-delta-text{background:var(--bg-tertiary);border-radius:9999px;color:var(--text-muted);font-size:.6875rem;letter-spacing:.02em;padding:.125rem .5rem;position:relative;white-space:nowrap;z-index:1}.time-delta:before{border-top:1px dashed var(--border-color);content:"";height:1px;left:1.5rem;position:absolute;right:0;top:50%;z-index:0}.tl-entry{padding:.25rem 0;position:relative}.tl-dot{border-radius:50%;height:6px;left:-1.75rem;position:absolute;top:.75rem;width:6px;z-index:2}.tl-dot-blue{background:var(--accent-blue)}.tl-dot-green{background:var(--accent-green)}.tl-dot-yellow{background:var(--accent-yellow)}.tl-dot-red{background:var(--accent-red)}.tl-entry.tl-creation .tl-dot{box-shadow:0 0 0 2px var(--bg-primary),0 0 0 3px var(--accent-blue);height:10px;left:-1.77rem;top:.6rem;width:10px}.tl-entry.tl-creation .tl-label{color:var(--accent-blue);font-weight:600}.tl-body{border-left:2px solid var(--border-color);padding-left:.625rem}.tl-entry.tl-event .tl-body{background:#3fb9500d;border-left-color:var(--accent-green);border-radius:0 4px 4px 0;padding:.375rem .625rem}.tl-entry.tl-event-skipped .tl-body{background:#d299220d;border-left-color:var(--accent-yellow)}.tl-entry.tl-event-error .tl-body{background:#f851490d;border-left-color:var(--accent-red)}.tl-head{align-items:baseline;display:flex;gap:.75rem;justify-content:space-between}.tl-label{align-items:center;color:var(--text-primary);display:inline-flex;font-size:.8125rem;font-weight:500;gap:.375rem}.tl-type-icon{flex-shrink:0;opacity:.6}.tl-entry.tl-event .tl-type-icon{color:var(--accent-green);opacity:.8}.tl-entry.tl-creation .tl-type-icon{color:var(--accent-blue);opacity:.8}.tl-entry.tl-snapshot:not(.tl-creation) .tl-type-icon{color:var(--text-muted)}.tl-meta{align-items:baseline;display:flex;flex-shrink:0;gap:.625rem}.tl-version{font-feature-settings:"tnum";color:var(--text-secondary);font-size:.75rem;font-variant-numeric:tabular-nums;font-weight:600}.tl-time{font-feature-settings:"tnum";color:var(--text-muted);font-size:.6875rem;font-variant-numeric:tabular-nums}.tl-changes{border-top:1px solid var(--border-color);margin-top:.25rem;padding-top:.25rem}.tl-change-row{align-items:baseline;display:flex;font-size:.8125rem;gap:.375rem;line-height:1.5;padding:.0625rem 0}.tl-attr{color:var(--text-secondary);flex-shrink:0;font-family:SF Mono,Consolas,Monaco,monospace;font-size:.75rem}.tl-eq{color:var(--text-muted);flex-shrink:0}.tl-val{color:var(--accent-green)}.tl-val,.tl-val-old{word-break:break-all}.tl-val-old{text-decoration:line-through}.tl-arrow,.tl-val-old{color:var(--text-muted)}.tl-arrow{flex-shrink:0}.tl-no-changes{color:var(--text-muted);font-size:.75rem;font-style:italic}.tl-action-badge{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:3px;color:var(--text-secondary);display:inline-block;font-size:.6875rem;font-weight:600;padding:.0625rem .375rem}.tl-listeners{border-top:1px solid var(--border-color);margin-top:.25rem;padding-top:.25rem}.tl-listener{align-items:baseline;display:flex;font-size:.8125rem;gap:.375rem;line-height:1.5;padding:.0625rem 0}.tl-listener-name{color:var(--text-secondary)}.tl-listener-sep{color:var(--text-muted)}.tl-listener-processed .tl-listener-status{color:var(--accent-green)}.tl-listener-skipped .tl-listener-status{color:var(--accent-yellow)}.tl-listener-error .tl-listener-status{color:var(--accent-red)}.tl-listener-dur{color:var(--text-muted);font-size:.75rem}.tl-listener-err{color:var(--accent-red);font-size:.75rem;margin-left:.25rem}.tl-now{align-items:center;display:flex;padding:.125rem 0 .375rem;position:relative}.tl-now-dot{background:var(--accent-green);border-radius:50%;box-shadow:0 0 0 2px var(--bg-primary),0 0 0 3px var(--accent-green);height:8px;left:-1.75rem;position:absolute;top:.375rem;width:8px;z-index:2}.tl-now-label{color:var(--accent-green);font-size:.75rem;font-weight:500;letter-spacing:normal;text-transform:none}.entity-history-empty,.entity-history-error,.entity-history-loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:.75rem;padding:3rem 1rem;text-align:center}.entity-history-error{color:var(--accent-red)}.loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--bg-tertiary);border:3px solid var(--bg-tertiary);border-radius:50%;border-top-color:var(--accent-blue);display:inline-block;height:2rem;width:2rem}.loading-text{color:var(--text-secondary);font-size:.875rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.tl-worksheet-accordion{padding:.125rem 0}.tl-worksheet-toggle{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.8125rem;gap:.375rem;padding:.1875rem 0;transition:color .15s ease}.tl-worksheet-toggle:hover{color:var(--accent-blue)}.tl-worksheet-chevron{color:var(--text-muted);display:inline-block;font-size:.5rem;line-height:1;transition:transform .2s ease}.tl-worksheet-chevron.expanded{transform:rotate(90deg)}.tl-worksheet-label{color:var(--text-muted);font-size:.75rem;font-style:italic}.tl-worksheet-content{margin-bottom:.25rem;margin-top:.375rem;max-width:100%;overflow-x:auto}.events-view{display:flex;flex-direction:column;height:100vh;overflow:hidden;padding:.75rem 1rem}.events-view-header{align-items:center;display:flex;flex-shrink:0;gap:1rem;margin-bottom:.5rem}.events-view-subtitle{display:none}.events-header-info{color:var(--text-muted);font-size:.8125rem;margin-left:auto;white-space:nowrap}.events-header-controls{flex-shrink:0}.events-limit-label{align-items:center;color:var(--text-secondary);display:flex;font-size:.8125rem;gap:.375rem}.events-filters{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:.5rem;margin-bottom:.25rem;padding:.375rem 0}.events-filter-group{align-items:center;display:flex;gap:.375rem}.events-filter-group label{color:var(--text-secondary);font-size:.75rem;white-space:nowrap}.events-filter-input,.events-filter-select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.8125rem;padding:.3rem .5rem;transition:border-color .15s ease}.events-filter-input:focus,.events-filter-select:focus{border-color:var(--accent-blue);outline:none}.events-filter-input{width:120px}.events-filter-input::placeholder{color:var(--text-muted)}.events-filter-clear{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;font-size:.8125rem;padding:.3rem .5rem;transition:all .15s ease}.events-filter-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.events-table-container{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.events-table-wrapper{flex:1 1;min-height:0;overflow-x:auto;overflow-y:auto}.events-table{border-collapse:collapse;font-size:.875rem;min-width:100%}.events-table thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.events-table th{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.8125rem;font-weight:500;padding:.4rem .75rem;text-align:left;white-space:nowrap}.events-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);padding:.35rem .75rem;white-space:nowrap}.events-table tbody tr{transition:background-color .1s ease}.events-table tbody tr:hover{background:var(--bg-tertiary)}.action-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.75rem;font-weight:500;padding:.2rem .6rem;text-transform:lowercase}.action-badge.created{background:#3fb95026;color:var(--accent-green)}.action-badge.updated{background:#58a6ff26;color:var(--accent-blue)}.action-badge.deleted{background:#f8514926;color:var(--accent-red)}.entity-type-label{color:var(--text-secondary);font-size:.8125rem}.events-entity-link{border-radius:4px;color:var(--accent-blue);cursor:pointer;font-weight:600;margin:-.125rem -.375rem;padding:.125rem .375rem;text-decoration:none;transition:all .15s ease}.events-entity-link:hover{background:#58a6ff1a;text-decoration:underline}.listener-badges{display:flex;flex-wrap:wrap;gap:.375rem}.listener-badge{align-items:center;border-radius:4px;cursor:default;display:inline-flex;font-size:.75rem;font-weight:500;gap:.3rem;padding:.2rem .5rem;position:relative;white-space:nowrap}.listener-badge .listener-badge-icon{font-size:.625rem;line-height:1}.listener-badge.processed{background:#3fb95026;color:var(--accent-green)}.listener-badge.skipped{background:#d2992226;color:var(--accent-yellow)}.listener-badge.error{background:#f8514926;color:var(--accent-red)}.listener-badge .listener-tooltip{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;bottom:calc(100% + 6px);box-shadow:0 4px 12px #0003;color:var(--text-primary);display:none;font-size:.75rem;font-weight:400;left:50%;padding:.5rem .75rem;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:100}.listener-badge:hover .listener-tooltip{display:block}.changed-attrs{display:flex;flex-wrap:wrap;gap:.25rem;max-width:250px}.changed-attr-tag{background:var(--bg-tertiary);border-radius:3px;color:var(--text-secondary);display:inline-block;font-size:.7rem;padding:.1rem .4rem}.events-pagination{align-items:center;display:flex;flex-shrink:0;gap:.5rem;justify-content:center;padding:.5rem 0}.pagination-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);cursor:pointer;font-size:.8125rem;padding:.3rem .625rem;transition:background .15s ease}.pagination-btn:hover:not(:disabled){background:var(--bg-hover)}.pagination-btn:disabled{cursor:not-allowed;opacity:.4}.page-info{color:var(--text-secondary);font-size:.8125rem}.limit-select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.8125rem;padding:.3rem .5rem}.events-loading{align-items:center;display:flex;flex-direction:column;gap:1rem}.events-empty,.events-loading{padding:3rem;text-align:center}.events-empty{color:var(--text-secondary)}.file-viewer-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.file-viewer-modal{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border,#e0e0e0);border-radius:.5rem;box-shadow:0 8px 32px #00000040;display:flex;flex-direction:column;max-height:85vh;max-width:960px;width:90vw}.file-viewer-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border,#e0e0e0);display:flex;flex-shrink:0;justify-content:space-between;padding:.75rem 1rem}.file-viewer-title{font-family:monospace;font-family:var(--font-mono,monospace);font-size:.875rem;font-weight:600}.file-viewer-actions{display:flex;gap:.5rem}.file-viewer-btn{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid #e0e0e0;border:1px solid var(--border,#e0e0e0);border-radius:.25rem;color:#333;color:var(--text-primary,#333);cursor:pointer;font-size:.75rem;padding:.25rem .75rem}.file-viewer-btn:hover{background:#eee;background:var(--bg-hover,#eee)}.file-viewer-close{background:none;border:none;font-size:1.125rem;line-height:1;padding:.125rem .5rem}.file-viewer-close:hover{color:#3b82f6;color:var(--accent,#3b82f6)}.file-viewer-content{flex:1 1;overflow:auto;padding:0}.file-viewer-lines{border-collapse:collapse;font-family:monospace;font-family:var(--font-mono,monospace);font-size:.75rem;line-height:1.5;width:100%}.file-viewer-line-num{border-right:1px solid #e0e0e0;border-right:1px solid var(--border,#e0e0e0);color:#999;color:var(--text-muted,#999);min-width:3rem;padding:0 .5rem;text-align:right;-webkit-user-select:none;user-select:none;vertical-align:top;width:3rem}.file-viewer-line-text{padding:0 .75rem;white-space:pre}.parser-logs-view{display:flex;flex-direction:column;height:100vh;overflow:hidden;padding:.75rem 1rem}.parser-logs-view-header{align-items:center;display:flex;flex-shrink:0;gap:1rem;margin-bottom:.5rem}.parser-logs-header-info{color:var(--text-muted);font-size:.8125rem;margin-left:auto;white-space:nowrap}.parser-logs-header-controls{flex-shrink:0}.parser-logs-limit-label{align-items:center;color:var(--text-secondary);display:flex;font-size:.8125rem;gap:.375rem}.parser-logs-filters{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:.5rem;margin-bottom:.25rem;padding:.375rem 0}.parser-logs-filter-group{align-items:center;display:flex;gap:.375rem}.parser-logs-filter-group label{color:var(--text-secondary);font-size:.75rem;white-space:nowrap}.parser-logs-filter-input,.parser-logs-filter-select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.8125rem;padding:.3rem .5rem;transition:border-color .15s ease}.parser-logs-filter-input:focus,.parser-logs-filter-select:focus{border-color:var(--accent-blue);outline:none}.parser-logs-filter-input{width:180px}.parser-logs-filter-clear{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;font-size:.8125rem;padding:.3rem .5rem;transition:all .15s ease}.parser-logs-filter-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.parser-logs-table-container{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.parser-logs-table-wrapper{flex:1 1;min-height:0;overflow-x:auto;overflow-y:auto}.parser-logs-table{border-collapse:collapse;font-size:.875rem;min-width:100%}.parser-logs-table thead{position:-webkit-sticky;position:sticky;top:0;z-index:10}.parser-logs-table th{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.8125rem;font-weight:500;padding:.4rem .75rem;text-align:left;white-space:nowrap}.parser-logs-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);padding:.35rem .75rem;white-space:nowrap}.parser-logs-row{cursor:pointer;transition:background-color .1s ease}.parser-logs-row.expanded,.parser-logs-row:hover{background:var(--bg-tertiary)}.parser-logs-filename{max-width:200px;overflow:hidden;text-overflow:ellipsis}.parser-status-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.75rem;font-weight:500;padding:.2rem .6rem;text-transform:lowercase}.parser-status-badge.success{background:#3fb95026;color:var(--accent-green)}.parser-status-badge.partial{background:#d2992226;color:var(--accent-yellow)}.parser-status-badge.error{background:#f8514926;color:var(--accent-red)}.parser-logs-summary{font-size:.8125rem}.summary-matched{color:var(--accent-blue);font-weight:500}.summary-updated{color:var(--accent-green);font-weight:500}.summary-errors{color:var(--accent-red);font-weight:500}.parser-logs-detail-row td{background:var(--bg-secondary);border-bottom:2px solid var(--border-color);padding:0}.parser-logs-detail{display:flex;flex-direction:column;gap:.75rem;padding:.75rem 1rem}.detail-section h4{color:var(--text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.03em;margin:0 0 .375rem;text-transform:uppercase}.detail-list{display:flex;flex-wrap:wrap;gap:.25rem}.detail-tag{background:var(--bg-tertiary);border-radius:3px;color:var(--text-primary);display:inline-block;font-size:.75rem;padding:.15rem .5rem;white-space:nowrap}.detail-tag.warning{background:#d299221f;color:var(--accent-yellow)}.detail-tag.error{background:#f851491f;color:var(--accent-red)}.detail-json{background:var(--bg-tertiary);border-radius:4px;color:var(--text-secondary);font-size:.75rem;margin:0;max-height:200px;overflow:auto;padding:.5rem}.parser-logs-pagination{align-items:center;display:flex;flex-shrink:0;gap:.5rem;justify-content:center;padding:.5rem 0}.parser-logs-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:3rem;text-align:center}.parser-logs-empty{color:var(--text-secondary);padding:3rem;text-align:center}.detail-actions{margin-bottom:.5rem}.detail-view-file-btn{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid #e0e0e0;border:1px solid var(--border,#e0e0e0);border-radius:.25rem;color:#333;color:var(--text-primary,#333);cursor:pointer;font-size:.75rem;padding:.25rem .75rem}.detail-view-file-btn:hover:not(:disabled){background:#eee;background:var(--bg-hover,#eee)}.detail-view-file-btn:disabled{cursor:not-allowed;opacity:.5}.dashboard{display:flex;flex-direction:column;height:100vh;overflow:visible;padding:.75rem 1rem}.dashboard-header{flex-direction:column}.dashboard-header,.dashboard-stats{display:flex;flex-shrink:0;gap:0;margin-bottom:.75rem}.dashboard-stats{border-bottom:1px solid var(--border-color)}.dashboard-stat{background:none;border:none;border-right:1px solid var(--border-light);cursor:pointer;flex:1 1;padding:.75rem 1rem;text-align:left;transition:background .1s ease}.dashboard-stat:last-child{border-right:none}.dashboard-stat:hover{background:var(--bg-tertiary)}.dashboard-stat-count{font-feature-settings:"tnum";color:var(--text-primary);display:block;font-size:1.5rem;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.2}.dashboard-stat-label{font-size:.75rem}.dashboard-stat-breakdown,.dashboard-stat-label{color:var(--text-muted);display:block;margin-top:.125rem}.dashboard-stat-breakdown{font-size:.625rem;line-height:1.3}.dashboard-section-title{align-items:center;color:var(--text-secondary);display:flex;flex-shrink:0;font-size:.8125rem;font-weight:600;gap:.5rem;margin-bottom:.375rem}.dashboard-section-link{color:var(--accent);cursor:pointer;font-size:.75rem;font-weight:400;margin-left:auto}.dashboard-section-link:hover{text-decoration:underline}.dashboard-events-wrapper{flex:1 1;min-height:0;overflow-x:auto;overflow-y:auto}.dashboard-recent-grid{grid-gap:.75rem;display:grid;flex-shrink:0;gap:.75rem;grid-template-columns:repeat(3,1fr);margin-bottom:.75rem}.dashboard-recent-card{border:1px solid var(--border-color);border-radius:6px;display:flex;flex-direction:column;overflow:hidden}.dashboard-recent-card-header{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.5rem .75rem}.dashboard-recent-card-title{color:var(--text-secondary);font-size:.8125rem;font-weight:600}.dashboard-recent-card-link{background:none;border:none;color:var(--accent);cursor:pointer;font-size:.75rem;font-weight:400;padding:0}.dashboard-recent-card-link:hover{text-decoration:underline}.dashboard-recent-card-body{flex:1 1}.dashboard-recent-card-row{align-items:center;border-bottom:1px solid var(--border-light);cursor:pointer;display:flex;gap:.5rem;padding:.375rem .75rem;transition:background .1s ease}.dashboard-recent-card-row:last-child{border-bottom:none}.dashboard-recent-card-row:hover{background:var(--row-hover)}.dashboard-recent-card-id{font-feature-settings:"tnum";color:var(--accent);flex-shrink:0;font-size:.8125rem;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.dashboard-recent-card-name{color:var(--text-primary);flex:1 1;font-size:.8125rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-recent-card-status{flex-shrink:0;font-size:.75rem;text-align:right}.dashboard-recent-card-empty{color:var(--text-muted);font-size:.8125rem;padding:1rem .75rem;text-align:center}.fv-view{display:flex;flex-direction:column;padding:.75rem 1rem}.fv-header{align-items:baseline;display:flex;flex-shrink:0;gap:.75rem;margin-bottom:.5rem}.fv-description{color:var(--text-secondary);font-size:.8125rem;margin:0}.fv-state-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:.6875rem;font-weight:600;letter-spacing:.3px;padding:.125rem .5rem;text-transform:uppercase}.fv-state-completed{background:#3fb95026;color:var(--accent-green)}.fv-state-progress{background:#58a6ff26;color:var(--accent-blue)}.fv-state-cancelled{background:#f8514926;color:var(--accent-red)}.fv-state-default{background:var(--bg-tertiary);color:var(--text-secondary)}*{box-sizing:border-box}.App{background:var(--bg-primary);display:flex;flex-direction:column;min-height:100vh}.app-topnav{background:var(--nav-bg);border-bottom:1px solid var(--nav-border);font-family:inherit;height:var(--nav-height);left:0;padding:0 1rem;position:fixed;right:0;top:0;z-index:100}.app-topnav,.topnav-brand{align-items:center;display:flex}.topnav-brand{cursor:pointer;flex-shrink:0;gap:.5rem;padding-right:1.5rem}.topnav-brand-icon{height:24px;object-fit:contain;width:24px}.topnav-brand-text{color:var(--text-primary);font-size:.9375rem;font-weight:600;white-space:nowrap}.topnav-menus{align-items:center;display:flex;flex:1 1;gap:0}.topnav-menu{position:relative}.topnav-menu-trigger{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:.375rem;height:var(--nav-height);padding:0 1rem;position:relative;transition:color .15s ease}.topnav-menu-trigger.active,.topnav-menu-trigger:hover{color:var(--text-primary)}.topnav-menu-trigger.active:after{display:none}.topnav-menu-trigger svg{height:12px;opacity:.6;transition:transform .15s ease;width:12px}.topnav-menu-trigger.open svg{transform:rotate(180deg)}.topnav-dropdown{animation:dropdownFadeIn .15s ease;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 16px #0000004d;left:0;min-width:220px;padding:.375rem 0;position:absolute;top:100%;z-index:200}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.topnav-dropdown-item{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-family:inherit;font-size:.8125rem;gap:.625rem;padding:.5rem 1rem;text-align:left;transition:all .15s ease;width:100%}.topnav-dropdown-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.topnav-dropdown-item.active{color:var(--accent-blue)}.topnav-dropdown-item .nav-icon,.topnav-dropdown-item svg{flex-shrink:0;height:16px;opacity:.7;width:16px}.topnav-dropdown-item.active .nav-icon,.topnav-dropdown-item.active svg{opacity:1}.topnav-dropdown-divider{background:var(--border-light);height:1px;margin:.375rem 0}.topnav-right{align-items:center;display:flex;flex-shrink:0;gap:.75rem;margin-left:auto}.topnav-quick-find{position:relative}.topnav-quick-find .quick-find-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-family:inherit;font-size:.75rem;padding:.3rem 3.5rem .3rem .5rem;transition:border-color .15s ease,width .2s ease;width:200px}.topnav-quick-find .quick-find-input::placeholder{color:var(--text-muted)}.topnav-quick-find .quick-find-input:focus{border-color:var(--accent-blue);outline:none;width:280px}.topnav-quick-find .quick-find-shortcut{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:3px;color:var(--text-muted);font-size:.625rem;padding:.125rem .375rem;pointer-events:none;position:absolute;right:.5rem;top:50%;transform:translateY(-50%)}.topnav-quick-find .quick-find-results{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 16px #0000004d;margin-top:.375rem;min-width:280px;overflow:hidden;position:absolute;right:0;top:100%;z-index:300}.topnav-quick-find .quick-find-result{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-family:inherit;font-size:.8125rem;gap:.5rem;padding:.5rem .75rem;text-align:left;transition:background .1s ease;width:100%}.topnav-quick-find .quick-find-result:hover{background:var(--bg-tertiary)}.topnav-quick-find .quick-find-result .qf-type{color:var(--text-muted);font-size:.75rem;min-width:50px}.topnav-quick-find .quick-find-result .qf-id{color:var(--accent-blue);font-weight:600}.topnav-quick-find .quick-find-empty,.topnav-quick-find .quick-find-loading{color:var(--text-muted);font-size:.8125rem;padding:.625rem .75rem;text-align:center}.user-menu{position:relative}.user-avatar{align-items:center;background:linear-gradient(135deg,var(--accent-green) 0,var(--accent-blue) 100%);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:.75rem;font-weight:600;height:28px;justify-content:center;transition:opacity .15s ease;width:28px}.user-avatar:hover{opacity:.85}.user-dropdown{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 8px 24px #00000040;min-width:200px;padding:.375rem 0;position:absolute;right:0;top:calc(100% + .5rem);z-index:200}.user-dropdown-email{color:var(--text-muted);font-size:.75rem;overflow:hidden;padding:.5rem .75rem;text-overflow:ellipsis;white-space:nowrap}.user-dropdown-divider{background:var(--border-color);height:1px;margin:.25rem 0}.user-dropdown-item{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-family:inherit;font-size:.8125rem;gap:.5rem;padding:.5rem .75rem;transition:background .1s ease;width:100%}.user-dropdown-item:hover{background:var(--bg-tertiary)}.user-dropdown-item svg{flex-shrink:0;height:14px;width:14px}.app-main{background:var(--bg-primary);flex:1 1;height:calc(100vh - var(--nav-height));margin-top:var(--nav-height);overflow:auto}.breadcrumb-bar{align-items:baseline;display:flex;font-size:.8rem;gap:.4rem;padding:.5rem 0 .25rem}.breadcrumb-link{background:none;border:none;color:var(--accent-blue);cursor:pointer;font-family:inherit;font-size:.75rem;padding:0;text-decoration:none;transition:-webkit-text-decoration .1s ease;transition:text-decoration .1s ease;transition:text-decoration .1s ease,-webkit-text-decoration .1s ease}.breadcrumb-link:hover{text-decoration:underline}.breadcrumb-text{color:var(--text-secondary)}.breadcrumb-separator{color:var(--text-muted)}.breadcrumb-current{color:var(--text-primary);font-size:1.05rem;font-weight:600}.view-tabs{background:var(--bg-primary);border-bottom:1px solid var(--border-color);display:flex;gap:0;padding:0 2rem}.view-tab{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.875rem;padding:.75rem 1.25rem;position:relative;transition:color .15s ease}.view-tab.active,.view-tab:hover{color:var(--text-primary)}.view-tab.active{font-weight:500}.view-tab.active:after{background:var(--accent-blue);border-radius:2px 2px 0 0;bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.app-nav{display:none}.login-page{background:var(--bg-primary);display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-brand-panel{align-items:center;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;justify-content:center;overflow:hidden;position:relative}.login-brand-panel:before{background:repeating-linear-gradient(0deg,#0000,#0000 39px,var(--border-light) 39px,var(--border-light) 40px),repeating-linear-gradient(90deg,#0000,#0000 39px,var(--border-light) 39px,var(--border-light) 40px);content:"";inset:0;opacity:.4;pointer-events:none;position:absolute}.login-brand-content{position:relative;text-align:center;z-index:1}.login-brand-mark{height:80px;margin:0 auto 20px;object-fit:contain;width:auto}.login-brand-name{color:var(--text-primary);font-size:22px;font-weight:600;letter-spacing:.5px;margin:0 0 6px}.login-brand-sub{color:var(--text-muted);font-size:12px;letter-spacing:3px;text-transform:uppercase}.login-form-panel{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:48px}.login-form-container{max-width:340px;width:100%}.login-heading{color:var(--text-primary);font-size:20px;font-weight:600;margin:0 0 8px}.login-subtext{color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0 0 32px}.login-ms-button{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:10px;justify-content:center;padding:11px 20px;transition:background .15s,border-color .15s;width:100%}.login-ms-button:hover{background:var(--bg-hover);border-color:var(--accent-blue)}.login-ms-button:active{transform:translateY(1px)}.login-ms-button svg{flex-shrink:0}.login-footer{margin-top:48px;text-align:center}.login-footer-text{color:var(--text-muted);font-size:11px}@media (max-width:768px){.login-page{grid-template-columns:1fr;grid-template-rows:auto 1fr}.login-brand-panel{border-bottom:1px solid var(--border-color);border-right:none;padding:48px 24px}.login-form-panel{padding:32px 24px}}
/*# sourceMappingURL=main.2957eefd.css.map*/