.selection-workbench { color:var(--ink); padding:16px; font:inherit; }
.selection-workbench [hidden],.sw-dialog [hidden] { display:none !important; }
.selection-workbench button:focus-visible,.sw-dialog button:focus-visible,.selection-workbench input:focus-visible,.sw-dialog input:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.sw-toolbar,.sw-search,.sw-tabs,.sw-dialog-head,.sw-dialog-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.sw-tabs { margin-right:auto; gap:0; border-bottom:1px solid var(--line); }
.sw-tabs button { border:0; border-radius:0; background:none; padding:8px 16px; }
.sw-tabs button[aria-selected="true"] { color:var(--accent); box-shadow:inset 0 -3px var(--accent); font-weight:600; }
.sw-help,.sw-meta,.sw-muted { color:var(--muted); }
.sw-help { margin:14px 0; max-width:80ch; }
.sw-search { margin:14px 0; }
.sw-search input { flex:1; min-width:180px; max-width:560px; }
.sw-search input,.sw-search select,.sw-editor input,.sw-editor select { min-height:36px; border:1px solid var(--line); border-radius:5px; background:var(--surface); padding:7px 9px; color:var(--ink); }
.sw-status { min-height:1.5em; color:var(--muted); }
.sw-empty { padding:64px 24px; text-align:center; color:var(--muted); border:1px dashed var(--line); background:var(--soft); }
.sw-cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,530px),1fr)); gap:18px; }
.sw-card { border:1px solid var(--line); background:var(--surface); border-radius:8px; padding:16px; }
.sw-card-state { display:inline-block; color:var(--amber); background:#fff5e7; padding:3px 8px; border-radius:4px; margin-bottom:12px; }
.sw-pair { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px; }
.sw-side + .sw-side { border-left:1px solid var(--line); padding-left:18px; }
.sw-side-label { display:block; margin-bottom:9px; font-size:13px; color:var(--muted); }
.sw-image { height:186px; display:flex; align-items:center; justify-content:center; background:var(--soft); color:var(--muted); border-radius:5px; }
.sw-image a { height:100%; width:100%; display:flex; align-items:center; justify-content:center; }
.sw-image img { max-width:100%; max-height:100%; object-fit:contain; }
.sw-product-title { font-weight:600; line-height:1.55; overflow-wrap:anywhere; margin:12px 0 7px; }
.sw-price { font-size:20px; font-weight:650; margin:6px 0; }
.sw-meta { font-size:12px; line-height:1.7; overflow-wrap:anywhere; border-top:1px solid var(--line); padding-top:10px; margin-top:14px; }
.sw-table-wrap { overflow:auto; }
.sw-table { width:100%; border-collapse:collapse; background:var(--surface); }
.sw-table th { text-align:left; background:var(--soft); font-weight:600; white-space:nowrap; }
.sw-table td,.sw-table th { border-bottom:1px solid var(--line); padding:12px; vertical-align:top; }
.sw-table td:not(:first-child) { min-width:105px; }
.sw-table td:first-child { min-width:220px; max-width:420px; overflow-wrap:anywhere; }
.sw-dialog { max-width:1040px; width:calc(100vw - 48px); max-height:92vh; overflow:auto; padding:24px; border:1px solid var(--line); border-radius:10px; color:var(--ink); background:var(--surface); }
.sw-dialog::backdrop { background:rgba(15,29,44,.48); }
.sw-dialog-head { justify-content:space-between; margin-bottom:20px; }
.sw-dialog-head h2 { margin:0; font-size:20px; }
.sw-editor { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin-top:18px; }
.sw-editor label { display:flex; flex-direction:column; gap:6px; color:var(--muted); font-size:13px; }
.sw-editor .sw-check { grid-column:1/-1; flex-direction:row; align-items:center; color:var(--ink); padding:10px 0; }
.sw-check input { min-height:0; width:17px; height:17px; }
.sw-estimate { grid-column:1/-1; padding:16px; background:var(--soft); border-left:3px solid var(--accent); }
.sw-estimate strong { font-size:19px; }
.sw-estimate p { margin:7px 0 0; }
.sw-editor .sw-status,.sw-dialog-actions { grid-column:1/-1; }
.sw-full { grid-column:1/-1; margin:0; }
.sw-dialog-actions { justify-content:flex-end; }
@media(max-width:720px) { .sw-editor { grid-template-columns:1fr 1fr; } .sw-dialog { padding:16px; width:calc(100vw - 20px); } .sw-image { height:145px; } .selection-workbench { padding:10px; } }
@media(max-width:420px) { .sw-editor { grid-template-columns:1fr; } .sw-pair { gap:10px; } .sw-side + .sw-side { padding-left:10px; } .sw-image { height:120px; } }
