.problem-picker{border:1px solid var(--line,#d8dee6);border-radius:6px;padding:12px;margin:12px 0;background:var(--surface,#fff);color:var(--text,#20242c)}.problem-picker input[type=search]{width:100%;display:block;margin:6px 0}.picker-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:4px;max-height:250px;overflow:auto}.picker-results button{text-align:left;padding:7px 10px}.picker-status{min-height:24px;font-size:12px}.picker-pages{display:flex;gap:8px;margin-top:6px}.picker-selected{list-style:none;margin:8px 0;padding:0;max-height:420px;overflow:auto}.picker-selected li{display:flex;align-items:center;gap:8px;padding:7px;border-bottom:1px solid var(--line,#ddd);flex-wrap:wrap}.picker-selected strong{flex:1;min-width:170px}.picker-selected input[type=number]{width:80px}.picker-selected button{padding:4px 8px}.drag-handle{cursor:grab;touch-action:none}.order-number{font-variant-numeric:tabular-nums}.problem-picker .section-heading{display:flex;justify-content:space-between;align-items:center;margin:12px 0 4px}.problem-picker button{cursor:pointer;border:1px solid var(--line,#ddd);border-radius:4px;background:var(--surface,#fff);color:inherit}.problem-picker button:disabled{opacity:.5;cursor:default}[data-search-status]{font-size:12px;color:var(--muted,#64748b);min-height:20px}[aria-busy=true] [data-list-results]{opacity:.65}.original-dark .problem-picker{--surface:#20252d;--text:#eee;--line:#414956}

/* Shared sortable header component. The two CSS borders are solid filled triangles. */
th a[data-sort]{display:inline-flex;align-items:center;gap:6px;min-height:28px;white-space:nowrap;color:inherit;text-decoration:none}
th a[data-sort]:hover,th a[data-sort]:focus-visible{color:var(--accent,#2563eb)}
.sort-indicator{display:inline-flex;flex-direction:column;gap:2px;width:8px;height:12px;justify-content:center;flex:none}
.sort-triangle{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;opacity:.38}
.sort-triangle.up{border-bottom:5px solid currentColor}.sort-triangle.down{border-top:5px solid currentColor}
th[aria-sort=ascending] a[data-sort],th[aria-sort=descending] a[data-sort]{color:var(--accent,#2563eb)}
th[aria-sort=ascending] .sort-triangle.up,th[aria-sort=descending] .sort-triangle.down{opacity:1}
th[aria-sort=ascending] .sort-triangle.down,th[aria-sort=descending] .sort-triangle.up{opacity:.2}
