/* Orvexa 1.0.0 — Quality Workflows styles. */
.quality-modal-open{overflow:hidden}.quality-modal-shell{position:fixed;z-index:140;inset:0;display:grid;place-items:center;padding:20px;pointer-events:none;opacity:0;transition:opacity .18s ease}.quality-modal-shell.open{pointer-events:auto;opacity:1}.quality-modal-backdrop{position:absolute;inset:0;background:rgba(13,17,21,.5);backdrop-filter:blur(4px)}.quality-modal{position:relative;width:min(680px,100%);max-height:min(780px,calc(100dvh - 40px));overflow:auto;border:1px solid var(--line);border-radius:20px;background:var(--surface-solid);box-shadow:0 28px 90px rgba(0,0,0,.24);transform:translateY(10px) scale(.985);transition:transform .2s ease}.quality-modal-shell.open .quality-modal{transform:none}.quality-modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line)}.quality-modal>header h2{font-size:17px;font-weight:800;letter-spacing:-.015em}.quality-modal>header p{margin-top:4px;color:var(--muted);font-size:12.5px;line-height:1.5}.quality-icon-btn{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text)}.quality-icon-btn svg{width:16px}.quality-modal-body{padding:22px}.quality-modal>footer{display:flex;justify-content:flex-end;gap:8px;padding:15px 22px;border-top:1px solid var(--line);background:var(--surface-2)}.quality-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.quality-field{display:grid;gap:7px}.quality-field:has(.quality-textarea),.quality-field:has(.quality-file){grid-column:1/-1}.quality-field>span{font-size:12.5px;font-weight:750}.quality-field>small{color:var(--muted);font-size:11.5px}.quality-control{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);font:600 13px Manrope,sans-serif;outline:none}.quality-control:focus{border-color:color-mix(in srgb,var(--primary) 52%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}.quality-textarea{min-height:104px;padding:11px 12px;resize:vertical;line-height:1.55}.quality-file{padding:9px}.quality-mini-select,.quality-mini-input{min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-solid);color:var(--text);font:650 12px Manrope,sans-serif;outline:none}.quality-mini-input{width:190px}.quality-mini-select:focus,.quality-mini-input:focus{border-color:color-mix(in srgb,var(--primary) 50%,var(--line))}.quality-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}.quality-simulator-summary{grid-column:1/-1;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.quality-simulator-summary small,.quality-simulator-summary b,.quality-simulator-summary span{display:block}.quality-simulator-summary small{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.quality-simulator-summary b{margin-top:4px;font-size:14px}.quality-simulator-summary span{margin-top:3px;color:var(--muted);font-size:12px}.quality-gate-result{grid-column:1/-1;display:grid;grid-template-columns:40px 1fr;gap:12px;margin-top:4px;padding:14px;border:1px solid color-mix(in srgb,var(--amber) 34%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--amber) 6%,var(--surface))}.quality-gate-result.is-blocked{border-color:color-mix(in srgb,var(--danger) 34%,var(--line));background:color-mix(in srgb,var(--danger) 5%,var(--surface))}.quality-gate-result>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--surface-solid);color:var(--amber-text)}.quality-gate-result.is-blocked>span{color:var(--danger-text)}.quality-gate-result b{font-size:13.5px}.quality-gate-result p{margin-top:4px;color:var(--muted);font-size:12.5px;line-height:1.55}.quality-gate-result small{display:block;margin-top:6px;color:var(--muted);font:600 11px ui-monospace,SFMono-Regular,Consolas,monospace}.quality-inline-link{display:inline-flex;margin-top:14px;text-decoration:none}.quality-case-list{display:grid;gap:10px}.quality-case-list article{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.quality-case-list b,.quality-case-list small{display:block}.quality-case-list b{font-size:13px}.quality-case-list small{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45}.quality-new-row,.quality-new-card{animation:quality-enter .24s ease}.quality-review-resolved{opacity:.7}.quality-review-resolved::after{align-self:start;padding:3px 7px;border-radius:999px;background:color-mix(in srgb,var(--mint) 10%,transparent);color:var(--mint-text);font-size:10.5px;font-weight:800;content:"Resolved"}.quality-resolved-note{border-color:color-mix(in srgb,var(--mint) 38%,var(--line))!important;background:color-mix(in srgb,var(--mint) 6%,var(--surface-solid))!important}.quality-danger{background:var(--danger)!important;color:#fff!important}@keyframes quality-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@media(max-width:900px){.quality-toolbar{width:100%;margin-left:0}.p4-panel-head:has(.quality-toolbar){align-items:flex-start;flex-direction:column}.quality-mini-input{width:min(100%,320px)}}@media(max-width:640px){.quality-modal-shell{padding:0;place-items:end center}.quality-modal{width:100%;max-height:92dvh;border-radius:20px 20px 0 0}.quality-form-grid{grid-template-columns:1fr}.quality-field{grid-column:1!important}.quality-modal>header,.quality-modal-body,.quality-modal>footer{padding-left:16px;padding-right:16px}.quality-toolbar,.quality-mini-input,.quality-mini-select{width:100%}.quality-modal>footer .p4-btn{flex:1}}@media(prefers-reduced-motion:reduce){.quality-modal-shell,.quality-modal,.quality-new-row,.quality-new-card{transition:none;animation:none}}



.quality-workflow-backdrop{position:fixed;z-index:148;inset:0;background:rgba(13,17,21,.48);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .2s}.quality-workflow-backdrop.open{opacity:1;pointer-events:auto}
.quality-workflow-drawer{position:fixed;z-index:149;top:72px;right:0;bottom:0;width:min(560px,100vw);display:flex;flex-direction:column;border-left:1px solid var(--line);background:var(--surface-solid);box-shadow:-28px 0 80px rgba(0,0,0,.22);transform:translateX(102%);transition:transform .22s cubic-bezier(.16,1,.3,1)}.quality-workflow-drawer.open{transform:none}.quality-workflow-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line)}.quality-workflow-head h2{font-size:17px;font-weight:800}.quality-workflow-head p{margin-top:4px;color:var(--muted);font-size:12.5px;line-height:1.5}.quality-workflow-body{flex:1;overflow:auto;padding:22px}.quality-workflow-footer{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:8px;padding:15px 22px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-solid) 94%,transparent);backdrop-filter:blur(18px)}.quality-drawer-kicker{margin-bottom:17px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--primary) 7%,var(--surface));color:var(--muted);font-size:11.5px;font-weight:700}
.quality-import-preview{grid-column:1/-1;min-height:160px;border:1px dashed var(--line-strong);border-radius:13px;background:var(--surface-2);overflow:hidden}.quality-import-empty{display:grid;place-items:center;align-content:center;min-height:160px;padding:20px;text-align:center}.quality-import-empty b{font-size:13px}.quality-import-empty span{margin-top:4px;color:var(--muted);font-size:11.5px}.quality-import-summary{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--mint) 5%,var(--surface))}.quality-import-summary b{font-size:12.5px}.quality-import-summary span{color:var(--muted);font-size:11.5px}.quality-import-rows{display:grid}.quality-import-rows>div{display:grid;grid-template-columns:110px 1fr auto;gap:12px;padding:9px 14px;border-bottom:1px solid var(--line);font-size:11.5px;align-items:center}.quality-import-rows>div.is-invalid{background:color-mix(in srgb,var(--danger) 4%,transparent)}.quality-import-rows code{font-size:11px}.quality-import-rows b{color:var(--mint-text)}.quality-import-rows .is-invalid b{color:var(--danger-text)}.quality-import-note{display:block;padding:10px 14px;color:var(--muted);font-size:11px}
@media(max-width:760px){.quality-workflow-drawer{top:0;width:100vw}.quality-workflow-body{padding:18px}.quality-workflow-head,.quality-workflow-footer{padding-left:16px;padding-right:16px}.quality-workflow-footer .p4-btn{flex:1}.quality-import-summary{flex-direction:column}.quality-import-rows>div{grid-template-columns:1fr auto}.quality-import-rows code{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.quality-workflow-drawer,.quality-workflow-backdrop{transition:none}}

.quality-drawer-section{margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.quality-drawer-section h3{font-size:13.5px;font-weight:800}.quality-drawer-section p{margin-top:4px;color:var(--muted);font-size:11.75px;line-height:1.5}



.quality-workflow-drawer .quality-gate-result{margin-bottom:16px}.quality-feedback-toolbar{flex-wrap:nowrap}.quality-feedback-toolbar .quality-mini-input{min-width:190px}.quality-feedback-toolbar .quality-mini-select{min-width:140px}
@media(max-width:980px){.quality-feedback-toolbar{flex-wrap:wrap}.quality-feedback-toolbar .quality-mini-input,.quality-feedback-toolbar .quality-mini-select{min-width:0}}



.quality-policy-steps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:18px}.quality-policy-steps span{display:flex;align-items:center;gap:6px;min-width:0;color:var(--muted);font-size:11.5px;font-weight:750}.quality-policy-steps b{display:grid;place-items:center;width:22px;height:22px;flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:11px}.quality-policy-steps span.active{color:var(--text)}.quality-policy-steps span.active b{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary-text)}.quality-policy-steps span.complete b{border-color:color-mix(in srgb,var(--mint) 35%,var(--line));background:color-mix(in srgb,var(--mint) 8%,var(--surface));color:var(--mint-text)}.quality-policy-create-test{grid-column:1/-1;display:grid;gap:12px}.quality-policy-review-summary{display:grid;gap:10px}.quality-policy-review-summary>div{padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.quality-policy-review-summary small,.quality-policy-review-summary b,.quality-policy-review-summary span{display:block}.quality-policy-review-summary small{color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.07em}.quality-policy-review-summary b{margin-top:4px;font-size:12.75px}.quality-policy-review-summary span{margin-top:3px;color:var(--muted);font-size:11.5px;line-height:1.45}
@media(max-width:760px){.quality-policy-steps{grid-template-columns:repeat(4,1fr)}.quality-policy-steps span{font-size:11px}.quality-workflow-footer:has([data-policy-save-draft]){flex-wrap:wrap}.quality-workflow-footer:has([data-policy-save-draft]) .p4-btn{flex:1 1 calc(50% - 4px)}}
@media(max-width:480px){.quality-policy-steps{grid-template-columns:repeat(2,1fr)}}



.quality-release-steps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:18px}.quality-release-steps span{display:grid;place-items:center;gap:5px;min-height:54px;padding:7px 5px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:10.5px;font-weight:700;text-align:center}.quality-release-steps span b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--surface-2);font-size:11px}.quality-release-steps span.active{border-color:color-mix(in srgb,var(--primary) 42%,var(--line));background:color-mix(in srgb,var(--primary) 7%,var(--surface-solid));color:var(--text)}.quality-release-steps span.complete{color:var(--mint-text)}.quality-rollout-preview{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.quality-rollout-preview span{padding:7px 9px;border-radius:8px;background:var(--surface-solid);font-size:11.5px;font-weight:750}.quality-rollout-preview svg{width:13px;height:13px;color:var(--muted)}
@media(max-width:720px){.quality-release-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.quality-release-steps span:last-child{grid-column:1/-1}.quality-rollout-preview{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}}


.quality-review-resolved::after{content:none!important}
