.fpw-launcher{display:grid;gap:9px;padding:13px;border:1px solid #bfdbfe;border-radius:11px;background:linear-gradient(145deg,#f8fbff,#eef6ff);color:#172033}
.fpw-launcher.is-muted{border-color:#dce4ef;background:#fff;color:#64748b}
.fpw-launcher-head{display:grid;gap:2px}.fpw-launcher-head span{font-size:10px;font-weight:800;letter-spacing:.08em;color:#2563eb}.fpw-launcher-head b{font-size:15px}
.fpw-launcher p{margin:0;font-size:11px;line-height:1.55;color:#52627a}.fpw-launcher-state{display:flex;align-items:center;gap:6px;font-size:11px}.fpw-launcher-state strong{color:#1d4ed8}.fpw-launcher-state span{color:#334155}.fpw-launcher-state em{margin-left:auto;color:#64748b;font-style:normal}
.fpw-launcher>button,.fpw-step>button,.fpw-actions button,.fpw-confirm button,.fpw-warning button,.fpw-drawer-foot button{border:1px solid #2563eb;border-radius:8px;padding:8px 11px;background:#2563eb;color:#fff;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.fpw-launcher button:disabled,.fpw-step button:disabled{opacity:.55;cursor:wait}.fpw-launcher button.is-secondary,.fpw-actions button.is-secondary,.fpw-drawer-foot button.is-secondary{border-color:#cbd5e1;background:#fff;color:#334155}
.fpw-overlay{position:fixed;inset:0;z-index:1300;display:flex;justify-content:flex-end;background:rgba(15,23,42,.38);backdrop-filter:blur(2px)}
.fpw-drawer{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(720px,92vw);height:100%;background:#f8fafc;box-shadow:-20px 0 48px rgba(15,23,42,.22)}
.fpw-drawer-head{display:flex;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid #dbe4f0;background:#fff}.fpw-drawer-head div{display:grid;gap:4px}.fpw-drawer-head span{font-size:11px;font-weight:750;color:#2563eb}.fpw-drawer-head h3{margin:0;font-size:21px;color:#14213d}.fpw-drawer-head p{margin:0;color:#64748b;font-size:12px}.fpw-drawer-head>button{align-self:start;width:34px;height:34px;border:1px solid #d7e0ec;border-radius:8px;background:#fff;color:#475569;font-size:22px;cursor:pointer}
.fpw-drawer-body{display:grid;align-content:start;gap:12px;overflow:auto;padding:16px 20px 28px}.fpw-step{display:grid;gap:12px;padding:16px;border:1px solid #dbe4f0;border-radius:12px;background:#fff}.fpw-step.is-pending{background:#f8fafc;color:#64748b}.fpw-step-head{display:flex;gap:10px;align-items:flex-start}.fpw-step-head>span{display:grid;place-items:center;flex:none;width:25px;height:25px;border-radius:50%;background:#eaf2ff;color:#1d4ed8;font-size:12px;font-weight:850}.fpw-step-head>div{display:grid;gap:3px}.fpw-step-head b{font-size:14px;color:#172033}.fpw-step-head small{font-size:11px;line-height:1.5;color:#64748b}
.fpw-roles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fpw-role{display:grid;gap:6px;padding:10px;border:1px solid #e2e8f0;border-radius:9px;background:#fbfdff}.fpw-role>span{display:grid;gap:1px}.fpw-role b{font-size:12px;color:#27364f}.fpw-role small{font-size:9px;color:#94a3b8}.fpw-role select,.fpw-unresolved select{min-width:0;width:100%;border:1px solid #cbd5e1;border-radius:7px;padding:7px 8px;background:#fff;color:#334155;font:inherit;font-size:11px}
.fpw-actions{display:flex;justify-content:flex-end;gap:8px}.fpw-warning,.fpw-confirm,.fpw-success{display:grid;gap:10px;padding:11px;border-radius:9px;font-size:11px;line-height:1.5}.fpw-warning{border:1px solid #fed7aa;background:#fff7ed;color:#9a3412}.fpw-confirm{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a}.fpw-success{border:1px solid #bbf7d0;background:#f0fdf4;color:#166534}.fpw-confirm label{display:grid;gap:6px}.fpw-confirm textarea{resize:vertical;border:1px solid #93c5fd;border-radius:8px;padding:9px;background:#fff;font:inherit;color:#172033}.fpw-unresolved{display:grid;gap:7px}.fpw-unresolved>b{color:#7c2d12}.fpw-unresolved label{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px;align-items:center}
.fpw-sequence{display:grid;gap:7px;margin:0;padding:0;list-style:none}.fpw-sequence li{display:flex;gap:9px;align-items:center;padding:9px;border:1px solid #e2e8f0;border-radius:8px;background:#fbfdff}.fpw-sequence span{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#e0e7ff;color:#3730a3;font-size:11px;font-weight:800}.fpw-sequence b{font-size:12px;color:#334155}.fpw-branches{font-size:11px;color:#475569}.fpw-branches summary{cursor:pointer;font-weight:750}.fpw-branches p{display:grid;gap:2px;padding:7px 0;margin:0;border-bottom:1px solid #eef2f7}.fpw-branches span{color:#64748b}
.fpw-results{display:grid;gap:8px}.fpw-result{display:grid;gap:8px;padding:11px;border:1px solid #dbe4f0;border-radius:9px}.fpw-result header{display:grid;gap:2px}.fpw-result header b{font-size:12px;color:#27364f}.fpw-result header span,.fpw-result>p{margin:0;font-size:10px;color:#64748b}.fpw-result ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.fpw-result li{display:grid;gap:2px;padding-left:9px;border-left:2px solid #f59e0b}.fpw-result li b{font-size:11px;color:#92400e}.fpw-result li span{font-size:10px;line-height:1.5;color:#64748b}
.fpw-version-alert,.fpw-error,.fpw-supplements{display:grid;gap:7px;padding:12px;border-radius:10px;font-size:11px;line-height:1.55}.fpw-version-alert{border:1px solid #fca5a5;background:#fff1f2;color:#9f1239}.fpw-error{border:1px solid #fecaca;background:#fff7f7;color:#991b1b}.fpw-version-alert span,.fpw-error span{color:#7f1d1d}.fpw-version-alert small,.fpw-error small{color:#9f1239}.fpw-supplements{border:1px solid #fde68a;background:#fffbeb;color:#854d0e}.fpw-supplements>article{display:grid;gap:2px;padding-top:7px;border-top:1px solid #fde68a}.fpw-supplements>article span{color:#713f12}
.fpw-drawer-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-top:1px solid #dbe4f0;background:#fff}.fpw-drawer-foot span{font-size:11px;color:#64748b}
.fpw-downstream{display:grid;gap:12px}.fpw-downstream label{display:grid;gap:6px;color:#334155;font-size:12px;font-weight:700}.fpw-downstream textarea,.fpw-downstream input{box-sizing:border-box;width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:9px 11px;background:#fff;color:#0f172a;font:inherit;font-weight:400}.fpw-downstream textarea:focus,.fpw-downstream input:focus{outline:2px solid rgba(37,99,235,.18);border-color:#2563eb}.fpw-downstream-note{margin:4px 0 0;color:#64748b;font-size:12px;line-height:1.6}
@media(max-width:680px){.fpw-drawer{width:100vw}.fpw-roles{grid-template-columns:1fr}.fpw-unresolved label{grid-template-columns:1fr}.fpw-drawer-foot{align-items:stretch;flex-direction:column}}
