.pipeline-timeline-container{width:100%;padding:20px}.pipeline-stage-card{border:2px solid #0000;transition:all .3s}.pipeline-stage-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.pipeline-stage-card.active{background-color:#f0f8ff;border-color:#007bff}.pipeline-stage-card.completed{background-color:#f0fff4;border-color:#28a745}.pipeline-stage-card.failed{background-color:#fff5f5;border-color:#dc3545}.pipeline-stage-card.in-progress{background-color:#f0f8ff;border-color:#007bff;animation:2s infinite pulse}@keyframes pulse{0%{box-shadow:0 0 #007bff66}70%{box-shadow:0 0 0 10px #007bff00}to{box-shadow:0 0 #007bff00}}@keyframes flash-border{0%,to{border-color:var(--border-color)}50%{border-color:#0000}}@keyframes flash-stroke{0%,to{stroke-opacity:1}50%{stroke-opacity:.3}}.flashing-border{animation:1.5s ease-in-out infinite flash-border}.flashing-stroke{animation:1.5s ease-in-out infinite flash-stroke}.timeline-container{padding:20px 0;position:relative}.timeline-line{z-index:1;background-color:#e9ecef;position:absolute}.timeline-line-horizontal{height:2px;top:50%;left:10%;right:10%;transform:translateY(-50%)}.timeline-line-vertical{width:2px;top:0;bottom:0;left:30px}.timeline-node{z-index:3;background-color:#fff;border:3px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;transition:all .3s;display:flex;box-shadow:0 2px 8px #0000001a}.timeline-node:hover{transform:scale(1.1);box-shadow:0 4px 16px #0003}.timeline-node.completed{border-color:#28a745}.timeline-node.failed{border-color:#dc3545}.timeline-node.in-progress{border-color:#007bff;animation:2s infinite pulse}.timeline-node.pending{opacity:.5;border-color:#6c757d}.timeline-card{cursor:pointer;transition:all .2s}.timeline-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.timeline-card-vertical:hover{transform:translate(4px)}.custom-stepper-container{padding:20px 0;position:relative}.custom-stepper-step{transition:all .3s;position:relative}.custom-stepper-step:hover{transform:scale(1.05)}.custom-stepper-step.clickable{cursor:pointer;border-radius:8px;padding:8px;transition:all .2s}.custom-stepper-step.clickable:hover{background-color:#007bff0d;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.custom-stepper-progress-icon{transition:all .3s;position:relative}.custom-stepper-progress-icon.clickable{cursor:pointer;border:2px solid #0000;border-radius:50%;padding:2px;transition:all .3s}.custom-stepper-progress-icon.clickable:hover{filter:brightness(1.1);border-color:#007bff4d;transform:scale(1.1);box-shadow:0 0 0 4px #007bff1a}.custom-stepper-progress-icon.clickable:active{transform:scale(.95)}.custom-stepper-info-cards{margin-top:20px}.custom-stepper-card{cursor:pointer;border:2px solid #0000;transition:all .2s}.custom-stepper-card:hover{border-color:#007bff;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.custom-stepper-card.active{background-color:#f0f8ff;border-color:#007bff}.custom-stepper-card.completed{background-color:#f0fff4;border-color:#28a745}.custom-stepper-card.failed{background-color:#fff5f5;border-color:#dc3545}.custom-stepper-card.in-progress{background-color:#f0f8ff;border-color:#007bff;animation:2s infinite pulse}@media (width<=768px){.timeline-line-vertical{left:20px}.timeline-node{width:50px;height:50px}.timeline-container,.custom-stepper-container{padding:10px 0}.custom-stepper-info-cards{margin-top:15px}}.circular-progress-container{margin-left:8px;transition:transform .2s;display:inline-block;position:relative}.circular-progress-container:hover{filter:brightness(1.1);transform:scale(1.1)}.circular-progress-container.clickable{cursor:pointer}.circular-progress-container.clickable:hover{filter:brightness(1.2);transform:scale(1.15)}@keyframes flash{0%{transform:scale(1);box-shadow:0 0 #007bffb3}50%{transform:scale(1.15);box-shadow:0 0 0 15px #007bff00}to{transform:scale(1);box-shadow:0 0 #007bff00}}.circular-progress-container.flashing{animation:3s ease-out flash}.circular-progress-text{text-align:center;pointer-events:none;color:#495057;font-size:10px;font-weight:600;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.stage-details-modal .mantine-Modal-header{border-bottom:1px solid #e9ecef;margin-bottom:16px;padding-bottom:16px}.stage-details-modal .mantine-Modal-title{color:#212529;font-size:18px;font-weight:600}.stage-details-modal .mantine-Modal-body{padding-top:0}.step-card{background-color:#fafafa;border:1px solid #e9ecef;border-radius:8px;padding:10px 12px;transition:all .2s}.step-card:hover{box-shadow:0 2px 8px #0000001a}.step-card.failed{background-color:#fcfcfd;border-color:#e5e7eb #e5e7eb #e5e7eb #cbd5e1;border-left-width:4px}.step-card.failed:has(.chip.chip-tone-high){border-left-color:#f87171}.step-card.failed:has(.chip.chip-tone-medium){border-left-color:#fb923c}.step-card.failed:has(.chip.chip-tone-low){border-left-color:#fbbf24}.step-card.failed:has(.chip.chip-tone-info){border-left-color:#60a5fa}.step-card.failed:has(.chip.chip-tone-unknown){border-left-color:#94a3b8}.step-card.in-progress{background-color:#f0f8ff;border-color:#b3d9ff}.step-card.completed{background-color:#f0fff4;border-color:#c3e6cb}.progress-bar{background-color:#e9ecef;border-radius:2px;width:100%;height:4px;overflow:hidden}.progress-bar-fill{background-color:#007bff;height:100%;transition:width .3s}.error-message-box{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;margin-top:8px;padding:8px}.error-message-title{color:#721c24;margin-bottom:4px;font-size:12px;font-weight:600}.error-message-text{color:#721c24;white-space:pre-wrap;font-family:monospace;font-size:12px}@media (width<=768px){.pipeline-timeline-container{padding:10px}.circular-progress-text{font-size:8px}.step-card{padding:12px}}.stage-modal-progress{background-color:#f1f5f9;border-radius:3px;align-items:stretch;gap:1px;width:100px;height:6px;display:inline-flex;overflow:hidden}.stage-modal-progress__seg{background-color:#e2e8f0;flex:1 1 0;min-width:4px;height:100%;transition:background-color .15s;display:block}.stage-modal-progress__seg--completed{background-color:#10b981}.stage-modal-progress__seg--failed{background-color:#ef4444}.stage-modal-progress__seg--in_progress{background-color:#3b82f6}.stage-modal-progress__seg--cancelled{background-color:#94a3b8}.stage-modal-failure-banner{background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:6px 10px}.stage-modal-action-block{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px}.stage-modal-dev-toggle{color:#475569;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:2px 0;font-size:10px;font-weight:500;display:inline-flex}.stage-modal-dev-toggle:hover{color:#1e293b}.stage-modal-dev-body{border-left:2px solid #e2e8f0;padding-left:8px}.stage-modal-explanation{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:8px 10px 0;position:relative}.stage-modal-explanation--ai{overflow:hidden}.stage-modal-explanation--ai:before{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(120deg,#0000 0%,#8b5cf61f 45%,#a78bfa2e 50%,#8b5cf61f 55%,#0000 100%) 100% 0/220% 100%;animation:4.2s ease-in-out infinite ai-shimmer;position:absolute;inset:0}@keyframes ai-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.stage-modal-explanation__ai-marker{color:#8b5cf6;flex-shrink:0}.chip__icon--ai-pulse{transform-origin:50%;animation:2.2s ease-in-out infinite ai-pulse}@keyframes ai-pulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.18)}}.stage-modal-explanation__section{border-top:1px solid #e2e8f0;padding:6px 0}.stage-modal-explanation__section:first-of-type{border-top:none;padding-top:2px}.stage-modal-explanation__icon{color:#64748b;flex-shrink:0}.stage-modal-explanation__label{letter-spacing:.06em;color:#64748b;font-size:9px;font-weight:700}.stage-modal-explanation__section--purpose .stage-modal-explanation__icon,.stage-modal-explanation__section--purpose .stage-modal-explanation__label{color:#64748b}.stage-modal-explanation__section--cause .stage-modal-explanation__icon,.stage-modal-explanation__section--cause .stage-modal-explanation__label{color:#b45309}.stage-modal-explanation__section--action .stage-modal-explanation__icon,.stage-modal-explanation__section--action .stage-modal-explanation__label{color:#0f766e}.stage-modal-explanation__value{color:#1e293b;font-size:12px;line-height:1.4}.stage-modal-explanation__footer{z-index:1;background-color:#f8fafc;border-top:1px solid #e2e8f0;margin-top:2px;padding:8px 0;position:sticky;bottom:0}.stage-modal-body--fullscreen{padding:0!important}.stage-modal-fullscreen-layout{flex:1;min-height:0;display:flex;overflow:hidden}.stage-modal-sidebar{background-color:#fafafa;border-right:1px solid #e2e8f0;flex-direction:column;width:240px;min-width:240px;display:flex;overflow-y:auto}.stage-modal-sidebar-header{border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.stage-modal-sidebar-item{text-align:left;cursor:pointer;background:0 0;border:none;border-left:3px solid #0000;align-items:center;gap:8px;width:100%;padding:8px 12px;transition:background-color .1s;display:flex}.stage-modal-sidebar-item:hover{background-color:#f1f5f9}.stage-modal-sidebar-item.selected{background-color:#eff6ff;border-left-color:#3b82f6}.stage-modal-sidebar-item.failed .stage-modal-sidebar-item__name{color:#991b1b;font-weight:500}.stage-modal-sidebar-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.stage-modal-sidebar-dot--completed{background-color:#10b981}.stage-modal-sidebar-dot--failed{background-color:#ef4444}.stage-modal-sidebar-dot--in_progress{background-color:#3b82f6}.stage-modal-sidebar-dot--pending,.stage-modal-sidebar-dot--cancelled{background-color:#94a3b8}.stage-modal-sidebar-item__name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;line-height:1.4;overflow:hidden}.stage-modal-detail-panel{flex:1;min-width:0;min-height:0;padding:16px;overflow-y:auto}@media (width<=768px){.stage-modal-fullscreen-layout{flex-direction:column}.stage-modal-sidebar{width:100%;min-width:unset;border-bottom:1px solid #e2e8f0;border-right:none;flex:none;max-height:160px}.stage-modal-detail-panel{flex:1}}.chip{user-select:none;border:1px solid;border-radius:12px;align-items:center;gap:6px;max-width:360px;padding:2px 8px 2px 6px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:11px;line-height:1.4;display:inline-flex}.chip__icon{flex-shrink:0}.chip__label{white-space:nowrap;flex-shrink:0;font-weight:600}.chip__count{font-variant-numeric:tabular-nums;background-color:#00000014;border-radius:6px;flex-shrink:0;padding:0 4px;font-weight:500}.chip__summary{opacity:.75;white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;min-width:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:10.5px;overflow:hidden}.chip__action{cursor:pointer;opacity:0;background:#0000000f;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-left:2px;margin-right:-2px;padding:0;transition:opacity .12s,background-color .12s;display:inline-flex}.chip:hover .chip__action,.chip:focus-within .chip__action{opacity:1}.chip__action:hover{background:#00000024}.chip-tone-high{color:#991b1b;background-color:#fef2f2;border-color:#fecaca}.chip-tone-medium{color:#9a3412;background-color:#fff7ed;border-color:#fed7aa}.chip-tone-low{color:#854d0e;background-color:#fefce8;border-color:#fde68a}.chip-tone-info{color:#1e3a8a;background-color:#eff6ff;border-color:#bfdbfe}.chip-tone-success{color:#065f46;background-color:#ecfdf5;border-color:#a7f3d0}.chip-tone-unknown{color:#334155;background-color:#f1f5f9;border-color:#cbd5e1}.chip-tone-passed-warn{color:#065f46;background-color:#ecfdf5;border-color:#a7f3d0}.failure-chip{cursor:help}.inline-code-token{color:#1e3a8a;background-color:#dbeafe;border:1px solid #93c5fd;border-radius:3px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11px}
