.ij-workspace { min-width: 0; }
.ij-workspace .panel-title { font-size: 1.2rem; }
.ij-workspace .panel-header-flex, .ij-heading, .ij-pagination, .ij-dialog header, .ij-dialog footer { display: flex; justify-content: space-between; align-items: center; gap: .8rem; flex-wrap: wrap; }
.ij-workspace h3, .ij-dialog h3 { margin: 0; font-size: 1rem; line-height: 1.45; }
.ij-muted { color: var(--text-muted, #64748b); font-size: .78rem; line-height: 1.5; }
.ij-workspace small, .ij-dialog small { display: block; margin-top: .25rem; }
.ij-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0; }
.ij-stats > div { background: var(--bg-card, white); border: 1px solid var(--border, #e2e8f0); border-radius: .65rem; padding: .85rem 1rem; }
.ij-stats span { display: block; font-size: .72rem; color: var(--text-muted, #64748b); }
.ij-stats strong { display: block; margin-top: .25rem; color: var(--accent, #6554d9); font-size: 1.5rem; }
.ij-toolbar { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1rem 0; }
.ij-toolbar label { flex: 1 1 16rem; max-width: 28rem; }
.ij-toolbar label, .ij-review-form label { display: grid; gap: .35rem; font-size: .78rem; color: var(--text-muted, #64748b); }
.ij-toolbar input, .ij-toolbar select, .ij-review-form select, .ij-review-form textarea { width: 100%; box-sizing: border-box; font: inherit; color: var(--text, #243047); border: 1px solid var(--border, #cbd5e1); background: var(--bg-card, white); padding: .6rem; border-radius: .45rem; min-width: 0; }
.ij-table-panel { margin-bottom: 1rem; padding: 1rem !important; }
.ij-table-panel .ij-heading { margin-bottom: .75rem; }
.ij-table-panel table { width: 100%; }
.ij-table-panel th, .ij-table-panel td { padding: .7rem .5rem; font-size: .8rem; vertical-align: top; }
.ij-table-panel th { font-size: .68rem; }
.ij-table-panel td:nth-child(2) { min-width: 13rem; max-width: 28rem; overflow-wrap: anywhere; }
.ij-table-panel td.mono { white-space: nowrap; }
.ij-name { border: 0; background: none; padding: 0; font: inherit; color: var(--accent, #6554d9); cursor: pointer; text-align: left; line-height: 1.5; }
.ij-name:hover { text-decoration: underline; }
.ij-workspace button:focus-visible, .ij-dialog button:focus-visible { outline: 2px solid var(--accent, #6554d9); outline-offset: 3px; }
.ij-workspace .btn-download, .ij-dialog .btn-download { font: inherit; font-size: .75rem; cursor: pointer; }
.ij-workspace button:disabled, .ij-dialog button:disabled { opacity: .45; cursor: default; }
.ij-pagination { padding-top: .75rem; font-size: .75rem; color: var(--text-muted, #64748b); }
.ij-methods { padding: .85rem 1rem !important; margin: 1rem 0; font-size: .8rem; line-height: 1.65; }
.ij-methods summary { cursor: pointer; font-weight: 600; }
.ij-methods p { max-width: 95ch; margin: .6rem 0; }
.ij-id { overflow-wrap: anywhere; }
.ij-error { color: #b91c1c; padding: .6rem 0; font-size: .85rem; }
.ij-dialog { width: min(1050px, calc(100vw - 2rem)); max-height: 88vh; margin: auto; padding: 0; border: 1px solid var(--border, #cbd5e1); border-radius: .8rem; background: var(--bg-card, white); color: var(--text, #243047); box-shadow: 0 12px 60px #0003; }
.ij-dialog[open] { display: flex; flex-direction: column; }
.ij-dialog::backdrop { background: #17203380; }
.ij-dialog header, .ij-dialog footer { flex: none; padding: 1rem 1.2rem; background: var(--bg-card, white); }
.ij-dialog header { border-bottom: 1px solid var(--border, #e2e8f0); }
.ij-dialog header > div { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.ij-dialog footer { border-top: 1px solid var(--border, #e2e8f0); font-size: .78rem; }
.ij-dialog-body { overflow-y: auto; min-height: 0; padding: 0 1.2rem; }
.ij-reference-list article { padding: 1rem 0; border-bottom: 1px solid var(--border, #e2e8f0); font-size: .82rem; }
.ij-reference-list .ij-heading > div { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.ij-reference { margin: .6rem 0; font-size: .78rem; line-height: 1.6; overflow-wrap: anywhere; }
.ij-review-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; padding: .8rem; margin-top: .7rem; background: var(--bg-elevated, #f8fafc); border: 1px solid var(--border, #e2e8f0); border-radius: .5rem; }
.ij-wide { grid-column: 1 / -1; }
@media (max-width: 720px) { .ij-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ij-review-form { grid-template-columns: minmax(0, 1fr); } .ij-table-panel td:nth-child(2) { min-width: 10rem; } }
