.stages{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--color-surface-border)}.stages-title{font-size:1.5rem;margin-bottom:.5rem}.stages-subtitle{font-size:1rem;margin-bottom:.75rem}.stages-lead{color:var(--color-text-secondary);max-width:760px;margin-bottom:1.25rem}.stages-add{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-bottom:1.25rem}.stages-add>div{min-width:190px;flex:1 1 190px}.stages-muted{color:var(--color-text-muted);font-size:.875rem}.tt-flow{background-color:var(--color-surface-secondary, #f8fafc);border:1px solid var(--color-surface-border);border-radius:var(--radius-lg, .75rem);padding:1rem;margin-bottom:1.25rem;overflow-x:auto}.tt-empty{color:var(--color-text-muted);margin:0}.tt-flow-list{display:flex;align-items:stretch;gap:.5rem;list-style:none;padding:0;margin:0;min-width:max-content}.tt-chain-node{display:flex;flex-direction:column;gap:.375rem;background:#fff;border:1px solid var(--color-surface-border);border-radius:.75rem;padding:.75rem;min-width:190px;max-width:260px}.tt-chain-index{font-family:var(--font-mono);font-size:.6875rem;color:var(--color-text-muted)}.tt-chain-heading{display:flex;flex-direction:column;gap:.125rem}.tt-chain-label{font-weight:700;font-size:.9375rem}.tt-chain-status,.stage-card-status,.stages-connection-status{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.tt-chain-status.is-calculated,.stage-card-status.is-calculated{color:#15803d}.tt-chain-status.is-missing-input,.stage-card-status.is-missing-input,.tt-chain-status.is-engine-rejected,.stage-card-status.is-engine-rejected{color:#b45309}.tt-chain-status.is-not-run,.stage-card-status.is-not-run,.tt-chain-status.is-not-propagatable,.stage-card-status.is-not-propagatable{color:var(--color-text-muted)}.tt-chain-values{display:flex;flex-direction:column;gap:.25rem}.tt-chip{display:flex;flex-direction:column;font-size:.75rem;background-color:#f1f5f9;border-radius:.375rem;padding:.25rem .375rem}.tt-chip-label{color:var(--color-text-muted)}.tt-chip-value{font-family:var(--font-mono);font-weight:600}.tt-chip-muted{color:var(--color-text-muted)}.tt-chain-link{display:flex;align-items:center;color:var(--color-text-muted);font-size:1.125rem}.tt-chain-product{background-color:#ecfdf5;border-color:#a7f3d0}.stages-connect{margin-bottom:1rem}.stages-connect-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;align-items:end}.stages-connections{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.stages-connection{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;font-size:.8125rem;border:1px solid var(--color-surface-border);border-radius:.5rem;padding:.5rem .625rem}.stages-connection-path{font-weight:600}.stages-connection-status.is-connected,.stages-connection.is-connected .stages-connection-status{color:#15803d}.stages-connection.is-converted .stages-connection-status{color:#0369a1}.stages-connection.is-invalid-quantity .stages-connection-status,.stages-connection.is-cycle .stages-connection-status,.stages-connection.is-missing-upstream .stages-connection-status,.stages-connection.is-missing-target-input .stages-connection-status{color:#b45309}.stages-connection-detail,.stages-connection-conversion,.stages-connection-target{color:var(--color-text-muted)}.stages-connection-conversion{font-family:var(--font-mono)}.stages-status{font-size:.875rem;color:var(--color-text-secondary);min-height:1.25rem;margin-bottom:1rem}.stages-cards{display:flex;flex-direction:column;gap:1rem}.stage-card{border:1px solid var(--color-surface-border);border-radius:.75rem;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.stage-card-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem}.stage-card-title{font-size:1.0625rem;margin:0}.stage-card-engine{font-size:.75rem;color:var(--color-text-muted);font-family:var(--font-mono);margin:.125rem 0 0}.stage-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.stage-field{display:flex;flex-direction:column;gap:.25rem;min-width:0}.stage-field-row{display:flex;align-items:stretch;gap:.5rem}.stage-field input[readonly]{background-color:#ecfdf5;border-color:#a7f3d0}.stage-field.is-unused{opacity:.72}.stage-field.is-unused input[readonly]{background-color:#f1f5f9;border-color:var(--color-surface-border)}.stage-unit{display:inline-flex;align-items:center;font-size:.8125rem;color:var(--color-text-muted);white-space:nowrap}.stage-source{display:flex;flex-wrap:wrap;align-items:baseline;gap:.375rem;font-size:.75rem;margin:0}.stage-source-badge{background-color:#dcfce7;color:#15803d;border-radius:.25rem;padding:.1rem .3rem;font-weight:700;text-transform:uppercase;font-size:.625rem}.stage-source-text,.stage-source-conversion{color:var(--color-text-muted)}.stage-source-conversion{font-family:var(--font-mono)}.stage-source-manual{color:var(--color-text-muted)}.stage-source-unused{color:var(--color-text-muted);font-style:italic}.stage-detail{font-size:.8125rem;color:var(--color-text-secondary);margin:0}.stage-results{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem 1rem;margin:0}.stage-results-label{font-size:.875rem;color:var(--color-text-secondary)}.stage-results-value{margin:0;text-align:right}.stage-results-number{font-family:var(--font-mono);font-weight:700}.stage-results-unit{font-size:.75rem;color:var(--color-text-muted)}.stage-check{display:flex;gap:.5rem;align-items:flex-start;border-top:1px solid var(--color-surface-border);padding-top:.5rem}.stage-check-status{font-size:.625rem;font-weight:700;padding:.15rem .35rem;border-radius:.25rem}.stage-check.is-pass .stage-check-status{background-color:#dcfce7;color:#15803d}.stage-check.is-warn .stage-check-status{background-color:#fef3c7;color:#92400e}.stage-check-label{font-size:.875rem;font-weight:600;margin:0}.stage-check-detail,.stage-check-source{font-size:.75rem;color:var(--color-text-muted);margin:0}.stage-actions{display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:640px){.stages-add{flex-direction:column;align-items:stretch}.stages-add>div{min-width:0}.stage-results{grid-template-columns:minmax(0,1fr)}.stage-results-value{text-align:left}.tt-flow{padding:.75rem}}.page-header[data-astro-cid-omi66uaf]{margin-bottom:2rem}.page-title[data-astro-cid-omi66uaf]{font-size:2.5rem;margin-top:.5rem;margin-bottom:.75rem}.page-lead[data-astro-cid-omi66uaf]{font-size:1.05rem;color:var(--color-text-secondary);max-width:760px}.train-form[data-astro-cid-omi66uaf]{display:flex;flex-direction:column;gap:1rem}.train-section-title[data-astro-cid-omi66uaf]{font-size:1.15rem;margin-bottom:.75rem}.train-grid[data-astro-cid-omi66uaf]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.train-actions[data-astro-cid-omi66uaf]{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.train-status[data-astro-cid-omi66uaf]{font-size:.875rem;color:var(--color-text-muted)}.train-nodes[data-astro-cid-omi66uaf],.train-connections[data-astro-cid-omi66uaf]{list-style:none;display:flex;flex-direction:column;gap:.75rem}.train-node[data-astro-cid-omi66uaf]{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem}.train-node-title[data-astro-cid-omi66uaf]{font-weight:700}.train-node-detail[data-astro-cid-omi66uaf]{font-size:.8125rem;color:var(--color-text-muted);font-family:var(--font-mono)}.train-connection[data-astro-cid-omi66uaf]{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;font-size:.875rem}.train-connection-state[data-astro-cid-omi66uaf]{font-size:.75rem;font-weight:700;text-transform:uppercase}.train-connection[data-astro-cid-omi66uaf].is-valid .train-connection-state[data-astro-cid-omi66uaf]{color:#15803d}.train-connection[data-astro-cid-omi66uaf].is-invalid .train-connection-state[data-astro-cid-omi66uaf]{color:#b45309}.train-results[data-astro-cid-omi66uaf]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem 1rem;margin-bottom:1rem}.train-results-label[data-astro-cid-omi66uaf]{color:var(--color-text-secondary);font-size:.9375rem}.train-results-value[data-astro-cid-omi66uaf]{margin:0;text-align:right}.train-results-value[data-astro-cid-omi66uaf] .metric-val[data-astro-cid-omi66uaf]{font-family:var(--font-mono);font-size:1.25rem;font-weight:700}.train-results-unit[data-astro-cid-omi66uaf]{font-size:.8125rem;color:var(--color-text-muted)}.train-engine[data-astro-cid-omi66uaf]{grid-column:1 / -1;font-size:.8125rem;color:var(--color-text-muted);margin:0}.train-check[data-astro-cid-omi66uaf]{grid-column:1 / -1;display:flex;gap:.75rem;align-items:flex-start;padding-top:.75rem;border-top:1px solid var(--color-surface-border)}.train-check-badge[data-astro-cid-omi66uaf]{font-family:var(--font-mono);font-size:.6875rem;font-weight:700;padding:.2rem .5rem;border-radius:var(--radius-sm)}.train-check-pass[data-astro-cid-omi66uaf]{background-color:#dcfce7;color:#15803d}.train-check-warn[data-astro-cid-omi66uaf]{background-color:#fef3c7;color:#92400e}.train-check-label[data-astro-cid-omi66uaf]{font-weight:600;margin-bottom:.125rem}.train-check-detail[data-astro-cid-omi66uaf],.train-check-source[data-astro-cid-omi66uaf]{font-size:.8125rem;color:var(--color-text-muted)}.train-planned[data-astro-cid-omi66uaf]{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--color-surface-border)}.train-planned-lead[data-astro-cid-omi66uaf]{color:var(--color-text-secondary);max-width:720px}.train-planned-list[data-astro-cid-omi66uaf]{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:640px){.page-title[data-astro-cid-omi66uaf]{font-size:1.875rem}.train-results[data-astro-cid-omi66uaf]{grid-template-columns:minmax(0,1fr)}.train-results-value[data-astro-cid-omi66uaf]{text-align:left}}
