.sf-mask{position:fixed;inset:0;z-index:120000;background:#1115;display:flex;align-items:center;justify-content:center;padding:24px;color:#20232b;font:14px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.sf-dialog{background:#fff;border-radius:18px;width:min(1080px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;box-shadow:0 24px 80px #0003}.sf-header{padding:18px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7ed}.sf-header h2{font-size:20px;margin:0}.sf-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:14px 24px 0}.sf-tabs button[aria-selected=true]{color:#5145d8;border-color:#9389f5;background:#f3f1ff}.sf-content{overflow:auto;min-height:0;padding:18px 24px 24px}.sf-dialog button,.sf-dialog input,.sf-dialog textarea,.sf-dialog select{font:inherit}.sf-dialog button{cursor:pointer;border:1px solid #dce0ea;border-radius:9px;background:#fff;color:#242833;padding:8px 13px}.sf-dialog button:hover{background:#f6f7fa}.sf-dialog button:disabled{opacity:.5;cursor:default}.sf-dialog .sf-primary{background:#6155e8;color:#fff;border-color:#6155e8}.sf-dialog .sf-primary:hover{background:#5045cf}.sf-dialog input,.sf-dialog textarea,.sf-dialog select{box-sizing:border-box;width:100%;border:1px solid #d9deea;border-radius:9px;padding:10px 12px;color:#20232b;background:#fff}.sf-dialog textarea{resize:vertical;min-height:90px}.sf-dialog :focus-visible{outline:2px solid #7060ed;outline-offset:2px}.sf-dialog label{display:block;font-weight:600;margin:14px 0 6px}.sf-row{display:flex;gap:16px}.sf-row>*{flex:1;min-width:0}.sf-muted{color:#70798b;font-size:13px}.sf-notice{background:#f6f7fc;border-radius:10px;padding:12px 14px;margin-bottom:16px}.sf-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:18px}.sf-error{color:#ad283e;white-space:pre-wrap}.sf-success{color:#087846}.sf-upload{border:1px dashed #bcc4d8;background:#fafbfe;border-radius:12px;padding:14px;margin-top:14px}.sf-upload.sf-dragging{background:#eeebff;border-color:#6655e8}.sf-shots{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.sf-shot{width:125px;margin:0}.sf-shot img{width:125px;height:92px;object-fit:contain;background:#f1f2f6;border-radius:7px;display:block}.sf-shot figcaption{overflow-wrap:anywhere;font-size:12px}.sf-shot button{padding:3px 8px;margin-top:4px}.sf-list-tools{display:flex;gap:10px;margin-bottom:16px;align-items:center}.sf-list-tools select{width:200px}.sf-card{border:1px solid #e2e5ed;border-radius:12px;padding:14px;margin-bottom:12px}.sf-card-top{display:flex;justify-content:space-between;gap:16px}.sf-card h3{margin:0;font-size:16px;overflow-wrap:anywhere}.sf-badge{display:inline-block;border-radius:20px;background:#f1f2f7;color:#586074;padding:3px 10px;font-size:12px;white-space:nowrap}.sf-badge[data-state=confirmed]{background:#e5f6ed;color:#16754c}.sf-badge[data-state=test_ready]{background:#eeeaff;color:#5d46a8}.sf-badge[data-state=rejected]{background:#ffedf0;color:#a43b4b}.sf-detail p,.sf-pre{white-space:pre-wrap;overflow-wrap:anywhere}.sf-detail h3{font-size:15px;margin:20px 0 6px}.sf-review{background:#f7f8fb;padding:16px;border-radius:12px;margin-top:20px}.sf-empty{text-align:center;padding:36px 12px;color:#7b8393}.sf-history{padding-left:20px;font-size:13px;color:#667084}.sf-header .sf-close{border:none;font-size:24px;padding:0 8px}.sf-spinner{display:inline-block;width:12px;height:12px;border:2px solid #c4c8d5;border-top-color:#6155e8;border-radius:50%;animation:sf-spin .8s linear infinite;margin-right:6px}@keyframes sf-spin{to{transform:rotate(360deg)}}@media(max-width:640px){.sf-mask{padding:8px}.sf-dialog{max-height:calc(100vh - 16px);border-radius:12px}.sf-header,.sf-tabs,.sf-content{padding-left:16px;padding-right:16px}.sf-row{display:block}.sf-card-top{display:block}.sf-card-top .sf-badge{margin-top:8px}.sf-list-tools{flex-wrap:wrap}}

.sf-origin{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0;font-size:13px;color:#586074;overflow-wrap:anywhere}.sf-badge[data-origin=system_auto]{background:#eaf0ff;color:#2456cc}.sf-badge[data-origin=manual]{background:#f1f2f7;color:#586074}.sf-list-tools{flex-wrap:wrap}.sf-list-tools select{max-width:100%;width:auto;min-width:190px}

/* Feedback is mounted outside the page; inherit the same theme and exclude PS. */
body:not(.is-editor) .sf-mask{background:#0009;color:var(--workspace-text)}
body:not(.is-editor) .sf-dialog{background:var(--workspace-surface);color:var(--workspace-text);border:1px solid var(--workspace-border);box-shadow:var(--shadow-lg)}
body:not(.is-editor) .sf-header{border-color:var(--workspace-border)}
body:not(.is-editor) .sf-dialog :is(h2,h3,label){color:var(--workspace-text)}
body:not(.is-editor) .sf-dialog button{background:var(--workspace-raised);color:var(--workspace-text);border-color:var(--workspace-border)}
body:not(.is-editor) .sf-dialog button:hover{background:var(--workspace-hover);border-color:var(--workspace-focus)}
body:not(.is-editor) .sf-tabs button[aria-selected=true]{background:var(--workspace-soft);color:var(--workspace-text);border-color:var(--workspace-focus)}
body:not(.is-editor) .sf-dialog .sf-primary{background:var(--workspace-accent);color:var(--workspace-accent-text);border-color:var(--workspace-accent)}
body:not(.is-editor) .sf-dialog .sf-primary:hover{background:var(--workspace-accent);color:var(--workspace-accent-text);filter:brightness(.92)}
body:not(.is-editor) .sf-dialog :is(input,textarea,select){background:var(--workspace-bg);color:var(--workspace-text);border-color:var(--workspace-border);accent-color:var(--workspace-accent)}
body:not(.is-editor) .sf-dialog :is(input,textarea)::placeholder{color:var(--workspace-muted)}
body:not(.is-editor) .sf-dialog :focus-visible{outline-color:var(--workspace-focus)}
body:not(.is-editor) .sf-dialog :is(.sf-muted,.sf-empty,.sf-history,.sf-origin,.sf-shot figcaption){color:var(--workspace-muted)}
body:not(.is-editor) .sf-dialog :is(.sf-notice,.sf-review){background:var(--workspace-soft);border:1px solid var(--workspace-border);color:var(--workspace-muted)}
body:not(.is-editor) .sf-dialog .sf-error{color:var(--workspace-danger)}
body:not(.is-editor) .sf-dialog .sf-success{color:var(--workspace-success)}
body:not(.is-editor) .sf-upload{background:var(--workspace-bg);border-color:var(--workspace-border);color:var(--workspace-muted)}
body:not(.is-editor) .sf-upload.sf-dragging{background:var(--workspace-soft);border-color:var(--workspace-focus)}
body:not(.is-editor) .sf-shot img{background:var(--workspace-bg);border:1px solid var(--workspace-border)}
body:not(.is-editor) .sf-card{background:var(--workspace-raised);border-color:var(--workspace-border)}
body:not(.is-editor) .sf-badge{background:var(--workspace-soft);color:var(--workspace-muted);border:1px solid var(--workspace-border)}
body:not(.is-editor) .sf-badge:is([data-state=confirmed],[data-state=resolved]){background:var(--workspace-success-bg);color:var(--workspace-success);border-color:var(--workspace-success-border)}
body:not(.is-editor) .sf-badge[data-state=rejected]{background:var(--workspace-danger-bg);color:var(--workspace-danger);border-color:var(--workspace-danger-border)}
body:not(.is-editor) .sf-badge:is([data-state=test_ready],[data-origin=system_auto]){background:var(--workspace-info-bg);color:var(--workspace-info);border-color:var(--workspace-info-border)}
body:not(.is-editor) .sf-badge:is([data-state=pending_review],[data-state=deferred]){background:var(--workspace-warning-bg);color:var(--workspace-warning);border-color:var(--workspace-warning-border)}
body:not(.is-editor) .sf-badge[data-origin=manual]{background:var(--workspace-soft);color:var(--workspace-muted);border-color:var(--workspace-border)}
body:not(.is-editor) .sf-header .sf-close{background:transparent;color:var(--workspace-muted)}
body:not(.is-editor) .sf-header .sf-close:hover{color:var(--workspace-text);background:var(--workspace-hover)}
body:not(.is-editor) .sf-spinner{border-color:var(--workspace-border);border-top-color:var(--workspace-text)}
