.opinion-visibility{display:flex;align-items:flex-start;gap:14px;padding:15px 20px;border-bottom:1px solid var(--line);font-size:11px}.visibility-title{white-space:nowrap;color:var(--muted);padding-top:5px}.visibility-options{display:flex;flex-wrap:wrap;gap:7px;flex:1}.visibility-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid var(--line);border-radius:5px;color:var(--muted);cursor:pointer;white-space:nowrap}.visibility-chip.checked{background:var(--soft);color:var(--accent);border-color:var(--border-strong)}.visibility-chip small{opacity:.65}.visibility-chip input,.opinion-bulk input,.opinion-row-controls input{accent-color:var(--accent);width:13px;height:13px;margin:0;cursor:pointer}.opinion-bulk{display:flex;align-items:center;gap:15px;padding:11px 20px;background:var(--surface-tint);border-bottom:1px solid var(--line);font-size:11px;flex-wrap:wrap}.opinion-bulk label{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;cursor:pointer}.opinion-bulk>span{color:var(--muted)}.opinion-bulk .bulk-notes{margin-left:auto}.opinion-row-controls{display:grid;grid-template-columns:16px 26px;align-items:center;justify-content:center;gap:5px}.opinion-row-controls small{grid-column:1/-1;text-align:center;color:var(--text-tertiary);font-size:10px}.opinion-drag-handle{border:0;background:transparent;font-size:25px;line-height:1.3;color:var(--text-tertiary);cursor:grab;border-radius:4px;padding:2px;touch-action:none}.opinion-drag-handle:hover,.opinion-drag-handle:focus-visible{color:var(--accent);background:var(--soft)}.opinion-sorting,.opinion-sorting *{cursor:grabbing!important;user-select:none!important}.product-opinion-table{white-space:normal;min-width:920px}.product-opinion-table th,.product-opinion-table td{padding:16px 14px;vertical-align:top}.product-opinion-table th:first-child{width:80px;text-align:center}.product-opinion-table .opinion-main{min-width:300px;width:43%;max-width:520px}.product-opinion-table td:nth-child(4){min-width:120px}.product-opinion-table td:nth-child(5){min-width:95px}.product-opinion-table td:nth-child(6){min-width:100px;max-width:130px}.product-opinion-table td:last-child{min-width:100px}.product-opinion-table .row-actions{flex-direction:column;align-items:flex-start;gap:10px}.product-opinion-table .row-actions small{color:var(--text-tertiary)}.product-opinion-table tr.selected-opinion{background:#eaf6ff}.product-opinion-table tr.opinion-dragging{opacity:.42}.product-opinion-table tr.drop-before td{box-shadow:inset 0 3px 0 var(--accent)}.product-opinion-table tr.drop-after td{box-shadow:inset 0 -3px 0 var(--accent)}.opinion-note-preview{margin-top:11px;display:grid;gap:5px}.opinion-note-preview p{display:flex;gap:6px;font-size:11px;line-height:1.7;color:var(--muted)}.opinion-note-preview .icon{margin:3px 0 0;width:13px;height:13px;flex:none}.opinion-page-name,.opinion-source-version{display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.opinion-source-version{font:10px Consolas,monospace;margin-top:8px;color:var(--text-tertiary)}.reporter-identifier{font-size:11px;overflow-wrap:anywhere}.opinion-shot-inline{display:block;max-width:230px;border:1px solid var(--line);border-radius:6px;overflow:hidden;padding:0;margin-top:13px;background:var(--surface-tint);text-align:left}.opinion-shot-inline img{display:block;width:225px;height:126px;object-fit:cover;object-position:top}.opinion-shot-inline>span{display:flex;align-items:center;gap:5px;padding:5px 8px;font-size:10px;color:var(--accent)}.opinion-shot-inline .icon{margin:0;width:12px;height:12px}.opinion-notes-section{margin:24px 0}.opinion-notes-section h3{font-size:14px}.opinion-notes-section h3 span{font-size:11px;font-weight:400}.opinion-note-editor{border:1px solid var(--line);border-radius:6px;padding:12px;margin-bottom:10px;background:var(--surface-tint)}.note-editor-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:10px;color:var(--muted)}.opinion-note-editor textarea{width:100%;min-height:72px;resize:vertical}.opinion-detail-gallery{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.opinion-detail-gallery>button{border:1px solid var(--line);border-radius:6px;overflow:hidden;padding:0;background:var(--surface-tint);width:min(320px,100%);text-align:left}.opinion-detail-gallery img{display:block;width:100%;height:170px;object-fit:cover;object-position:top}.opinion-detail-gallery span{display:block;padding:7px 10px;font-size:11px;color:var(--accent)}.opinion-full-image{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:5px}.image-view-meta,.image-switcher{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--muted);flex-wrap:wrap}.image-view-meta{margin-bottom:13px}.image-switcher{margin-top:13px}.test-result.error{color:var(--negative);background:var(--negative-bg)}
@media(max-width:760px){.opinion-visibility{padding:12px;gap:8px;flex-wrap:wrap}.visibility-options{min-width:80%}.opinion-bulk{padding:12px;gap:10px}.opinion-bulk .bulk-notes{margin-left:0}.opinion-bulk .btn.primary{width:100%}.product-opinion-table .opinion-main{min-width:280px}.product-opinion-table th,.product-opinion-table td{padding:14px 10px}}
.copy-task-preview{border-top:1px solid var(--line);padding:10px 20px;font-size:11px;color:var(--muted)}.copy-task-preview summary{cursor:pointer;display:list-item}.copy-task-preview textarea{margin-top:12px;width:100%;min-height:230px;font:12px/1.9 Consolas,'Microsoft YaHei',monospace;resize:vertical}

.product-opinion-table .opinion-serial-cell{min-width:52px;width:52px;text-align:center;font:12px/1.7 Consolas,monospace;color:var(--muted);padding-top:19px}.product-opinion-table th:nth-child(2){width:52px;text-align:center}.opinion-row-controls{display:flex;align-items:center;gap:5px}.pending-shot-button{display:block;background:var(--surface-tint);border:1px solid var(--line);border-radius:6px;padding:0;width:100%;margin-top:7px;overflow:hidden;text-align:left}.feedback-screenshots .pending-shot-button .upload-preview{display:block;width:100%;max-height:140px;object-fit:contain;object-position:center;border:0;border-radius:0;margin:0}.pending-shot-button>span{display:flex;align-items:center;gap:6px;padding:6px 9px;font-size:10px;color:var(--accent)}.feedback-image-overlay{z-index:90}.feedback-image-overlay .modal.wide{width:min(1120px,100%);max-height:calc(100dvh - 48px)}.feedback-image-overlay .modal-body{padding:16px;overscroll-behavior:contain}.feedback-image-overlay .opinion-full-image{width:100%;height:auto;max-height:none;object-fit:contain}.feedback-image-overlay .modal-footer{padding:12px 20px}.feedback-panel #opinionContent{min-height:130px}.feedback-panel .feedback-context{padding-top:10px;border-top:1px solid var(--line);margin-top:5px}.product-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:640px){.feedback-image-overlay .modal.wide{max-height:calc(100dvh - 24px)}.feedback-image-overlay .modal-header{padding:12px 16px}.feedback-image-overlay .modal-header .page-code{font-size:9px}}
.product-opinion-table th:first-child{min-width:80px;white-space:nowrap}.pending-image-controls{display:flex;gap:6px;margin-left:auto}.pending-image-controls .btn[aria-pressed=true]{background:var(--soft);border-color:var(--accent);color:var(--accent)}.pending-image-frame{overflow:auto;max-height:calc(100dvh - 270px);text-align:center}.feedback-image-overlay .pending-image-frame .opinion-full-image{width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 270px);object-fit:contain;margin:auto}.feedback-image-overlay .pending-image-frame.original-size .opinion-full-image{max-width:none;max-height:none;width:auto;height:auto;margin:0}
