/* Deployment is a version facet: one assignment surface and two secondary settings. */
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
#deploymentPanel.active {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  padding: 0;
}
.deploy-surface {
  flex: 0 0 auto;
  min-width: 0;
  overflow: visible;
  border: 1px solid var(--wui-stroke);
  border-radius: var(--wui-radius-card);
  background: var(--wui-bg-card);
}
.deploy-heading, .deploy-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.deploy-heading { padding: 16px; border-bottom: 1px solid var(--wui-divider); }
.deploy-heading h2 { margin: 0; font-size: 18px; line-height: 24px; }
.deploy-toolbar h3 { margin: 0; font-size: 14px; line-height: 20px; }
.deploy-toolbar > button { flex-shrink: 0; }
.deploy-meta { color: var(--wui-text-secondary); font-size: 12px; font-weight: 400; }
.deployment-ring-toggle { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; white-space: nowrap; }
.deployment-ring-toggle input { width: 20px; height: 20px; min-height: 20px; margin: 0; }
.deploy-surface.deployment-ring-mode { border: 0; border-radius: 0; background: transparent; }
.deployment-ring-mode > .deploy-heading { padding: 12px 0; border: 0; flex-wrap: wrap; }
.deployment-ring-mode #deploymentAssignments { display: grid; gap: 12px; }
.deploy-ring { min-width: 0; border: 1px solid var(--wui-stroke); border-radius: var(--wui-radius-card); background: var(--wui-bg-card); }
.deploy-ring-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; padding: 12px 16px; border-bottom: 1px solid var(--wui-divider); }
.deploy-ring-identity, .deploy-ring-commands { display: flex; align-items: center; gap: 8px; min-width: 0; }
.deploy-ring-commands { margin-left: auto; }
.deploy-ring-commands .deploy-meta { max-width: 280px; text-align: right; overflow-wrap: anywhere; }
.deploy-ring-identity { flex: 1 1 200px; }
.deploy-ring-identity h3 { min-width: 0; margin: 0; font-size: 16px; line-height: 22px; overflow-wrap: anywhere; }
.deploy-ring-number { display: grid; place-items: center; width: 28px; height: 28px; flex: 0 0 28px; border-radius: 4px; background: var(--wui-control-selected); color: var(--wui-accent-text); font-size: 13px; font-weight: 600; }
.deploy-ring-identity > button { flex-shrink: 0; }
.deploy-ring-conditions { border-top: 1px solid var(--wui-divider); }
.deploy-ring-conditions > summary { display: flex; align-items: center; gap: 8px; min-height: 48px; padding: 8px 16px; list-style: none; font-size: 14px; font-weight: 600; cursor: pointer; }
.deploy-ring-conditions > summary::-webkit-details-marker { display: none; }
.deploy-ring-conditions > summary > .fluent { margin-left: auto; }
.deploy-ring-conditions[open] > summary > .fluent { transform: rotate(180deg); }
.deploy-ring-conditions > summary:hover { background: var(--wui-list-item-hover); }
.deploy-ring-start-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: start; gap: 16px; padding: 0 16px 16px; }
.deploy-ring-start-grid label, .deploy-ring-dialog-body label { display: grid; gap: 6px; color: var(--wui-text-secondary); font-size: 13px; }
.deploy-ring-start-grid input, .deploy-ring-start-grid select, .deploy-ring-dialog-body input { min-width: 0; width: 100%; }
.deploy-ring-footer { display: flex; align-items: center; gap: 12px; padding: 4px 0; }
#deploymentRingError { margin: 12px 16px; }
.deploy-ring-dialog { width: min(480px, calc(100vw - 32px)); }
.deploy-ring-dialog-body { padding: 20px; }
.deploy-ring-dialog-body p { margin: 0; font-size: 14px; line-height: 20px; }
.deploy-ring-dialog-body p + p { margin-top: 12px; }
.deploy-ring-dialog footer { justify-content: flex-end; }
@media (max-width: 800px) {
  #deploymentAssignmentSurface > .deploy-heading { flex-wrap: wrap; }
  .deploy-ring-start-grid { grid-template-columns: 1fr; }
}
.deploy-intent, .deploy-body { padding: 16px; }
.deploy-intent + .deploy-intent { border-top: 1px solid var(--wui-divider); }
.deploy-table { width: 100%; border-collapse: collapse; table-layout: fixed; margin-top: 12px; }
.deploy-table th, .deploy-table td { padding: 8px 12px; text-align: left; vertical-align: middle; border-bottom: 1px solid var(--wui-divider); }
.deploy-table th { color: var(--wui-text-secondary); font-size: 12px; font-weight: 400; }
.deploy-table tr:last-child td { border-bottom: 0; }
.deploy-table th:first-child, .deploy-table td:first-child { padding-left: 0; width: 64%; }
.deploy-table th:last-child, .deploy-table td:last-child { width: 44px; padding-right: 0; text-align: right; }
.deploy-table tbody tr:hover { background: var(--wui-list-item-hover); }
.deploy-group-name { display: flex; align-items: center; gap: 12px; overflow-wrap: anywhere; }
.deploy-group-name > .fluent { color: var(--wui-text-secondary); flex-shrink: 0; }
.deploy-group-name small { display: block; color: var(--wui-text-secondary); font-size: 12px; line-height: 18px; }
button.deploy-icon-button { width: 32px; min-width: 32px; height: 32px; padding: 0; }
.deploy-empty { margin: 12px 0 0; color: var(--wui-text-secondary); font-size: 14px; }
.deploy-disclosure > summary {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 56px;
  padding: 12px 16px;
  list-style: none;
  cursor: default;
  font-size: 16px;
  font-weight: 600;
  border-radius: var(--wui-radius-card);
}
.deploy-disclosure > summary::-webkit-details-marker { display: none; }
.deploy-disclosure > summary > .deploy-meta { margin-left: auto; }
.deploy-disclosure > summary:hover { background: var(--wui-list-item-hover); }
.deploy-disclosure > summary:active { background: var(--wui-list-item-pressed); }
.deploy-disclosure > summary:focus-visible { outline: 2px solid var(--wui-focus); outline-offset: -3px; }
.deploy-disclosure[open] > summary { border-bottom: 1px solid var(--wui-divider); border-radius: var(--wui-radius-card) var(--wui-radius-card) 0 0; }
.deploy-disclosure[open] > summary > .fluent { transform: rotate(180deg); }
.deploy-tag-list { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 12px 0 0; }
.deploy-tag-list li:not(.deploy-empty) { display: flex; align-items: center; gap: 8px; padding: 0 0 0 12px; border: 1px solid var(--wui-stroke-control); border-radius: 4px; }
.deploy-codes th:first-child, .deploy-codes td:first-child { width: 40%; }
.deploy-codes input, .deploy-codes select { width: 100%; min-width: 0; }
.deploy-codes input[aria-invalid="true"] { border-color: var(--wui-danger); }
#deploymentCodeError { margin-top: 12px; }
#deploymentPanel > .license-warning { margin: 0; }
.deploy-picker { width: min(820px, calc(100vw - 32px)); overflow: hidden; background: var(--wui-bg-layer-alt); }
.deploy-picker form { max-height: calc(100vh - 64px); grid-template-rows: auto minmax(0, 1fr) auto; }
.deploy-picker header, .deploy-picker footer { background: var(--wui-bg-layer-alt); }
.deploy-picker-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.deploy-refresh-directory { margin-left: auto; }
.deploy-picker-body { display: grid; min-height: 0; gap: 12px; padding: 20px; }
.deploy-picker-body > label { display: grid; gap: 8px; font-size: 14px; }
.deploy-picker-body > label[hidden] { display: none; }
.deploy-picker-body input[type="search"], .deploy-picker-body select { width: 100%; }
#deploymentPickerOptions { min-width: 0; min-height: 180px; padding: 0; margin: 0; overflow: auto; border-top: 1px solid var(--wui-divider); border-bottom: 1px solid var(--wui-divider); }
.deploy-picker-table { width: 100%; min-width: 620px; border-collapse: collapse; table-layout: fixed; }
.deploy-picker-table th, .deploy-picker-table td { height: 48px; padding: 8px 12px; border-bottom: 1px solid var(--wui-divider); text-align: left; vertical-align: middle; }
.deploy-picker-table th { position: sticky; z-index: 1; top: 0; background: var(--wui-bg-layer-alt); color: var(--wui-text-secondary); font-size: 12px; font-weight: 400; }
.deploy-picker-table th:nth-child(1), .deploy-picker-table th:nth-child(2), .deploy-picker-table td:nth-child(1), .deploy-picker-table td:nth-child(2) { width: 72px; text-align: center; }
.deploy-picker-table th:nth-child(3), .deploy-picker-table td:nth-child(3) { width: 34%; }
.deploy-picker-table tbody tr:hover { background: var(--wui-list-item-hover); }
.deploy-picker-table tbody tr.is-selected { background: var(--wui-list-item-selected); }
.deploy-picker-table tbody tr.is-selected:hover { background: var(--wui-list-item-selected-hover); }
.deploy-picker-table input[type="checkbox"] { width: 20px; height: 20px; min-height: 20px; margin: 0; }
.deploy-picker-group { display: block; overflow-wrap: anywhere; }
.deploy-picker-group strong { display: block; font-size: 14px; font-weight: 400; }
.deploy-picker-group small { display: block; color: var(--wui-text-secondary); font-size: 12px; line-height: 18px; }
.deploy-picker-table td:last-child { color: var(--wui-text-secondary); font-size: 12px; overflow-wrap: anywhere; }
.deploy-picker-tag-options { min-width: 0; padding: 4px 0; margin: 0; border: 0; }
.deploy-picker-option { display: flex; align-items: center; gap: 12px; padding: 10px 12px; min-height: 56px; border-radius: 4px; }
.deploy-picker-option small { display: block; color: var(--wui-text-secondary); font-size: 12px; line-height: 18px; }
.deploy-picker-option strong { font-size: 14px; font-weight: 400; }
.deploy-picker-option:hover:not(.unavailable) { background: var(--wui-list-item-hover); }
.deploy-picker-option:active:not(.unavailable) { background: var(--wui-list-item-pressed); }
.deploy-picker-option:has(input:checked) { background: var(--wui-list-item-selected); }
.deploy-picker-option:has(input:checked):hover { background: var(--wui-list-item-selected-hover); }
.deploy-picker-option.unavailable { color: var(--wui-text-disabled); }
.deploy-picker footer { justify-content: flex-end; }
#deploymentPickerStatus { min-height: 18px; margin: 0; }
.deploy-code-link { display: grid; gap: 8px; align-content: start; }
.deploy-code-link > button { justify-self: start; }
@media (max-width: 1000px) {
  .deploy-table th:first-child, .deploy-table td:first-child { width: 55%; }
  .deploy-codes th:first-child, .deploy-codes td:first-child { width: 36%; }
  .deploy-toolbar { flex-wrap: wrap; }
  .deploy-picker { width: min(760px, calc(100vw - 32px)); }
}

[aria-label="Planned assignment rings"] .deploy-table { margin: 0; }
[aria-label="Planned assignment rings"] .deploy-table :is(th, td) { text-align: left; vertical-align: top; overflow-wrap: anywhere; font-size: 13px; }
[aria-label="Planned assignment rings"] .deploy-table :is(th, td):first-child { width: 28%; padding-left: 12px; }
[aria-label="Planned assignment rings"] .deploy-table :is(th, td):nth-child(2) { width: 40%; }
[aria-label="Planned assignment rings"] .deploy-table :is(th, td):last-child { width: 32%; padding-right: 12px; text-align: left; }
