:root{color:#202633;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f4f6f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.auth-shell{background:linear-gradient(#ffffffc7,#f4f6f8f5),radial-gradient(circle at 20% 15%,#2a6ef51f,#0000 30%),radial-gradient(circle at 80% 80%,#1299771f,#0000 28%);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel{background:#fff;border:1px solid #d8dee8;border-radius:8px;width:min(460px,100%);padding:28px;box-shadow:0 18px 48px #2026331f}.brand-mark,.topbar-brand{align-items:center;gap:10px;display:flex}.brand-mark{color:#111827;margin-bottom:24px;font-size:24px;font-weight:760}.auth-form,.config-grid{gap:14px;display:grid}label{color:#5f6877;gap:6px;font-size:13px;font-weight:650;display:grid}input,textarea,select{color:#202633;background:#fff;border:1px solid #cfd6e3;border-radius:7px;outline:none;width:100%;padding:10px 11px}input:focus,textarea:focus,select:focus{border-color:#2d6cdf;box-shadow:0 0 0 3px #2d6cdf24}textarea{resize:vertical}.secret-input{grid-template-columns:1fr 38px;gap:8px;display:grid}.inline-check,.check-field{color:#303846;grid-template-columns:none;align-items:center;gap:8px;display:flex}.inline-check input,.check-field input{width:auto}.app-shell{min-height:100vh}.topbar{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffeb;border-bottom:1px solid #dfe5ee;justify-content:space-between;align-items:center;height:60px;padding:0 18px;display:flex;position:sticky;top:0}.topbar-brand strong{font-size:18px}.topbar-brand span{color:#647084;border:1px solid #cfd6e3;border-radius:999px;padding:2px 8px;font-size:12px}.account{color:#475166;align-items:center;gap:10px;font-size:14px;display:flex}.profile-link{color:inherit;display:inline-flex}.account .project-avatar,.avatar-fallback{border-radius:50%;width:30px;height:30px}.avatar-fallback{color:#354156;background:#e9edf5;place-items:center;font-weight:760;display:grid}.workspace{grid-template-columns:minmax(290px,360px) minmax(420px,1fr) minmax(300px,380px);align-items:start;gap:18px;padding:18px;display:grid}.repository-panel,.builder-panel,.run-panel{background:#fff;border:1px solid #dfe5ee;border-radius:8px;min-height:calc(100vh - 96px);padding:16px}.panel-header,.builder-title-row,.step-header,.history-row,.member-row,.result-row,.selection-tools,.run-buttons,.block-toolbar{align-items:center;display:flex}.panel-header,.builder-title-row{justify-content:space-between;gap:12px;margin-bottom:12px}.panel-header h1,.history h2,.results-list h2,.member-lookup h2{color:#111827;margin:0;font-size:15px}.panel-header span{color:#2457b8;background:#e8f0ff;border-radius:999px;place-items:center;min-width:28px;height:24px;font-size:12px;font-weight:760;display:grid}.search-row{background:#f9fafc;border:1px solid #dfe5ee;border-radius:7px;grid-template-columns:22px 1fr 34px 34px;align-items:center;gap:8px;padding:6px 7px;display:grid}.search-row input{box-shadow:none;background:0 0;border:0;padding:5px 0}.search-row.compact{grid-template-columns:18px 1fr 34px 34px}.search-status{color:#647084;place-items:center;width:34px;height:34px;display:grid}.selection-tools,.run-buttons,.block-toolbar{gap:8px}.selection-tools{margin:10px 0 12px}.selection-tools.two{grid-template-columns:1fr 1fr;display:grid}.selection-tools button,.block-toolbar button,.ghost-button,.secondary-button{color:#344056;background:#fff;border:1px solid #d5dce8;border-radius:7px;padding:8px 10px;font-weight:650}.selection-tools button{flex:1;font-size:12px}.repo-list{gap:6px;max-height:calc(100vh - 250px);padding-right:4px;display:grid;overflow:auto}.folder-row{color:#2f3a4d;border-radius:7px;grid-template-columns:24px 18px 20px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:34px;font-size:13px;display:grid}.folder-row input,.project-row input{width:auto}.folder-row small{color:#6b7485;font-size:12px}.tree-toggle{color:#596578;background:0 0;border:0;place-items:center;width:24px;height:24px;padding:0;display:grid}.project-row{width:100%;min-height:60px;color:inherit;text-align:left;background:#fff;border:1px solid #dfe5ee;border-radius:8px;grid-template-columns:18px 40px 1fr auto;align-items:center;gap:10px;padding:9px;font-size:13px;font-weight:500;display:grid}.project-row.selected{background:#f4f8ff;border-color:#2d6cdf;box-shadow:inset 3px 0 #2d6cdf}.project-avatar{object-fit:cover;border-radius:8px;width:38px;height:38px}.project-avatar.round{border-radius:50%}.project-avatar.fallback{color:#fff;background:linear-gradient(135deg,#2d6cdf,#139873);place-items:center;font-weight:780;display:grid}.project-main,.project-meta,.member-row span,.history-row div,.result-row div{gap:2px;min-width:0;display:grid}.project-main strong,.member-row strong,.history-row strong,.result-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-main small,.project-meta small,.member-row small,.history-row span,.result-row span,.result-row a{color:#6b7485;overflow-wrap:anywhere;font-size:12px}.project-meta{justify-items:end}.load-more,.primary-button{border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-weight:760;display:inline-flex}.load-more{color:#2457b8;background:#edf3ff;width:100%;margin-top:12px}.primary-button{color:#fff;background:#1f7a5c}.secondary-button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.icon-button{color:#344056;background:#fff;border:1px solid #d5dce8;border-radius:7px;place-items:center;width:34px;height:34px;padding:0;display:inline-grid}.icon-button.danger{color:#b42318}.workflow-name{color:#111827;box-shadow:none;border:1px solid #cfd6e3;padding:10px 11px;font-size:16px;font-weight:760}.workflow-name-field{gap:6px;width:min(520px,100%)}.builder-actions{gap:8px;display:flex}.saved-select{margin-bottom:12px}.block-toolbar{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.block-add-buttons,.block-clear-zone{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.block-toolbar button{align-items:center;gap:7px;display:inline-flex}.block-clear-zone{margin-left:auto}.block-toolbar .danger-soft{color:#9f1c14;border-color:#efb5b0}.steps{gap:12px;display:grid}.step-card{background:#fff;border:1px solid #dfe5ee;border-radius:8px;padding:14px}.step-card.disabled{background:#f8fafc}.step-header{justify-content:space-between;gap:10px;margin-bottom:12px}.step-header>div:first-child{color:#111827;align-items:center;gap:8px;display:inline-flex}.step-controls{gap:6px;display:inline-flex}.switch input{display:none}.switch span{background:#cfd6e3;border-radius:999px;width:36px;height:20px;display:block;position:relative}.switch span:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;position:absolute;top:2px;left:2px}.switch input:checked+span{background:#1f7a5c}.switch input:checked+span:after{transform:translate(16px)}.config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wide{grid-column:1/-1}.conditional-slot{contain:layout style;grid-column:1/-1}.conditional-slot,.conditional-slot *{transition:none!important}.conditional-slot.collapsed{display:none}.run-summary{background:#fbfcfe;border:1px solid #dfe5ee;border-radius:8px;gap:8px;margin-bottom:12px;padding:14px;display:grid}.run-summary-count{align-items:center;gap:8px;display:inline-flex}.run-summary-count strong{color:#111827;font-size:30px}.run-summary .help-tip{color:#4d5c71}.run-summary>span{color:#657084;font-size:13px}.selected-projects-button{color:#263142;background:#fff;border:1px solid #cbd5e1;border-radius:7px;align-items:center;gap:7px;width:max-content;padding:7px 10px;font-size:12px;font-weight:760;display:inline-flex}.selected-projects-button:hover:not(:disabled),.selected-projects-button[aria-expanded=true]{color:#17684d;background:#f1faf6;border-color:#1f7a5c}.selected-projects-button:disabled{cursor:not-allowed;opacity:.52}.selected-projects-popover{z-index:190;background:#fff;border:1px solid #1f7a5c;border-radius:8px;grid-template-rows:auto minmax(0,1fr);max-height:calc(100vh - 24px);display:grid;position:fixed;overflow:hidden;box-shadow:0 22px 60px #11182747}.selected-projects-popover header{background:#f1faf6;border-bottom:1px solid #dfe5ee;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.selected-projects-popover header span{color:#5f6877;font-size:12px}.selected-projects-popover header strong{color:#111827;font-size:14px;line-height:1.25}.selected-projects-popover pre{color:#263142;white-space:pre;scrollbar-width:thin;scrollbar-color:#8b98aa #eef2f7;min-height:0;margin:0;padding:11px 12px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.55;overflow:auto}.run-buttons{grid-template-columns:1fr 1fr;display:grid}.error-text{color:#9f1c14;background:#fff6f5;border:1px solid #f2b8b5;border-radius:7px;padding:10px;font-size:13px}.results-list,.member-lookup,.history{gap:9px;margin-top:16px;display:grid}.history-card{color:inherit;text-align:left;background:#fff;border:1px solid #dfe5ee;border-left-width:4px;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.history-card.success{border-left-color:#1f7a5c}.history-card.partial{border-left-color:#c27a12}.history-card.reverted{background:#fffaf0;border-left-color:#c27a12}.history-card.failed{border-left-color:#b42318}.history-card span{gap:2px;min-width:0;display:grid}.history-card small{color:#6b7485;font-size:12px}.status-pill{border-radius:999px;padding:3px 8px;font-size:12px;font-weight:760}.status-pill.success{color:#17684d;background:#e8f6ef}.status-pill.partial{color:#8a5200;background:#fff4df}.status-pill.planned{color:#244f8f;background:#edf4ff}.status-pill.reverted{color:#8a5200;background:#fff4df}.status-pill.failed{color:#9f1c14;background:#fff0ef}.result-row{background:#fff;border:1px solid #dfe5ee;border-radius:8px;align-items:flex-start;gap:9px;padding:10px}.result-row.success,.result-row.planned{border-color:#bbdfcf}.result-row.failed{border-color:#efb5b0}.result-row svg{color:#1f7a5c;flex:none;margin-top:2px}.command-block{color:#e6edf6;background:#101828;border:1px solid #d9e0ea;border-radius:7px;margin-top:8px;position:relative;overflow:hidden}.people-picker{background:#fbfcfe;border:1px solid #dfe5ee;border-radius:8px;gap:8px;padding:10px;display:grid}.people-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.people-header strong{color:#111827;font-size:13px}.selected-people{flex-wrap:wrap;gap:6px;display:flex}.selected-people button{color:#344056;background:#fff;border:1px solid #cfd6e3;border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;display:inline-flex}.empty-selected{color:#6b7485;background:#fff;border:1px dashed #cfd6e3;border-radius:7px;padding:7px 9px;font-size:12px}.member-results{gap:6px;max-height:220px;display:grid;overflow:auto}.member-choice{color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #dfe5ee;border-radius:7px;grid-template-columns:18px 32px 1fr;align-items:center;gap:8px;padding:7px;font-weight:500;display:grid}.member-choice input{width:auto}.member-choice .project-avatar{width:30px;height:30px}.member-choice span{gap:1px;display:grid}.member-choice small{color:#6b7485;font-size:12px}.toast-stack{z-index:100;gap:10px;width:min(420px,100vw - 24px);display:grid;position:fixed;top:74px;right:18px}.toast{background:#fff;border:1px solid #dfe5ee;border-left-width:4px;border-radius:8px;grid-template-columns:22px 1fr 24px;align-items:start;gap:10px;padding:12px;display:grid;box-shadow:0 14px 36px #20263329}.toast.success{border-left-color:#1f7a5c}.toast.error{border-left-color:#b42318}.toast.loading,.toast.info{border-left-color:#2d6cdf}.toast>svg{margin-top:2px}.toast.success>svg{color:#1f7a5c}.toast.error>svg{color:#b42318}.toast span{gap:2px;display:grid}.toast small{color:#5f6877;line-height:1.35}.toast button{color:#647084;background:0 0;border:0;padding:2px}.modal-backdrop{z-index:80;background:#1118276b;justify-content:center;align-items:stretch;padding:12px;display:flex;position:fixed;inset:0;overflow:hidden}.run-modal{background:#fff;border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);align-self:stretch;width:min(1280px,100%);height:auto;min-height:0;max-height:none;display:grid;overflow:hidden;box-shadow:0 24px 80px #11182747}.decision-modal{background:#fff;border-radius:8px;align-self:center;gap:14px;width:min(520px,100%);padding:18px;display:grid;box-shadow:0 24px 80px #11182747}.decision-modal header{grid-template-columns:28px 1fr;align-items:center;gap:10px;display:grid}.decision-modal h2,.decision-modal p{margin:0}.decision-modal header svg{color:#c27a12}.decision-modal header span,.decision-modal p{color:#5f6877;font-size:13px}.decision-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.run-modal>header{border-bottom:1px solid #dfe5ee;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:14px;display:grid}.run-modal-summary{background:#fbfcfe;border-bottom:1px solid #dfe5ee;grid-template-columns:130px 130px 1fr;align-items:center;gap:12px;padding:12px 14px;display:grid}.run-modal-summary>div:not(.failed-navigation){gap:2px;display:grid}.run-modal-summary strong{color:#111827;font-size:18px}.run-modal-summary span{color:#6b7485;font-size:12px}.failed-navigation{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.run-modal h2{margin:0;font-size:17px}.run-modal header span{color:#6b7485;font-size:12px}.run-detail-list{scrollbar-gutter:stable;overscroll-behavior:contain;flex-direction:column;gap:12px;height:100%;min-height:0;padding:14px;display:flex;overflow:hidden scroll}.run-project{background:#fff;border:1px solid #dfe5ee;border-left-width:4px;border-radius:8px;flex:none;min-height:54px;overflow:hidden}.run-project.success{border-left-color:#1f7a5c}.run-project.partial{border-left-color:#c27a12}.run-project.failed{border-left-color:#b42318}.run-project-header{background:#fbfcfe;border-bottom:1px solid #e6ebf2;grid-template-columns:1fr auto;align-items:center;gap:10px;min-height:54px;padding:10px 12px;display:grid}.run-project.collapsed .run-project-header{border-bottom:0}.run-project-toggle{color:#111827;text-align:left;background:0 0;border:0;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-width:0;min-height:32px;padding:0;display:grid}.run-project-toggle strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.run-project-toggle small{color:#6b7485;font-size:12px}.run-project-actions{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;max-height:min(42vh,430px);display:grid;overflow:hidden auto}.run-project-controls,.project-effect-buttons{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.grouped-command-panel{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;flex:none;gap:10px;padding:12px;display:grid}.grouped-command-panel header{justify-content:space-between;align-items:center;gap:12px;display:flex}.grouped-command-panel header div{gap:2px;display:grid}.grouped-command-panel header span{color:#6b7485;font-size:12px}.grouped-command-panel pre{overscroll-behavior:contain;color:#e6edf6;background:#101828;border-radius:7px;max-height:360px;margin:0;padding:12px;font-size:12px;line-height:1.55;overflow:auto}.preview-plan{flex:none;gap:12px;min-height:0;display:grid}.preview-plan.empty{color:#5f6877;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;padding:16px}.preview-plan.empty strong{color:#111827}.preview-job{background:#fff;border:1px solid #dfe5ee;border-left-width:4px;border-radius:8px;gap:0;display:grid;overflow:hidden}.preview-job.planned{border-left-color:#1f7a5c}.preview-job.partial{border-left-color:#c27a12}.preview-job.failed{border-left-color:#b42318}.preview-job>header{background:#fbfcfe;border-bottom:1px solid #e6ebf2;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:11px 12px;display:grid}.preview-job>header div{gap:2px;min-width:0;display:grid}.preview-job>header span{color:#6b7485;font-size:12px}.preview-project-list{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:min(54vh,560px);display:grid;overflow:hidden auto}.preview-project{border-bottom:1px solid #eef2f6;gap:8px;padding:11px 12px;display:grid}.preview-project:last-child{border-bottom:0}.preview-project-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.preview-project-header strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.preview-action-list{gap:7px;display:grid}.preview-action{color:#5f6877;border-left:2px solid #d8e8df;gap:3px;padding-left:9px;display:grid}.preview-action.failed{color:#9f1c14;border-left-color:#efb5b0}.preview-action strong{color:#111827;font-size:13px}.preview-action span{font-size:13px;line-height:1.4}.run-action{border-bottom:1px solid #eef2f6;grid-template-columns:1fr;align-items:start;gap:12px;padding:10px 12px;display:grid}.run-action:last-child{border-bottom:0}.run-action>div:first-child{gap:4px;min-width:0;display:grid}.run-action span,.run-action a{color:#5f6877;overflow-wrap:anywhere;font-size:13px}.run-action.failed{background:#fff8f7}.action-state-button{background:#fff;border:1px solid #d5dce8;border-radius:7px;align-items:center;gap:6px;padding:7px 10px;font-weight:760;display:inline-flex}.field-label{align-items:center;gap:5px;display:inline-flex}.help-tip{color:#778195;vertical-align:middle;cursor:help;outline:none;flex:none;place-items:center;display:inline-grid;position:relative}.help-tip:focus-visible{color:#1f7a5c}.help-popover{z-index:200;color:#f8fafc;text-align:left;white-space:pre-line;pointer-events:auto;scrollbar-width:thin;scrollbar-color:#8fbfac #263142;background:#111827;border:1px solid #1f7a5c;border-radius:8px;padding:12px 13px;font-size:13px;font-weight:560;line-height:1.5;display:block;position:fixed;overflow:auto;box-shadow:0 22px 60px #11182757}.help-popover:before{content:"";background:#111827;border:1px solid #1f7a5c;width:10px;height:10px;position:absolute;left:18px;rotate:45deg}.help-popover.top:before{border-top:0;border-left:0;bottom:-6px}.help-popover.bottom:before{border-bottom:0;border-right:0;top:-6px}button .help-tip{color:currentColor;opacity:.72}.people-header strong .help-tip,.check-field .help-tip,.inline-check .help-tip{margin-left:2px}.action-state-button.revert{color:#9f1c14;border-color:#efb5b0}.action-state-button.redo{color:#17684d;border-color:#bbdfcf}.command-block pre{overscroll-behavior:contain;max-height:240px;margin:0;padding:12px 42px 12px 12px;font-size:12px;line-height:1.55;overflow:auto}.run-detail-list,.run-project-actions,.preview-project-list,.grouped-command-panel pre,.command-block pre{scrollbar-width:auto;scrollbar-color:#8b98aa #eef2f7}.run-detail-list::-webkit-scrollbar{width:12px;height:12px}.run-project-actions::-webkit-scrollbar{width:12px;height:12px}.preview-project-list::-webkit-scrollbar{width:12px;height:12px}.grouped-command-panel pre::-webkit-scrollbar{width:12px;height:12px}.command-block pre::-webkit-scrollbar{width:12px;height:12px}.run-detail-list::-webkit-scrollbar-track{background:#eef2f7;border-radius:999px}.run-project-actions::-webkit-scrollbar-track{background:#eef2f7;border-radius:999px}.preview-project-list::-webkit-scrollbar-track{background:#eef2f7;border-radius:999px}.grouped-command-panel pre::-webkit-scrollbar-track{background:#eef2f7;border-radius:999px}.command-block pre::-webkit-scrollbar-track{background:#eef2f7;border-radius:999px}.run-detail-list::-webkit-scrollbar-thumb{background:#8b98aa;border:3px solid #eef2f7;border-radius:999px}.run-project-actions::-webkit-scrollbar-thumb{background:#8b98aa;border:3px solid #eef2f7;border-radius:999px}.preview-project-list::-webkit-scrollbar-thumb{background:#8b98aa;border:3px solid #eef2f7;border-radius:999px}.grouped-command-panel pre::-webkit-scrollbar-thumb{background:#8b98aa;border:3px solid #eef2f7;border-radius:999px}.command-block pre::-webkit-scrollbar-thumb{background:#8b98aa;border:3px solid #eef2f7;border-radius:999px}.run-detail-list::-webkit-scrollbar-thumb:hover{background:#667085}.run-project-actions::-webkit-scrollbar-thumb:hover{background:#667085}.preview-project-list::-webkit-scrollbar-thumb:hover{background:#667085}.grouped-command-panel pre::-webkit-scrollbar-thumb:hover{background:#667085}.command-block pre::-webkit-scrollbar-thumb:hover{background:#667085}.copy-command{color:#fff;background:#ffffff14;border:1px solid #ffffff3d;border-radius:6px;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:7px;right:7px}.copy-text-button{min-width:118px}.copy-command.copied,.copy-text-button.copied{color:#17684d;background:#e8f6ef;border-color:#1f7a5c}.copy-command.error,.copy-text-button.error{color:#9f1c14;background:#fff0ef;border-color:#efb5b0}.copy-command.copied{color:#fff;background:#1f7a5c}.copy-command.error{color:#fff;background:#b42318}.result-row.failed svg{color:#b42318}.member-row,.history-row{border:1px solid #dfe5ee;border-radius:8px;justify-content:space-between;gap:10px;padding:9px}.member-row{grid-template-columns:34px 1fr 34px;display:grid}.member-row .project-avatar{width:32px;height:32px}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1180px){.workspace{grid-template-columns:320px 1fr}.run-panel{grid-column:1/-1;min-height:auto}}@media (width<=780px){.topbar{flex-direction:column;align-items:flex-start;gap:10px;height:auto;padding:12px}.workspace{grid-template-columns:1fr;padding:12px}.repository-panel,.builder-panel,.run-panel{min-height:auto}.repo-list{max-height:420px}.config-grid,.run-buttons{grid-template-columns:1fr}}
