:where(.pf-page,.pf-modal-backdrop,.pf-launcher-menu,.pf-lightbox){--pf-bg:var(--ui-bg);--pf-card:var(--ui-surface);--pf-border:var(--ui-border);--pf-border-strong:color-mix(in srgb, var(--ui-border) 80%, var(--ui-muted));--pf-text:var(--ui-text);--pf-text-sec:var(--ui-secondary);--pf-text-muted:var(--ui-muted);--pf-primary:var(--brand-primary);--pf-primary-dark:var(--brand-hover);--pf-primary-soft:var(--brand-soft);--pf-danger:#dc2626;--pf-danger-soft:#fef2f2;--pf-success:#059669;--pf-radius:12px;--pf-shadow:var(--ui-shadow-raised);font-family:var(--ui-font)}.pf-launcher-menu{border:1px solid var(--pf-border);border-radius:var(--pf-radius);background:var(--pf-card);min-width:180px;box-shadow:var(--pf-shadow);padding:6px}.pf-launcher-menu button{width:100%;color:var(--pf-text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:9px;padding:9px 10px;font-size:13px;display:flex}.pf-launcher-menu button:hover{background:var(--pf-primary-soft);color:var(--pf-primary-dark)}.pf-launcher-menu .pf-launcher-menu-hint{color:var(--pf-text-muted);margin-left:auto;font-size:11px}.pf-modal-backdrop{inset:var(--pf-dialog-top,0px) 0 auto;height:100vh;height:var(--pf-dialog-height,100dvh);box-sizing:border-box;z-index:1300;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a73;justify-content:center;align-items:center;display:flex;position:fixed}.pf-modal{background:var(--pf-card);border-radius:16px;flex-direction:column;width:min(640px,100%);min-width:0;min-height:0;max-height:100%;display:flex;overflow:hidden;box-shadow:0 24px 64px #0f172a47}.pf-modal-header{border-bottom:1px solid var(--pf-border);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px 12px;display:flex}.pf-modal-header h2{color:var(--pf-text);margin:0;font-size:17px;font-weight:800}.pf-modal-header p{color:var(--pf-text-sec);margin:4px 0 0;font-size:12.5px}.pf-modal-body{overscroll-behavior:contain;flex:auto;min-height:0;padding:16px 22px;overflow-y:auto}.pf-modal-footer{border-top:1px solid var(--pf-border);flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;padding:12px 22px 16px;display:flex}.pf-icon-button{width:32px;height:32px;color:var(--pf-text-sec);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.pf-icon-button:hover{background:var(--ui-hover);color:var(--pf-text)}.pf-field{margin-bottom:14px}.pf-field-label{color:var(--pf-text);justify-content:space-between;align-items:baseline;margin-bottom:6px;font-size:13px;font-weight:700;display:flex}.pf-field-label small{color:var(--pf-text-muted);font-weight:500}.pf-type-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.pf-type-option{border:1px solid var(--pf-border);background:var(--pf-card);text-align:left;cursor:pointer;border-radius:10px;padding:9px 11px;transition:border-color .12s,background .12s}.pf-type-option strong{color:var(--pf-text);font-size:13px;display:block}.pf-type-option span{color:var(--pf-text-muted);margin-top:2px;font-size:11.5px;display:block}.pf-type-option.is-active{border-color:var(--pf-primary);background:var(--pf-primary-soft)}.pf-textarea,.pf-input,.pf-select{border:1px solid var(--pf-border-strong);background:var(--pf-card);width:100%;color:var(--pf-text);border-radius:10px;padding:9px 11px;font-family:inherit;font-size:13.5px;line-height:1.55}.pf-textarea{resize:vertical;min-height:120px}.pf-textarea:focus,.pf-input:focus,.pf-select:focus{border-color:var(--pf-primary);box-shadow:0 0 0 3px var(--brand-focus);outline:none}.pf-context-box{border:1px dashed var(--pf-border-strong);background:var(--ui-surface-muted);color:var(--pf-text-sec);word-break:break-all;border-radius:10px;padding:9px 11px;font-size:12px;line-height:1.6}.pf-screenshot-picker{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.pf-screenshot-preview{border:1px solid var(--pf-border);object-fit:cover;background:var(--ui-hover);border-radius:8px;width:96px;height:64px}.pf-error{background:var(--pf-danger-soft);color:var(--pf-danger);border:1px solid #fecaca;border-radius:10px;margin:0 0 12px;padding:9px 11px;font-size:12.5px}.pf-success-box{text-align:center;padding:24px 12px}.pf-success-box h3{color:var(--pf-text);margin:10px 0 6px;font-size:16px}.pf-success-box p{color:var(--pf-text-sec);margin:0;font-size:13px}.pf-btn{border:1px solid var(--pf-border-strong);background:var(--pf-card);height:40px;color:var(--pf-text);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;transition:background .12s,border-color .12s,transform .12s;display:inline-flex}.pf-btn:hover:not(:disabled){background:var(--ui-surface-muted);border-color:var(--pf-border-strong)}.pf-btn:disabled{opacity:.55;cursor:not-allowed}.pf-btn-primary{border-color:var(--pf-primary);background:var(--pf-primary);color:var(--brand-on-primary)}.pf-btn-primary:hover:not(:disabled){background:var(--pf-primary-dark);border-color:var(--pf-primary-dark)}.pf-btn-danger{background:var(--pf-danger-soft);color:var(--pf-danger);border-color:#fca5a5}.pf-btn-danger:hover:not(:disabled){background:#fee2e2;border-color:#f87171}.pf-btn-success{border-color:var(--pf-success);background:var(--pf-success);color:#fff}.pf-btn-success:hover:not(:disabled){background:#047857;border-color:#047857}.pf-btn-sm{border-radius:8px;height:30px;padding:0 10px;font-size:12px}.pf-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;height:22px;padding:0 8px;font-size:11.5px;font-weight:700;display:inline-flex}.pf-badge-blue{color:#1d4ed8;background:#eff6ff}.pf-badge-indigo{color:#4338ca;background:#eef2ff}.pf-badge-violet{color:#6d28d9;background:#f5f3ff}.pf-badge-amber{color:#b45309;background:#fffbeb}.pf-badge-teal{color:#0e7490;background:#ecfeff}.pf-badge-rose{color:#be123c;background:#fff1f2}.pf-badge-green{color:#047857;background:#ecfdf5}.pf-badge-gray{background:var(--ui-hover);color:#64748b}.pf-badge-red{color:#b91c1c;background:#fef2f2}.pf-badge-orange{color:#c2410c;background:#fff7ed}.pf-badge-slate{background:var(--ui-surface-muted);color:#475569;border:1px solid #e2e8f0}.pf-type-tag{border:1px solid var(--pf-border);background:var(--pf-card);height:22px;color:var(--pf-text-sec);white-space:nowrap;border-radius:6px;align-items:center;padding:0 8px;font-size:11.5px;font-weight:600;display:inline-flex}.pf-page{background:radial-gradient(circle at 88% 2%, var(--pf-primary-soft), transparent 34%), var(--pf-bg);min-height:100vh;color:var(--pf-text)}.pf-shell{width:min(1380px,100% - 40px);margin:0 auto;padding:24px 0 48px}.pf-page-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:18px;display:grid}.pf-page-heading{align-items:flex-start;gap:12px;min-width:0;display:flex}.pf-page-eyebrow{letter-spacing:.04em;color:var(--pf-primary-dark);font-size:11.5px;font-weight:700}.pf-page-header h1{margin:2px 0 0;font-size:22px;font-weight:800}.pf-page-header p{color:var(--pf-text-sec);margin:4px 0 0;font-size:13px}.pf-page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pf-workspace{grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.pf-workspace.is-list-only{grid-template-columns:minmax(0,1fr)}.pf-workspace.is-list-only .pf-list{max-height:none}@media (width<=900px){.pf-workspace{grid-template-columns:minmax(0,1fr)}.pf-workspace.has-detail .pf-list-column{display:none}.pf-page-header{grid-template-columns:minmax(0,1fr)}}.pf-card{border:1px solid var(--pf-border);background:var(--pf-card);box-shadow:var(--ui-shadow);border-radius:14px}.pf-filters{border-bottom:1px solid var(--pf-border);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;display:flex}.pf-filters .pf-select{width:auto;height:32px;padding:0 28px 0 10px;font-size:12.5px}.pf-filters-count{color:var(--pf-text-muted);margin-left:auto;font-size:12px}.pf-list{flex-direction:column;max-height:calc(100vh - 230px);display:flex;overflow-y:auto}.pf-list-item{border:none;border-bottom:1px solid var(--pf-border);text-align:left;cursor:pointer;background:0 0;width:100%;padding:12px 14px;font-family:inherit;display:block}.pf-list-item:last-child{border-bottom:none}.pf-list-item:hover{background:var(--ui-surface-muted)}.pf-list-item.is-active{background:var(--pf-primary-soft);box-shadow:inset 3px 0 0 var(--pf-primary)}.pf-list-item-top{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;display:flex}.pf-list-item-summary{color:var(--pf-text);word-break:break-word;font-size:13.5px;line-height:1.5}.pf-list-item-meta{color:var(--pf-text-muted);flex-wrap:wrap;gap:10px;margin-top:6px;font-size:11.5px;display:flex}.pf-pagination{border-top:1px solid var(--pf-border);color:var(--pf-text-sec);justify-content:space-between;align-items:center;padding:10px 14px;font-size:12px;display:flex}.pf-empty{text-align:center;color:var(--pf-text-muted);padding:48px 16px;font-size:13px}.pf-empty strong{color:var(--pf-text-sec);margin-bottom:6px;font-size:14px;display:block}.pf-detail{padding:18px 20px 22px}.pf-detail-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.pf-detail-header .pf-detail-version{color:var(--pf-text-muted);margin-left:auto;font-size:11.5px}.pf-detail-hint{background:var(--ui-surface-muted);color:var(--pf-text-sec);border-radius:10px;margin:0 0 14px;padding:9px 12px;font-size:12.5px}.pf-detail-content{white-space:pre-wrap;word-break:break-word;color:var(--pf-text);margin:0 0 16px;font-size:14px;line-height:1.7}.pf-section-title{letter-spacing:.04em;color:var(--pf-text-muted);text-transform:uppercase;margin:18px 0 8px;font-size:12px;font-weight:800}.pf-meta-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:8px 16px;font-size:12.5px;display:grid}.pf-meta-grid dt{color:var(--pf-text-muted);margin-bottom:2px}.pf-meta-grid dd{color:var(--pf-text);word-break:break-all;margin:0}.pf-meta-grid a{color:var(--pf-primary-dark);text-decoration:none}.pf-meta-grid a:hover{text-decoration:underline}.pf-context-list{background:var(--ui-surface-muted);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:4px 16px;margin:0;padding:10px 12px;font-size:12px;display:grid}.pf-context-list div{gap:8px;min-width:0;display:flex}.pf-context-list dt{color:var(--pf-text-muted);flex:none}.pf-context-list dd{min-width:0;color:var(--pf-text-sec);word-break:break-all;margin:0}.pf-evidence-grid{flex-wrap:wrap;gap:10px;display:flex}.pf-evidence-item{width:180px}.pf-evidence-thumb{border:1px solid var(--pf-border);background:var(--ui-hover);object-fit:cover;cursor:zoom-in;border-radius:10px;width:180px;height:120px;display:block}.pf-evidence-thumb.is-placeholder{color:var(--pf-text-muted);cursor:default;justify-content:center;align-items:center;font-size:12px;display:flex}.pf-evidence-caption{color:var(--pf-text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11.5px;overflow:hidden}.pf-lightbox{z-index:1400;cursor:zoom-out;background:#0f172ad1;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.pf-lightbox img{border-radius:8px;max-width:100%;max-height:100%;box-shadow:0 24px 64px #00000080}.pf-timeline{margin:0;padding:0;list-style:none}.pf-timeline li{padding:0 0 14px 22px;position:relative}.pf-timeline li:before{content:"";background:var(--pf-primary);border-radius:50%;width:8px;height:8px;position:absolute;top:6px;left:5px}.pf-timeline li:after{content:"";background:var(--pf-border);width:2px;position:absolute;top:16px;bottom:-2px;left:8px}.pf-timeline li:last-child:after{display:none}.pf-timeline li.is-reporter:before{background:#0e7490}.pf-timeline li.is-rejected:before{background:#be123c}.pf-timeline li.is-closed:before{background:#047857}.pf-timeline-head{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.pf-timeline-head strong{color:var(--pf-text)}.pf-timeline-head .pf-timeline-actor{color:var(--pf-text-muted);font-size:11.5px}.pf-timeline-head time{color:var(--pf-text-muted);margin-left:auto;font-size:11.5px}.pf-timeline-body{color:var(--pf-text-sec);white-space:pre-wrap;word-break:break-word;margin:4px 0 0;font-size:13px;line-height:1.6}.pf-actions{border:1px solid var(--pf-border);background:var(--ui-surface-muted);border-radius:12px;margin-top:18px;padding:14px 16px}.pf-actions h4{color:var(--pf-text);margin:0 0 10px;font-size:13px;font-weight:800}.pf-actions-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.pf-actions .pf-textarea{min-height:84px}.pf-invalid-close-form{border:0;min-width:0;margin:0;padding:0}.pf-invalid-close-form legend{color:var(--pf-text);margin-bottom:6px;padding:0;font-size:13px;font-weight:700;line-height:1.55}.pf-invalid-close-confirmation{color:var(--pf-text-sec);align-items:flex-start;gap:6px;margin-top:8px;font-size:13px;line-height:1.55;display:flex}.pf-invalid-close-confirmation input{flex:none;margin:3px 0 0}.pf-notice{color:#0e7490;background:#ecfeff;border-radius:10px;margin:0 0 10px;padding:8px 11px;font-size:12.5px}.pf-loading{text-align:center;color:var(--pf-text-muted);padding:40px 16px;font-size:13px}.pf-toast{z-index:1200;background:var(--pf-text);color:#fff;border-radius:12px;max-width:min(420px,100vw - 48px);padding:12px 18px;font-size:13px;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 24px #0000002e}.pf-toast.is-error{background:#b91c1c}.pf-pipeline{border:1px solid var(--pf-border);background:var(--ui-surface-muted);border-radius:12px;flex-wrap:wrap;gap:6px 0;margin:0 0 14px;padding:10px 12px;list-style:none;display:flex}.pf-pipeline-step{min-width:0;color:var(--pf-text-muted);white-space:nowrap;flex:auto;align-items:center;gap:6px;padding-right:18px;font-size:12px;display:flex;position:relative}.pf-pipeline-step:not(:last-child):after{content:"";border-top:1.5px solid var(--pf-border-strong);border-right:1.5px solid var(--pf-border-strong);width:8px;height:8px;position:absolute;top:50%;right:6px;transform:translateY(-50%)rotate(45deg)}.pf-pipeline-dot{border:1.5px solid var(--pf-border-strong);background:var(--pf-card);width:20px;height:20px;color:var(--pf-text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.pf-pipeline-step.is-done .pf-pipeline-dot{border-color:var(--pf-success);background:var(--pf-success);color:#fff}.pf-pipeline-step.is-done .pf-pipeline-label{color:var(--pf-text-sec)}.pf-pipeline-step.is-current .pf-pipeline-dot{border-color:var(--pf-primary);background:var(--pf-primary);color:var(--brand-on-primary);box-shadow:0 0 0 3px var(--brand-focus)}.pf-pipeline-step.is-current .pf-pipeline-label{color:var(--pf-primary-dark);font-weight:800}.pf-actions-next{color:var(--pf-text-muted);margin:0 0 8px;font-size:12px}.pf-actions-next strong{color:var(--pf-text)}.pf-ai-card{border:1px solid var(--brand-border);background:var(--pf-primary-soft);border-radius:12px;margin:14px 0 4px;padding:12px 14px}.pf-ai-card-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pf-ai-card-head .pf-btn{margin-left:auto}.pf-ai-card-title{color:var(--pf-primary-dark);align-items:center;gap:6px;font-size:13px;font-weight:800;display:inline-flex}.pf-ai-card-note{color:var(--pf-text-sec);margin:8px 0 0;font-size:12.5px}.pf-ai-scores{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:6px 16px;margin-top:10px;display:grid}.pf-ai-score{color:var(--pf-text-sec);align-items:center;gap:8px;font-size:12.5px;display:flex}.pf-ai-score strong{color:var(--pf-text)}.pf-ai-score-label{width:44px}.pf-ai-score-bar{gap:3px;display:inline-flex}.pf-ai-score-bar i{background:var(--pf-border);border-radius:2px;width:14px;height:8px}.pf-ai-score-bar i.is-on{background:var(--pf-primary)}.pf-ai-verdict{color:var(--pf-text-sec);flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;font-size:12.5px;display:flex}.pf-ai-summary{color:var(--pf-text);margin:10px 0 0;font-size:13.5px;font-weight:700}.pf-ai-rationale{color:var(--pf-text-sec);white-space:pre-wrap;margin:6px 0 0;font-size:13px;line-height:1.6}.pf-ai-meta{color:var(--pf-text-muted);margin:8px 0 0;font-size:11.5px}.pf-timeline li.is-system:before{background:#6d28d9}@keyframes pf-spin{to{transform:rotate(360deg)}}.pf-page .is-spinning,.pf-ai-card .is-spinning{animation:1s linear infinite pf-spin}.pf-summary{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;display:flex}.pf-summary-chip{border:1px solid var(--pf-border);background:var(--pf-card);height:30px;color:var(--pf-text-sec);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12.5px;display:inline-flex}.pf-summary-chip strong{color:var(--pf-text)}.pf-summary-chip.is-empty{opacity:.55}.pf-summary-chip:hover{border-color:var(--pf-border-strong)}.pf-summary-chip.is-active{border-color:var(--pf-primary);background:var(--pf-primary-soft);color:var(--pf-primary-dark)}.pf-summary-chip.is-active strong{color:var(--pf-primary-dark)}.pf-summary-ai{color:var(--pf-text-muted);gap:10px;margin-left:auto;font-size:12px;display:inline-flex}.pf-summary-ai .is-failed{color:var(--pf-danger)}.pf-list-check{width:15px;height:15px;accent-color:var(--pf-primary);cursor:pointer;margin:0 2px 0 0}.pf-list-item.is-selected{background:var(--pf-primary-soft)}.pf-list-item-ai{color:var(--pf-primary-dark);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:12.5px;overflow:hidden}.pf-list-item-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.pf-select-sm{border-radius:8px;width:auto;height:30px;padding:0 26px 0 8px;font-size:12px}.pf-batch-bar{z-index:2;border-bottom:1px solid var(--brand-border);background:var(--pf-primary-soft);color:var(--pf-text-sec);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;font-size:12.5px;display:flex;position:sticky;top:0}.pf-batch-bar strong{color:var(--pf-text);margin-right:4px}.pf-filters-selectall{color:var(--pf-text-sec);cursor:pointer;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}:where(.pf-page,.pf-modal-backdrop,.pf-launcher-menu) :is(button,a,input,select,textarea,[role=button]):focus-visible{outline:2px solid var(--pf-primary);outline-offset:3px}.pf-page :is(button,input,select,textarea),.pf-modal-backdrop :is(button,input,select,textarea),.pf-launcher-menu button{font-family:inherit}@media (width<=600px){.pf-shell{width:calc(100% - 24px);padding-top:16px}.pf-page-header h1{font-size:20px}.pf-page-actions .pf-btn,.pf-modal .pf-btn,.pf-launcher-menu button{min-height:44px}.pf-icon-button{width:40px;height:40px}.pf-detail{padding:14px}.pf-modal-header,.pf-modal-body,.pf-modal-footer{padding-left:16px;padding-right:16px}.pf-toast{max-width:calc(100vw - 24px);bottom:16px;right:12px}}@media (prefers-reduced-motion:reduce){.pf-btn{transition:none}.pf-page .is-spinning,.pf-ai-card .is-spinning{animation:none}}.pf-notification-list{border-top:1px solid var(--pf-border);max-height:min(38dvh,300px);overflow-y:auto}.pf-notification-list button{overflow-wrap:anywhere;display:block}.pf-notification-list small{color:var(--pf-text-muted);display:block}.pf-unread{color:#fff;background:#dc2626;border-radius:12px;padding:1px 5px;font-size:11px}.pf-upload-grid{grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));gap:12px;width:100%;display:grid}.pf-upload-item{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.pf-upload-item small{overflow-wrap:anywhere;max-width:100%}.pf-upload-item .pf-screenshot-preview{object-fit:contain;width:100%;max-width:100%;height:120px}
