/* A source-led inspection workspace, shared by file and AI imports. */
.iq-layout{display:grid;grid-template-columns:minmax(220px,.92fr) minmax(0,1.08fr);gap:1rem;align-items:start;text-align:left}
.iq-source,.iq-review{min-width:0}.iq-source{position:sticky;top:0;padding:.8rem;background:var(--bg);border:1px solid var(--border);border-radius:10px;max-height:76vh;overflow:auto}
.iq-source-title,.iq-entry-head,.iq-entry-actions,.iq-entry-footer,.iq-source-pagination,.iq-pagination{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}
.iq-source-title{justify-content:space-between}.iq-source-title h3{font-size:.85rem;margin:0}.iq-source button,.iq-entry-footer button,.iq-pagination button,.iq-entry-actions>button:not(.iq-icon-button){background:var(--surface,var(--bg));color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.3rem .45rem;font:inherit;font-size:.74rem;cursor:pointer}
.iq-source button:disabled,.iq-pagination button:disabled{opacity:.45;cursor:default}.iq-source-filename{font-size:.75rem;overflow-wrap:anywhere;margin:.45rem 0;color:var(--muted)}
.iq-image-scroll{max-height:350px;overflow:auto;margin-top:.5rem}.iq-image-scroll img{display:block;max-width:100%;height:auto;margin:auto;object-fit:contain}.iq-source-full .iq-image-scroll{max-height:65vh}.iq-source-full .iq-image-scroll img{max-width:none;max-height:1200px}
.iq-source-text,.iq-cell-detail pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.77rem;line-height:1.6;max-height:300px;overflow:auto;padding:.6rem;background:var(--surface,var(--bg));margin:.6rem 0}
.iq-source-full .iq-source-text{max-height:60vh}.iq-source-note,.iq-policy,.iq-source-empty{font-size:.72rem;line-height:1.5;color:var(--muted)}.iq-original-file{font-size:.74rem;display:inline-block;margin:.35rem 0}.iq-table-scroll{max-width:100%;overflow:auto;max-height:310px;border:1px solid var(--border)}.iq-source-full .iq-table-scroll{max-height:58vh}
.iq-source-table{border-collapse:collapse;font-size:.7rem;width:max-content;min-width:100%}.iq-source-table th{background:var(--surface,var(--bg));position:sticky;top:0;z-index:1;padding:.35rem;font-weight:600}.iq-source-table td,.iq-source-table th{border:1px solid var(--border);vertical-align:top}.iq-source-table td{width:135px;max-width:200px}.iq-source-table td button{display:block;white-space:pre-wrap;text-align:left;border:0;width:100%;max-height:180px;overflow:auto;background:transparent;line-height:1.45}.iq-source-table .iq-source-selected{outline:2px solid var(--accent,#0ea5e9);outline-offset:-2px;background:var(--sky-bg)}
.iq-cell-detail{font-size:.73rem;margin-top:.5rem}.iq-source-pagination{font-size:.7rem;margin:.5rem 0;color:var(--muted)}.iq-summary{font-size:.82rem;margin:0 0 .5rem;font-weight:600}.iq-filters{display:flex;flex-wrap:wrap;gap:.35rem}.iq-filters button{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--border);background:transparent;color:var(--text2,var(--text));border-radius:6px;padding:.3rem .45rem;font:inherit;font-size:.72rem;cursor:pointer}.iq-filters button[aria-pressed=true]{background:var(--sky-bg);border-color:var(--sky-border);color:var(--accent,#0284c7)}.iq-filters span{font-variant-numeric:tabular-nums}
.iq-entry{border-bottom:1px solid var(--border);padding:.7rem 0;font-size:.78rem}.iq-entry-head{justify-content:space-between;flex-wrap:nowrap;align-items:start}.iq-entry-head>label{display:flex;gap:.4rem;align-items:start;min-width:0;overflow-wrap:anywhere}.iq-entry-head input{margin-top:.2rem;flex-shrink:0}.iq-entry-head strong{font-size:.82rem}.iq-entry-actions{flex-wrap:nowrap;flex-shrink:0}
.iq-icon-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:6px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;flex-shrink:0}.iq-icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.iq-icon-button:hover{background:var(--sky-bg);color:var(--accent,#0284c7)}.iq-icon-button:focus-visible,.iq-layout button:focus-visible{outline:2px solid var(--accent,#0284c7);outline-offset:2px}.iq-icon-button:last-child:hover{color:var(--danger,#dc2626)}
.iq-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin:.35rem 0}.iq-tag{font-size:.66rem;padding:.15rem .35rem;border-radius:4px;background:var(--bg);color:var(--muted);border:1px solid var(--border)}.iq-invalid{color:var(--danger,#b91c1c)}.iq-conflict{color:#ad6800}.iq-checked{color:var(--ok,#15803d)}.iq-error,.iq-reasons,.iq-conflict-note{font-size:.72rem;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;margin:.35rem 0;color:var(--muted)}.iq-error{color:var(--danger,#b91c1c)}.iq-conflict-note{color:#ad6800}.iq-entry-footer{margin-top:.5rem}.iq-entry-footer button{font-size:.69rem}.iq-excluded{opacity:.68}.iq-empty{color:var(--muted);font-size:.78rem;padding:1rem 0}.iq-course-meta{color:var(--text2,var(--text));line-height:1.6}.iq-pagination{justify-content:center;margin-top:.75rem;font-size:.74rem}.iq-editor{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:.5rem 0}.iq-editor label{font-size:.72rem}.iq-editor input,.iq-editor select{width:100%;min-width:0}.iq-editor-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:.5rem}.iq-diff{display:grid;grid-template-columns:4em 1fr auto 1fr;gap:.4rem;margin:.3rem 0;font-size:.73rem}.iq-diff-old{color:var(--muted)}.iq-diff-new{color:var(--text)}
#importProblemsBody .iq-layout{padding:.2rem}#importProblemsOverlay .import-quality-dialog,#importProblemsOverlay .import-problems-modal,#importProblemsOverlay .modal-content{width:min(1100px,95vw);max-width:1100px}#xlsPreviewContent:has(.iq-layout){max-height:none!important;background:transparent!important;padding:0!important}#aiPreviewArea:has(.iq-layout),#aiReschedulePreview:has(.iq-layout){max-height:none}.ai-review-mode .iq-layout{grid-template-columns:minmax(250px,1fr) minmax(0,1fr)}
@media(max-width:680px){.iq-layout,.ai-review-mode .iq-layout{grid-template-columns:minmax(0,1fr)}.iq-source{position:static;max-height:340px}.iq-source-full .iq-source{max-height:65vh}.iq-image-scroll{max-height:240px}.iq-source-table td{max-width:140px}.iq-entry-head{gap:.35rem}.iq-icon-button{width:34px;height:34px}.iq-editor{grid-template-columns:minmax(0,1fr)}.iq-filters button{min-height:34px}.iq-diff{grid-template-columns:3.4em 1fr auto 1fr}#importProblemsBody .iq-layout{padding:0}}
@media(pointer:coarse){.iq-icon-button{min-width:44px;min-height:44px}.iq-layout button,.iq-entry-head>label{min-height:44px}.iq-entry-head>label{align-items:center}.iq-entry-head{flex-wrap:wrap}}
