.pm-quality { font-size: 12px; color: #506079; }
.pm-quality-method { display: flex; align-items: center; gap: 24px; border: 0; margin: 0 0 42px; padding: 8px 0 0 10px; }
.pm-quality-method legend { float: left; padding: 0; margin-right: 8px; }
.pm-quality-method legend i { color: #e46976; font-style: normal; }
.pm-quality-method legend span { color: #9cb1cd; }
.pm-quality-method label { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; white-space: nowrap; }
.pm-quality-method input { width: 14px; height: 14px; margin: 0; accent-color: #3978ff; }
.pm-quality-field { display: flex; align-items: center; gap: 8px; margin-bottom: 20px; }
.pm-quality-field > span { flex: 0 0 42px; text-align: right; white-space: nowrap; }
.pm-quality-template { position: relative; width: 332px; max-width: calc(100% - 50px); }
.pm-quality-template-trigger { display: flex; align-items: center; justify-content: space-between; width: 100%; height: 34px; padding: 7px 10px; border: 1px solid #cfd9e8; border-radius: 4px; background: #fff; color: #647893; font: inherit; }
.pm-quality-template-trigger:hover { border-color: #9bb9e0; }
.pm-quality-template-trigger[aria-expanded=true] { border-color: #3978ff; color: #2869db; }
.pm-quality-template-trigger svg { width: 15px; height: 15px; fill: none; stroke: #99aac1; stroke-width: 1.5; }
.pm-quality-template-trigger[aria-expanded=true] svg { transform: rotate(180deg); }
.pm-quality-template-menu { position: absolute; top: calc(100% + 5px); left: 0; right: 0; z-index: 10; padding: 8px; border: 1px solid #dce5f1; border-radius: 5px; background: #fff; box-shadow: 0 8px 24px #243f6726; }
.pm-quality-template-menu button { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 9px 10px; border: 0; border-radius: 3px; background: #fff; color: #536b8b; text-align: left; font: inherit; }
.pm-quality-template-menu button:hover, .pm-quality-template-menu button[aria-selected=true] { background: #eef4ff; color: #2869db; }
.pm-quality-template-menu p { color: #9aa8ba; text-align: center; padding: 12px; }
.pm-quality-template-menu > small { display: block; border-top: 1px solid #edf1f6; margin-top: 5px; padding: 8px 4px 0; color: #96a4b7; font-size: 11px; }
.pm-quality input:not([type=radio]):not([type=file]) { width: 100%; min-width: 0; height: 33px; padding: 6px 10px; border: 1px solid #cfd9e8; border-radius: 4px; color: #40516c; background: #fff; font: inherit; }
.pm-quality input:not([type=radio]):not([type=file]):focus { outline: none; border-color: #3978ff; box-shadow: 0 0 0 2px #3978ff12; }
.pm-quality-template-search { margin-bottom: 6px; }
.pm-quality-custom { align-items: flex-start; }
.pm-quality-custom > span { padding-top: 10px; }
.pm-quality-standards { flex: 1; min-width: 0; max-width: 1120px; }
.pm-quality-table-wrap { overflow-x: auto; border: 1px solid #e0e6ef; border-radius: 4px; }
.pm-quality-table { width: 100%; min-width: 650px; table-layout: fixed; border-collapse: collapse; }
.pm-quality-table th { height: 39px; padding: 0 8px; background: #f5f7fa; color: #40516a; font-weight: 500; text-align: left; }
.pm-quality-table th small { color: #919cab; font-weight: 400; font-size: 12px; }
.pm-quality-table td { padding: 8px; border-top: 1px solid #e5eaf2; }
.pm-quality-table :is(th,td):last-child { text-align: center; }
.pm-quality-table tbody tr:hover { background: #fafcff; }
.pm-quality-table tr.dragging { opacity: .4; }
.pm-quality-handle { border: 0; padding: 2px; background: transparent; color: #95a4b8; cursor: grab; }
.pm-quality-handle svg { display: block; width: 12px; height: 18px; fill: currentColor; }
.pm-quality-delete { border: 0; padding: 5px 0; background: transparent; color: #3978de; font: inherit; }
.pm-quality-delete:hover { color: #d15d68; }
.pm-quality-empty { padding: 18px !important; color: #99a7b9; }
.pm-quality .pm-purchase-add:disabled { opacity: .4; cursor: default; }
.pm-quality-images { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 12px; margin-top: 16px; }
.pm-quality-upload { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; width: 80px; height: 80px; border: 1px dashed #cfd8e5; border-radius: 4px; background: #f6f8fb; color: #778599; cursor: pointer; }
.pm-quality-upload:hover { border-color: #719be0; background: #f1f6ff; color: #3978de; }
.pm-quality-upload.disabled { opacity: .5; cursor: default; }
.pm-quality-upload svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.pm-quality-upload input { display: none; }
.pm-quality-image { position: relative; width: 80px; height: 80px; }
.pm-quality-image > button:first-child { width: 100%; height: 100%; padding: 4px; border: 1px solid #dce4ef; border-radius: 4px; background: #f8fafc; cursor: zoom-in; }
.pm-quality-image img { width: 100%; height: 100%; object-fit: contain; }
.pm-quality-image-remove { position: absolute; top: -5px; right: -5px; width: 20px; height: 20px; padding: 0; border: 1px solid #fff; border-radius: 50%; color: #fff; background: #7f8fa5; font-size: 15px !important; }
.pm-quality-image-remove:hover { background: #cc6570; }
.pm-quality-image-hint { margin: 9px 0 0; color: #939eaf; font-size: 12px; line-height: 1.7; }
.pm-quality-image-hint > span { color: #afbecf; }
.pm-quality-error { padding: 10px 12px; color: #c85865; border-radius: 4px; background: #fff2f4; line-height: 1.6; overflow-wrap: anywhere; }
@media(max-width:700px) { .pm-quality-method { flex-wrap: wrap; gap: 16px; padding-left: 0; } .pm-quality-method legend { width: 100%; margin-bottom: 14px; } .pm-quality-field { gap: 6px; } .pm-quality-field > span { flex-basis: 42px; } .pm-quality-image-hint { font-size: 11px; } }

.pm-quality-attachments { margin-top: 24px; }
.pm-quality-attachments .pm-attachment-upload input { display: none; }
.pm-quality-attachments > .pm-attachment-field { flex: 1; min-width: 0; }
