/* HHD-LANG-I01 · Language governance shell surface.
   Product-facing only: no technical IDs, hashes, provider state or diagnostic mechanics. */

.hhd-private-language-toggle .hhd-private-language-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid currentColor;
    border-radius: var(--hhd-radius-pill);
    font-size: .72rem;
    font-weight: var(--hhd-weight-bold);
    letter-spacing: -.02em;
}

.hhd-language-dialog.e-dialog {
    max-width: calc(100vw - 2rem) !important;
    border-radius: var(--hhd-radius-xl) !important;
    background: var(--hhd-surface-panel) !important;
    color: var(--hhd-text-primary) !important;
    box-shadow: var(--hhd-shadow-lg) !important;
    overflow: hidden;
}

.hhd-language-dialog .e-dlg-header-content {
    padding: 0 !important;
    background: var(--hhd-surface-panel) !important;
    border-bottom: 1px solid var(--hhd-border-subtle);
}

.hhd-language-dialog .e-dlg-content {
    padding: 0 !important;
    background: var(--hhd-surface-panel) !important;
    color: var(--hhd-text-primary) !important;
}

.hhd-language-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--hhd-space-4);
    padding: 1.1rem 1.25rem 1rem;
}

.hhd-language-header > div {
    min-width: 0;
}

.hhd-language-eyebrow {
    display: block;
    margin-bottom: .2rem;
    color: var(--hhd-accent);
    font-size: var(--hhd-font-size-xs);
    font-weight: var(--hhd-weight-bold);
    letter-spacing: .12em;
}

.hhd-language-header h2 {
    margin: 0;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-xl);
    line-height: var(--hhd-line-title);
}

.hhd-language-header p {
    margin: .35rem 0 0;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-close.e-btn {
    flex: 0 0 auto;
    min-width: 2.5rem;
    min-height: 2.5rem;
    border-radius: var(--hhd-radius-pill) !important;
    color: var(--hhd-text-secondary) !important;
    font-size: 1.35rem;
}

.hhd-language-frame {
    display: grid;
    gap: var(--hhd-space-4);
    max-height: min(72vh, 700px);
    padding: 1rem 1.25rem 1.25rem;
    overflow: auto;
    overscroll-behavior: contain;
}

.hhd-language-scope {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--hhd-space-4);
    padding-bottom: var(--hhd-space-3);
    border-bottom: 1px solid var(--hhd-border-subtle);
}

.hhd-language-section-label {
    color: var(--hhd-text-tertiary);
    font-size: var(--hhd-font-size-xs);
    font-weight: var(--hhd-weight-semibold);
    text-transform: uppercase;
    letter-spacing: .06em;
}

.hhd-language-scope-actions {
    display: inline-flex;
    gap: .4rem;
    padding: .25rem;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-pill);
    background: var(--hhd-surface-muted);
}

.hhd-language-scope-button.e-btn {
    min-height: 2.5rem;
    padding-inline: 1rem;
    border-radius: var(--hhd-radius-pill) !important;
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-scope-button:not(.is-active).e-btn {
    border-color: transparent !important;
    background: transparent !important;
    color: var(--hhd-text-secondary) !important;
}

.hhd-language-loading {
    display: flex;
    align-items: center;
    min-height: 8rem;
    justify-content: center;
    color: var(--hhd-text-secondary);
}

.hhd-language-context {
    display: grid;
    gap: var(--hhd-space-4);
}

.hhd-language-summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .65rem var(--hhd-space-4);
    align-items: center;
    padding: var(--hhd-space-4);
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-lg);
    background: var(--hhd-surface-subtle);
}

.hhd-language-summary-primary {
    display: grid;
    gap: .2rem;
    min-width: 0;
}

.hhd-language-summary-primary strong {
    overflow: hidden;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-lg);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hhd-language-summary p {
    grid-column: 1 / -1;
    margin: 0;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-status {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: .3rem .7rem;
    border: 1px solid;
    border-radius: var(--hhd-radius-pill);
    font-size: var(--hhd-font-size-xs);
    font-weight: var(--hhd-weight-bold);
}

.hhd-language-status.is-ready {
    border-color: var(--hhd-status-success-border);
    background: var(--hhd-status-success-bg);
    color: var(--hhd-status-success-fg);
}

.hhd-language-status.is-pending {
    border-color: var(--hhd-status-warning-border);
    background: var(--hhd-status-warning-bg);
    color: var(--hhd-status-warning-fg);
}

.hhd-language-context-grid {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: var(--hhd-space-4);
    align-items: start;
}

.hhd-language-panel {
    min-width: 0;
    padding: var(--hhd-space-4);
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-lg);
    background: var(--hhd-surface-panel);
}

.hhd-language-panel-heading {
    margin-bottom: .75rem;
}

.hhd-language-panel-heading h3 {
    margin: 0;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-md);
}

.hhd-language-panel-heading p,
.hhd-language-muted {
    margin: .3rem 0 0;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-culture-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--hhd-space-2);
}

.hhd-language-culture-chip {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: .3rem .65rem;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-pill);
    background: var(--hhd-surface-muted);
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-panel-action {
    margin-top: var(--hhd-space-3);
}

.hhd-language-inline-loading {
    min-height: 3.5rem;
    display: flex;
    align-items: center;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-culture-selector {
    margin-top: var(--hhd-space-3);
}

.hhd-language-culture-selector .e-multi-select-wrapper {
    min-height: 2.75rem;
    border-radius: var(--hhd-radius-md);
}

.hhd-language-configuration-note {
    margin: .65rem 0 0;
    color: var(--hhd-text-tertiary);
    font-size: var(--hhd-font-size-xs);
    line-height: 1.45;
}

.hhd-language-inline-actions {
    display: flex;
    justify-content: flex-end;
    gap: var(--hhd-space-2);
    margin-top: var(--hhd-space-3);
}

.hhd-language-action-list {
    display: grid;
}

.hhd-language-action-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--hhd-space-3);
    align-items: center;
    min-height: 2.8rem;
    padding-block: .55rem;
    border-bottom: 1px solid var(--hhd-border-subtle);
}

.hhd-language-action-row:last-child {
    border-bottom: 0;
}

.hhd-language-action-row > span {
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-sm);
    font-weight: var(--hhd-weight-medium);
}

.hhd-language-action-row strong {
    font-size: var(--hhd-font-size-xs);
    font-weight: var(--hhd-weight-bold);
}

.hhd-language-action-row strong.is-allowed {
    color: var(--hhd-success);
}

.hhd-language-action-row strong.is-denied {
    color: var(--hhd-text-tertiary);
}

@media (max-width: 760px) {
    .hhd-language-header {
        padding-inline: 1rem;
    }

    .hhd-language-frame {
        max-height: min(76vh, 720px);
        padding-inline: 1rem;
    }

    .hhd-language-scope {
        align-items: stretch;
        flex-direction: column;
    }

    .hhd-language-scope-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
    }

    .hhd-language-summary,
    .hhd-language-context-grid {
        grid-template-columns: 1fr;
    }

    .hhd-language-status {
        justify-self: start;
    }
}

/* LANG-I01 FIX07 · functional workspace */
.hhd-language-current-cultures {
    display: flex;
    align-items: center;
    gap: var(--hhd-space-3);
    min-width: 0;
    padding: .65rem .8rem;
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-md);
    background: var(--hhd-surface-subtle);
}

.hhd-language-current-cultures .hhd-language-culture-list {
    min-width: 0;
}

.hhd-language-workspace {
    min-width: 0;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-lg);
    background: var(--hhd-surface-panel);
    overflow: hidden;
}

.hhd-language-tabs.e-tab .e-tab-header {
    border-bottom: 1px solid var(--hhd-border-subtle);
    background: var(--hhd-surface-subtle);
}

.hhd-language-tabs.e-tab .e-tab-header .e-toolbar-item .e-tab-text {
    color: var(--hhd-text-secondary);
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-tabs.e-tab .e-tab-header .e-toolbar-item.e-active .e-tab-text {
    color: var(--hhd-accent);
}

.hhd-language-tabs.e-tab .e-content {
    min-height: 18rem;
    background: var(--hhd-surface-panel);
}

.hhd-language-documents,
.hhd-language-placeholder-tab {
    min-width: 0;
    padding: var(--hhd-space-4);
}

.hhd-language-workspace-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--hhd-space-4);
    margin-bottom: var(--hhd-space-4);
}

.hhd-language-workspace-heading > div {
    min-width: 0;
}

.hhd-language-workspace-heading h3 {
    margin: 0;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-lg);
}

.hhd-language-workspace-heading p {
    max-width: 52rem;
    margin: .3rem 0 0;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-tab-loading {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 12rem;
    color: var(--hhd-text-secondary);
}

.hhd-language-documents-grid {
    min-width: 0;
}

.hhd-language-documents-grid .e-gridheader,
.hhd-language-documents-grid .e-toolbar,
.hhd-language-documents-grid .e-pager {
    background: var(--hhd-surface-panel);
}

.hhd-language-version-empty,
.hhd-language-row-note {
    color: var(--hhd-text-tertiary);
    font-size: var(--hhd-font-size-xs);
}

.hhd-language-version-proposed {
    color: var(--hhd-warning);
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-doc-state {
    display: inline-flex;
    align-items: center;
    min-height: 1.7rem;
    padding: .2rem .55rem;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-pill);
    background: var(--hhd-surface-muted);
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-doc-state.is-proposed {
    border-color: var(--hhd-status-warning-border);
    background: var(--hhd-status-warning-bg);
    color: var(--hhd-status-warning-fg);
}

.hhd-language-upload-dialog.e-dialog {
    max-width: calc(100vw - 2rem) !important;
    border-radius: var(--hhd-radius-xl) !important;
    background: var(--hhd-surface-panel) !important;
    color: var(--hhd-text-primary) !important;
    box-shadow: var(--hhd-shadow-lg) !important;
    overflow: hidden;
}

.hhd-language-upload-dialog .e-dlg-header-content,
.hhd-language-upload-dialog .e-dlg-content {
    background: var(--hhd-surface-panel) !important;
    color: var(--hhd-text-primary) !important;
}

.hhd-language-upload-dialog .e-dlg-header-content {
    border-bottom: 1px solid var(--hhd-border-subtle);
}

.hhd-language-upload-content {
    display: grid;
    gap: var(--hhd-space-4);
    max-height: min(70vh, 650px);
    padding: .25rem .1rem .1rem;
    overflow: auto;
    overscroll-behavior: contain;
}

.hhd-language-upload-intro,
.hhd-language-upload-help,
.hhd-language-upload-context p {
    margin: 0;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
    line-height: 1.5;
}

.hhd-language-upload-picker {
    display: grid;
    gap: var(--hhd-space-2);
}

.hhd-language-upload-picker .e-upload {
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-md);
    background: var(--hhd-surface-subtle);
}

/* The approved LANG journey uses conventional file selection, not drag & drop.
   Keep Syncfusion as the picker but do not advertise its default drop surface/actions. */
.hhd-language-upload-picker .e-upload .e-upload-drag-hover,
.hhd-language-upload-picker .e-upload .e-upload-actions,
.hhd-language-upload-picker .e-upload .e-file-drop {
    display: none !important;
}

.hhd-language-upload-picker .e-file-select-wrap {
    display: flex;
    align-items: center;
    min-height: 3.25rem;
    padding: .65rem !important;
    border: 0 !important;
}

.hhd-language-upload-file-list {
    display: grid;
    gap: .65rem;
}

.hhd-language-upload-file-row {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(13rem, .8fr) auto;
    gap: var(--hhd-space-3);
    align-items: center;
    padding: .75rem;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-md);
    background: var(--hhd-surface-subtle);
}

.hhd-language-upload-file-name,
.hhd-language-upload-file-culture {
    min-width: 0;
}

.hhd-language-upload-file-name {
    display: grid;
    gap: .2rem;
}

.hhd-language-upload-file-name strong {
    overflow: hidden;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-sm);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hhd-language-upload-file-name span,
.hhd-language-upload-file-culture label,
.hhd-language-upload-context label {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
}

.hhd-language-upload-file-culture {
    display: grid;
    gap: .3rem;
}

.hhd-language-upload-remove.e-btn {
    min-width: 2.25rem;
    min-height: 2.25rem;
    border-radius: var(--hhd-radius-pill) !important;
    font-size: 1.1rem;
}

.hhd-language-upload-context {
    display: grid;
    gap: .4rem;
}

.hhd-language-upload-actions,
.hhd-language-inline-actions {
    display: flex;
    justify-content: flex-end;
    gap: var(--hhd-space-2);
}

.hhd-language-upload-results {
    display: grid;
    gap: var(--hhd-space-3);
}

.hhd-language-upload-results h3 {
    margin: 0;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-lg);
}

.hhd-language-upload-result-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--hhd-space-3);
    align-items: center;
    padding: .75rem;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-md);
    background: var(--hhd-surface-subtle);
}

.hhd-language-upload-result-row > div {
    display: grid;
    gap: .2rem;
    min-width: 0;
}

.hhd-language-upload-result-row strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hhd-language-upload-result-row span {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-upload-result-state {
    font-size: var(--hhd-font-size-xs) !important;
    font-weight: var(--hhd-weight-bold);
}

.hhd-language-upload-result-row.is-success .hhd-language-upload-result-state {
    color: var(--hhd-success);
}

.hhd-language-upload-result-row.is-error .hhd-language-upload-result-state {
    color: var(--hhd-danger);
}


/* LANG-I01 FIX08 · deterministic Blazor file capture.
   Syncfusion remains the enterprise UI framework; InputFile is the browser-file authority used to obtain IBrowserFile
   for the governed multipart request after the SfUploader selection callback failed in runtime. */
.hhd-language-native-file-input {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.hhd-language-file-select-button {
    justify-self: start;
    cursor: pointer;
}

.hhd-language-native-file-input:focus-visible + .hhd-language-file-select-button {
    outline: 2px solid var(--hhd-accent);
    outline-offset: 2px;
}

@media (max-width: 760px) {
    .hhd-language-current-cultures,
    .hhd-language-workspace-heading {
        align-items: stretch;
        flex-direction: column;
    }

    .hhd-language-documents,
    .hhd-language-placeholder-tab {
        padding: var(--hhd-space-3);
    }

    .hhd-language-upload-file-row,
    .hhd-language-upload-result-row {
        grid-template-columns: 1fr;
    }

    .hhd-language-upload-remove.e-btn {
        justify-self: start;
    }
}

/* LANG-I01 FIX09 · viewport-aware, bounded collection surfaces and native Grid capabilities. */
.hhd-language-dialog.e-dialog {
    width: min(1400px, calc(100vw - 1.5rem)) !important;
    height: min(92dvh, 940px) !important;
    max-height: calc(100dvh - 1rem) !important;
}

.hhd-language-dialog .e-dlg-content {
    height: calc(100% - 86px) !important;
    overflow: hidden !important;
}

.hhd-language-frame {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-3);
    height: 100%;
    max-height: none;
    overflow: hidden;
}

.hhd-language-context {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-3);
    min-height: 0;
    flex: 1 1 auto;
}

.hhd-language-workspace {
    display: flex;
    flex-direction: column;
    min-height: 0;
    flex: 1 1 auto;
}

.hhd-language-tabs.e-tab {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}

.hhd-language-tabs.e-tab .e-tab-header .e-toolbar-item .e-tab-text {
    text-transform: none !important;
}

.hhd-language-tabs.e-tab .e-content {
    min-height: 0;
    height: 100%;
    flex: 1 1 auto;
    overflow: hidden;
}

.hhd-language-tabs.e-tab .e-content > .e-item,
.hhd-language-documents {
    height: 100%;
    min-height: 0;
}

.hhd-language-documents {
    display: flex;
    flex-direction: column;
}

.hhd-language-documents-grid-host {
    min-height: 15rem;
    flex: 1 1 auto;
    overflow: hidden;
}

.hhd-language-documents-grid,
.hhd-language-documents-grid .e-gridcontent {
    min-height: 0;
}

.hhd-language-documents-grid .e-toolbar {
    display: none !important;
}

.hhd-language-upload-dialog.e-dialog {
    height: min(76dvh, 720px) !important;
    max-height: calc(100dvh - 1rem) !important;
}

.hhd-language-upload-dialog .e-dlg-content {
    height: calc(100% - 54px) !important;
    overflow: hidden !important;
}

.hhd-language-upload-content {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-3);
    height: 100%;
    max-height: none;
    overflow: hidden;
}

.hhd-language-upload-form-main,
.hhd-language-upload-results {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-3);
    min-height: 0;
    flex: 1 1 auto;
}

.hhd-language-upload-files-grid-host,
.hhd-language-upload-results-grid-host {
    min-height: 10rem;
    flex: 1 1 auto;
    overflow: hidden;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-md);
}

.hhd-language-upload-files-grid,
.hhd-language-upload-results-grid {
    height: 100%;
}

.hhd-language-upload-context {
    flex: 0 0 auto;
}

.hhd-language-upload-actions {
    flex: 0 0 auto;
}

.hhd-language-upload-result-state.is-success { color: var(--hhd-success); font-weight: var(--hhd-weight-bold); }
.hhd-language-upload-result-state.is-error { color: var(--hhd-danger); font-weight: var(--hhd-weight-bold); }

@media (max-width: 760px) {
    .hhd-language-dialog.e-dialog,
    .hhd-language-upload-dialog.e-dialog {
        width: calc(100vw - .5rem) !important;
        height: calc(100dvh - .5rem) !important;
        max-height: calc(100dvh - .5rem) !important;
    }

    .hhd-language-frame {
        padding-inline: .75rem;
    }
}

/* LANG-I01 FIX27 · bounded read-only interpretation projection. */
.hhd-language-interpretations {
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: 100%;
    min-height: 0;
    padding: var(--hhd-space-4);
}

.hhd-language-interpretations-grid-host {
    min-height: 15rem;
    flex: 1 1 auto;
    overflow: hidden;
}

.hhd-language-interpretations-grid,
.hhd-language-interpretations-grid .e-gridcontent {
    min-height: 0;
}

.hhd-language-interpretations-grid .e-gridheader,
.hhd-language-interpretations-grid .e-pager {
    background: var(--hhd-surface-panel);
}

.hhd-language-interpretation-change,
.hhd-language-interpretation-state {
    display: inline-flex;
    align-items: center;
    min-height: 1.7rem;
    padding: .2rem .55rem;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-pill);
    background: var(--hhd-surface-muted);
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-interpretation-change.is-new {
    border-color: var(--hhd-status-success-border);
    background: var(--hhd-status-success-bg);
    color: var(--hhd-status-success-fg);
}

.hhd-language-interpretation-change.is-update {
    border-color: var(--hhd-status-warning-border);
    background: var(--hhd-status-warning-bg);
    color: var(--hhd-status-warning-fg);
}

@media (max-width: 760px) {
    .hhd-language-interpretations { padding: var(--hhd-space-3); }
}



/* LANG-I01 FIX28 · bounded read-only evidence dialog. */
.hhd-language-evidence-dialog .e-dlg-content {
    padding: 0;
    overflow: hidden;
}

.hhd-language-evidence-header {
    min-width: 0;
}

.hhd-language-evidence-header h3 {
    margin: .15rem 0 0;
}

.hhd-language-evidence-header p {
    margin: .25rem 0 0;
    color: var(--hhd-text-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hhd-language-evidence-content {
    min-height: 360px;
    max-height: min(68vh, 650px);
    overflow: hidden;
    padding: var(--hhd-space-4);
}

.hhd-language-evidence-layout {
    display: grid;
    grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
    gap: var(--hhd-space-4);
    height: min(58vh, 560px);
    min-height: 320px;
}

.hhd-language-evidence-sources,
.hhd-language-evidence-detail {
    min-width: 0;
    min-height: 0;
}

.hhd-language-evidence-sources {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-2);
    border-right: 1px solid var(--hhd-border-subtle);
    padding-right: var(--hhd-space-3);
}

.hhd-language-evidence-source-list {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-1);
    overflow: auto;
    padding-right: .25rem;
}

.hhd-language-evidence-source.e-btn {
    display: flex;
    width: 100%;
    min-height: 52px;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    text-align: left;
    white-space: normal;
}

.hhd-language-evidence-source.is-selected {
    font-weight: 600;
}

.hhd-language-evidence-source-name,
.hhd-language-evidence-source-meta {
    display: block;
    width: 100%;
}

.hhd-language-evidence-source-meta {
    margin-top: .1rem;
    font-size: .82rem;
    color: var(--hhd-text-muted);
}

.hhd-language-evidence-detail {
    overflow: auto;
    padding-right: .25rem;
}

.hhd-language-evidence-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--hhd-space-3);
    margin: 0 0 var(--hhd-space-4);
}

.hhd-language-evidence-facts > div {
    min-width: 0;
}

.hhd-language-evidence-facts dt {
    color: var(--hhd-text-muted);
    font-size: .78rem;
    font-weight: 600;
    margin-bottom: .2rem;
}

.hhd-language-evidence-facts dd {
    margin: 0;
    overflow-wrap: anywhere;
}

.hhd-language-evidence-fragment blockquote {
    margin: .5rem 0 0;
    padding: var(--hhd-space-3);
    max-height: 300px;
    overflow: auto;
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-md);
    background: var(--hhd-surface-subtle);
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

@media (max-width: 720px) {
    .hhd-language-evidence-content {
        max-height: 72vh;
        overflow: auto;
    }

    .hhd-language-evidence-layout {
        grid-template-columns: 1fr;
        height: auto;
    }

    .hhd-language-evidence-sources {
        border-right: 0;
        border-bottom: 1px solid var(--hhd-border-subtle);
        padding-right: 0;
        padding-bottom: var(--hhd-space-3);
    }

    .hhd-language-evidence-source-list {
        max-height: 160px;
    }

    .hhd-language-evidence-facts {
        grid-template-columns: 1fr;
    }
}

/* LANG-I01 FIX33 · governed NEW/UPDATE review dialog. */
.hhd-language-grid-actions {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    flex-wrap: wrap;
}

.hhd-language-review-dialog .e-dlg-content {
    padding: 0;
    overflow: hidden;
}

.hhd-language-review-header h3 {
    margin: .15rem 0 0;
}

.hhd-language-review-header p {
    margin: .25rem 0 0;
    color: var(--hhd-text-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hhd-language-review-content {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-3);
    min-height: 430px;
    max-height: min(74vh, 720px);
    overflow: hidden;
    padding: var(--hhd-space-4);
}

.hhd-language-review-summary {
    display: flex;
    align-items: center;
    gap: var(--hhd-space-3);
    flex: 0 0 auto;
    color: var(--hhd-text-secondary);
}

.hhd-language-review-tabs {
    min-height: 0;
    flex: 1 1 auto;
    overflow: hidden;
}

.hhd-language-review-tabs .e-content,
.hhd-language-review-tabs .e-item {
    min-height: 0;
}

.hhd-language-review-tab-panel {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-3);
    max-height: min(52vh, 500px);
    overflow: auto;
    padding: var(--hhd-space-3) .25rem var(--hhd-space-2) 0;
}

.hhd-language-field-label {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-review-collection {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-2);
    min-height: 0;
}

.hhd-language-review-actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: var(--hhd-space-2);
    flex-wrap: wrap;
    flex: 0 0 auto;
    padding-top: var(--hhd-space-2);
    border-top: 1px solid var(--hhd-border-subtle);
}

@media (max-width: 720px) {
    .hhd-language-review-content {
        max-height: 78vh;
        overflow: auto;
        padding: var(--hhd-space-3);
    }

    .hhd-language-review-tab-panel {
        max-height: none;
    }

    .hhd-language-review-actions {
        justify-content: stretch;
    }

    .hhd-language-review-actions .e-btn {
        flex: 1 1 100%;
    }
}

/* LANG-I01 R2.8 · governed proposed-change review. */
.hhd-language-review-resolution-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--hhd-space-3);
}

.hhd-language-review-complementary {
    margin-top: var(--hhd-space-3);
}

.hhd-language-review-complementary ul {
    margin: var(--hhd-space-2) 0 0;
    padding-inline-start: var(--hhd-space-5);
}

.hhd-language-review-inline-actions {
    display: flex;
    align-items: center;
    gap: var(--hhd-space-2);
    flex-wrap: wrap;
}

.hhd-language-review-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--hhd-space-2);
    flex-wrap: wrap;
    width: 100%;
}

.hhd-language-review-unsaved {
    margin-right: auto;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-consolidation-option {
    display: flex;
    align-items: center;
    gap: var(--hhd-space-2);
    padding: var(--hhd-space-1) 0;
}

@media (max-width: 720px) {
    .hhd-language-review-resolution-grid {
        grid-template-columns: 1fr;
    }

    .hhd-language-review-footer .e-btn {
        flex: 1 1 100%;
    }

    .hhd-language-review-unsaved {
        flex: 1 1 100%;
        margin-right: 0;
    }
}

/* LANG-I01 R2.10 UX-FIX01 · governed incorporation decision surface. */
.hhd-language-adoption-decisions {
    display: grid;
    gap: var(--hhd-space-3);
    flex: 0 0 auto;
    margin: var(--hhd-space-2) 0 var(--hhd-space-3);
}

.hhd-language-adoption-decision {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--hhd-space-5);
    padding: var(--hhd-space-4) var(--hhd-space-5);
    border: 1px solid var(--hhd-status-info-border);
    border-radius: var(--hhd-radius-lg);
    background: var(--hhd-status-info-bg);
}

.hhd-language-adoption-decision__content {
    min-width: 0;
}

.hhd-language-adoption-decision__content h4 {
    margin: .2rem 0 var(--hhd-space-1);
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-md);
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-adoption-decision__content p {
    margin: 0;
    color: var(--hhd-text-secondary);
}

.hhd-language-adoption-decision__note {
    margin-top: var(--hhd-space-1) !important;
    font-size: var(--hhd-font-size-xs);
}

.hhd-language-adoption-decision__actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
}

@media (max-width: 720px) {
    .hhd-language-adoption-decision {
        align-items: stretch;
        flex-direction: column;
        gap: var(--hhd-space-3);
        padding: var(--hhd-space-4);
    }

    .hhd-language-adoption-decision__actions .e-btn {
        width: 100%;
    }
}


/* LANG-I01 Delta-02 UI · incorporation master-detail workspace. */
.hhd-language-incorporation-workspace {
    display: grid;
    grid-template-columns: minmax(15rem, 18rem) minmax(0, 1fr);
    min-width: 0;
    height: clamp(24rem, 52vh, 34rem);
    min-height: 0;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-lg);
    background: var(--hhd-surface-panel);
    overflow: hidden;
}

.hhd-language-incorporation-master,
.hhd-language-incorporation-detail {
    min-width: 0;
    min-height: 0;
}

.hhd-language-incorporation-master {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    border-right: 1px solid var(--hhd-border-subtle);
    background: var(--hhd-surface-subtle);
}

.hhd-language-incorporation-master__header {
    display: grid;
    gap: var(--hhd-space-2);
    padding: var(--hhd-space-3);
    border-bottom: 1px solid var(--hhd-border-subtle);
}

.hhd-language-incorporation-master__header > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--hhd-space-2);
}

.hhd-language-incorporation-master__header strong {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-incorporation-search {
    width: 100%;
    min-height: 2.35rem;
    padding: .45rem .65rem;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-md);
    background: var(--hhd-surface-panel);
    color: var(--hhd-text-primary);
    font: inherit;
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-incorporation-search:focus-visible,
.hhd-language-incorporation-list__item:focus-visible,
.hhd-language-incorporation-back:focus-visible {
    outline: 2px solid var(--hhd-focus-ring);
    outline-offset: 2px;
}

.hhd-language-incorporation-list {
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: auto;
    overscroll-behavior: contain;
}

.hhd-language-incorporation-list__item {
    display: grid;
    gap: .25rem;
    width: 100%;
    padding: .8rem .85rem;
    border: 0;
    border-bottom: 1px solid var(--hhd-border-subtle);
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

.hhd-language-incorporation-list__item:hover {
    background: var(--hhd-surface-hover);
}

.hhd-language-incorporation-list__item.is-selected {
    background: var(--hhd-status-info-bg);
    box-shadow: inset 3px 0 0 var(--hhd-accent);
}

.hhd-language-incorporation-list__title {
    overflow: hidden;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-sm);
    font-weight: var(--hhd-weight-semibold);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hhd-language-incorporation-list__meta {
    overflow: hidden;
    color: var(--hhd-text-tertiary);
    font-size: var(--hhd-font-size-xs);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hhd-language-incorporation-list__footer,
.hhd-language-incorporation-summary {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .35rem .6rem;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
}

.hhd-language-incorporation-no-results {
    margin: 0;
    padding: var(--hhd-space-3);
    color: var(--hhd-text-tertiary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-incorporation-detail {
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
    background: var(--hhd-surface-panel);
    overflow: hidden;
}

.hhd-language-incorporation-detail__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--hhd-space-4);
    padding: var(--hhd-space-3) var(--hhd-space-4);
    border-bottom: 1px solid var(--hhd-border-subtle);
}

.hhd-language-incorporation-detail__identity {
    min-width: 0;
}

.hhd-language-incorporation-detail__identity h4 {
    overflow: hidden;
    margin: .2rem 0 .15rem;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-md);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hhd-language-incorporation-detail__identity > p {
    margin: 0 0 .45rem;
    color: var(--hhd-text-tertiary);
    font-size: var(--hhd-font-size-xs);
}

.hhd-language-incorporation-detail__actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: var(--hhd-space-2);
}

.hhd-language-incorporation-state {
    display: inline-flex;
    align-items: center;
    min-height: 1.6rem;
    padding: .15rem .5rem;
    border: 1px solid var(--hhd-border);
    border-radius: var(--hhd-radius-pill);
    background: var(--hhd-surface-muted);
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-incorporation-state.is-ready {
    border-color: var(--hhd-status-success-border);
    background: var(--hhd-status-success-bg);
    color: var(--hhd-status-success-fg);
}

.hhd-language-incorporation-state.is-attention {
    border-color: var(--hhd-status-warning-border);
    background: var(--hhd-status-warning-bg);
    color: var(--hhd-status-warning-fg);
}

.hhd-language-incorporation-state.is-progress {
    border-color: var(--hhd-status-info-border);
    background: var(--hhd-status-info-bg);
    color: var(--hhd-status-info-fg);
}

.hhd-language-incorporation-detail-empty,
.hhd-language-incorporation-detail-loading {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 0;
    padding: var(--hhd-space-5);
    color: var(--hhd-text-secondary);
    text-align: center;
}

.hhd-language-incorporation-detail-empty {
    grid-row: 1 / -1;
}

.hhd-language-incorporation-detail-empty.is-compact {
    grid-row: auto;
}

.hhd-language-incorporation-detail-empty strong {
    color: var(--hhd-text-primary);
}

.hhd-language-incorporation-detail-empty p {
    max-width: 34rem;
    margin: .35rem 0 0;
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-incorporation-detail .hhd-language-interpretations-grid-host {
    min-height: 0;
    height: 100%;
}

.hhd-language-incorporation-back {
    display: none;
    margin: 0 0 .4rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--hhd-accent);
    font: inherit;
    font-size: var(--hhd-font-size-sm);
    font-weight: var(--hhd-weight-semibold);
    cursor: pointer;
}

@media (max-width: 760px) {
    .hhd-language-incorporation-workspace {
        grid-template-columns: 1fr;
        height: clamp(24rem, 58dvh, 36rem);
    }

    .hhd-language-incorporation-master {
        border-right: 0;
    }

    .hhd-language-incorporation-detail {
        display: none;
    }

    .hhd-language-incorporation-workspace.is-detail-open .hhd-language-incorporation-master {
        display: none;
    }

    .hhd-language-incorporation-workspace.is-detail-open .hhd-language-incorporation-detail {
        display: grid;
    }

    .hhd-language-incorporation-back {
        display: inline-flex;
    }

    .hhd-language-incorporation-detail__header {
        align-items: stretch;
        flex-direction: column;
        gap: var(--hhd-space-3);
        padding: var(--hhd-space-3);
    }

    .hhd-language-incorporation-detail__actions {
        justify-content: stretch;
    }

    .hhd-language-incorporation-detail__actions .e-btn {
        flex: 1 1 100%;
    }
}

/* LANG-I01 FIX49 — bounded, explicit adoption confirmation */
.hhd-language-adoption-confirm {
    display: grid;
    gap: var(--hhd-space-3);
}

.hhd-language-adoption-confirm > p {
    margin: 0;
}

.hhd-language-adoption-confirm__identity,
.hhd-language-adoption-confirm__changes {
    display: grid;
    gap: var(--hhd-space-1);
    padding: var(--hhd-space-3);
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-md);
    background: var(--hhd-surface-subtle);
    min-width: 0;
}

.hhd-language-adoption-confirm__identity > span,
.hhd-language-adoption-confirm__changes-title {
    color: var(--hhd-text-muted);
    font-size: var(--hhd-font-size-xs);
    font-weight: 700;
    letter-spacing: .02em;
}

.hhd-language-adoption-confirm__identity strong,
.hhd-language-adoption-confirm__identity small,
.hhd-language-adoption-confirm__change strong {
    overflow-wrap: anywhere;
}

.hhd-language-adoption-confirm__identity small {
    color: var(--hhd-text-muted);
}

.hhd-language-adoption-confirm__changes-list {
    display: grid;
    gap: var(--hhd-space-1);
    max-height: min(15rem, 30vh);
    overflow-y: auto;
    padding-right: var(--hhd-space-1);
}

.hhd-language-adoption-confirm__change {
    padding: var(--hhd-space-2);
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-sm);
    background: var(--hhd-surface);
}


/* LANG-I01 FIX51 — current Terms master-detail */
.hhd-language-terms {
    display: flex;
    flex-direction: column;
    gap: var(--hhd-space-3);
    height: 100%;
    min-height: 0;
    min-width: 0;
    padding: var(--hhd-space-4);
}

.hhd-language-terms-heading {
    align-items: end;
    margin-bottom: 0;
}

.hhd-language-terms-culture {
    display: grid;
    gap: var(--hhd-space-1);
    flex: 0 0 auto;
}

.hhd-language-terms-culture label {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-terms-readback {
    display: flex;
    align-items: center;
    gap: var(--hhd-space-2);
    flex-wrap: wrap;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
}

.hhd-language-terms-readback strong {
    color: var(--hhd-text-primary);
}

.hhd-language-terms-workspace {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(17rem, .75fr);
    gap: var(--hhd-space-3);
    min-height: 19rem;
    flex: 1 1 auto;
    overflow: hidden;
}

.hhd-language-terms-grid-host {
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

.hhd-language-terms-grid,
.hhd-language-terms-grid .e-gridcontent {
    min-height: 0;
}

.hhd-language-term-detail {
    min-width: 0;
    min-height: 0;
    overflow: auto;
    padding: var(--hhd-space-4);
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-md);
    background: var(--hhd-surface-subtle);
}

.hhd-language-term-detail-empty {
    display: grid;
    align-content: center;
    min-height: 100%;
    color: var(--hhd-text-secondary);
    text-align: center;
}

.hhd-language-term-detail-empty p {
    margin: .35rem auto 0;
    max-width: 24rem;
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-term-detail-header {
    display: grid;
    gap: var(--hhd-space-2);
}

.hhd-language-term-detail-header h4 {
    margin: 0;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-lg);
    overflow-wrap: anywhere;
}

.hhd-language-term-detail-header .hhd-language-culture-chip {
    justify-self: start;
}

.hhd-language-term-detail-section {
    margin-top: var(--hhd-space-4);
}

.hhd-language-term-detail-section h5 {
    margin: 0 0 var(--hhd-space-1);
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
    text-transform: uppercase;
    letter-spacing: .03em;
}

.hhd-language-term-detail-section p {
    margin: 0;
    color: var(--hhd-text-primary);
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.hhd-language-term-expression-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--hhd-space-1);
}

.hhd-language-term-expression-list span {
    padding: .25rem .5rem;
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-pill);
    background: var(--hhd-surface);
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
}

.hhd-language-term-detail-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--hhd-space-2);
    margin: var(--hhd-space-4) 0 0;
}

.hhd-language-term-detail-metrics div {
    padding: var(--hhd-space-2);
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-sm);
    background: var(--hhd-surface);
}

.hhd-language-term-detail-metrics dt {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
}

.hhd-language-term-detail-metrics dd {
    margin: .2rem 0 0;
    color: var(--hhd-text-primary);
    font-size: var(--hhd-font-size-lg);
    font-weight: var(--hhd-weight-semibold);
}

@media (max-width: 820px) {
    .hhd-language-terms-workspace {
        grid-template-columns: 1fr;
        overflow: auto;
    }

    .hhd-language-terms-grid-host {
        min-height: 22rem;
    }

    .hhd-language-term-detail {
        min-height: 14rem;
    }
}

@media (max-width: 620px) {
    .hhd-language-terms {
        padding: var(--hhd-space-3);
    }

    .hhd-language-terms-heading {
        align-items: stretch;
        flex-direction: column;
    }

    .hhd-language-terms-culture,
    .hhd-language-terms-culture .e-dropdownlist {
        width: 100%;
    }
}

/* LANG-I01 FIX53 — governed CURRENT term detail localizations. */
.hhd-language-term-detail-loading {
    margin-top: var(--hhd-space-3);
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
}

.hhd-language-term-localizations {
    display: grid;
    gap: var(--hhd-space-2);
}

.hhd-language-term-localization {
    display: grid;
    gap: var(--hhd-space-2);
    padding: var(--hhd-space-3);
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-sm);
    background: var(--hhd-surface);
}

.hhd-language-term-localization header {
    display: flex;
    align-items: center;
    gap: var(--hhd-space-2);
    flex-wrap: wrap;
}

.hhd-language-term-localization header strong {
    min-width: 0;
    overflow-wrap: anywhere;
}

.hhd-language-term-localization p {
    margin: 0;
    color: var(--hhd-text-primary);
    line-height: 1.45;
    overflow-wrap: anywhere;
}

/* LANG-I01 FIX54 — governed term version history. */
.hhd-language-term-history {
    display: grid;
    gap: var(--hhd-space-2);
}

.hhd-language-term-history-item {
    display: grid;
    gap: var(--hhd-space-1);
    padding: var(--hhd-space-3);
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-sm);
    background: var(--hhd-surface);
}

.hhd-language-term-history-item.is-current {
    box-shadow: inset 3px 0 0 var(--hhd-accent);
}

.hhd-language-term-history-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--hhd-space-2);
    flex-wrap: wrap;
}

.hhd-language-term-history-heading strong {
    color: var(--hhd-text-primary);
}

.hhd-language-term-history-current {
    padding: .15rem .45rem;
    border-radius: var(--hhd-radius-pill);
    background: var(--hhd-accent-soft);
    color: var(--hhd-accent-strong);
    font-size: var(--hhd-font-size-xs);
    font-weight: var(--hhd-weight-semibold);
}

.hhd-language-term-history-reason,
.hhd-language-term-history-item time {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
}

/* LANG-I01 FIX55 — source-backed provenance for CURRENT terms. */
.hhd-language-term-sources {
    display: grid;
    gap: var(--hhd-space-2);
}

.hhd-language-term-source {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: var(--hhd-space-2);
    padding: var(--hhd-space-3);
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-sm);
    background: var(--hhd-surface);
}

.hhd-language-term-source strong {
    min-width: 0;
    color: var(--hhd-text-primary);
    overflow-wrap: anywhere;
}

.hhd-language-term-source > span:not(.hhd-language-culture-chip) {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
}

@media (max-width: 620px) {
    .hhd-language-term-source {
        grid-template-columns: 1fr;
        justify-items: start;
    }
}

/* LANG-I01 FIX56 — governed adoption/decision trace for CURRENT terms. */
.hhd-language-term-governance {
    display: grid;
    gap: var(--hhd-space-2);
}

.hhd-language-term-governance-summary {
    display: grid;
    gap: var(--hhd-space-1);
    padding: var(--hhd-space-3);
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-sm);
    background: var(--hhd-surface);
}

.hhd-language-term-governance-summary strong {
    color: var(--hhd-text-primary);
}

.hhd-language-term-governance-summary span,
.hhd-language-term-governance-summary time {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
}

.hhd-language-term-governance-localizations {
    display: grid;
    gap: var(--hhd-space-2);
}

.hhd-language-term-governance-localization {
    display: flex;
    align-items: center;
    gap: var(--hhd-space-2);
    flex-wrap: wrap;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
}

/* LANG-I01 FIX58 — governed Terms views: Effective / My organization / HHD. */
.hhd-language-terms-viewbar {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: var(--hhd-space-3);
    flex-wrap: wrap;
}

.hhd-language-terms-view-control {
    display: grid;
    gap: var(--hhd-space-1);
    min-width: 0;
}

.hhd-language-terms-view-actions {
    display: flex;
    gap: var(--hhd-space-2);
    flex-wrap: wrap;
}

.hhd-language-terms-view-button {
    min-width: 7.5rem;
}

.hhd-language-terms-view-description {
    margin: calc(-1 * var(--hhd-space-2)) 0 0;
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-sm);
    line-height: 1.45;
}

@media (max-width: 620px) {
    .hhd-language-terms-viewbar,
    .hhd-language-terms-view-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .hhd-language-terms-view-button {
        width: 100%;
    }
}

/* LANG-I01 FIX60 — governed retirement UX for CURRENT terms. */
.hhd-language-term-detail-header {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
}

.hhd-language-term-detail-identity {
    display: grid;
    gap: var(--hhd-space-2);
    min-width: 0;
}

.hhd-language-term-retire-action {
    align-self: start;
}

.hhd-language-retirement-header {
    display: grid;
    gap: var(--hhd-space-1);
}

.hhd-language-retirement-header h3 {
    margin: 0;
}

.hhd-language-retirement-content {
    display: grid;
    gap: var(--hhd-space-4);
}

.hhd-language-retirement-content > p {
    margin: 0;
    color: var(--hhd-text-secondary);
    line-height: 1.5;
}

.hhd-language-retirement-identity {
    display: grid;
    gap: var(--hhd-space-1);
    padding: var(--hhd-space-3);
    border: 1px solid var(--hhd-border-subtle);
    border-radius: var(--hhd-radius-sm);
    background: var(--hhd-surface-subtle);
}

.hhd-language-retirement-identity > span,
.hhd-language-retirement-reason > label {
    color: var(--hhd-text-secondary);
    font-size: var(--hhd-font-size-xs);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.hhd-language-retirement-identity strong {
    color: var(--hhd-text-primary);
    overflow-wrap: anywhere;
}

.hhd-language-retirement-identity small,
.hhd-language-retirement-reason small {
    color: var(--hhd-text-secondary);
}

.hhd-language-retirement-reason {
    display: grid;
    gap: var(--hhd-space-2);
}

@media (max-width: 620px) {
    .hhd-language-term-detail-header {
        grid-template-columns: 1fr;
    }

    .hhd-language-term-retire-action {
        width: 100%;
    }
}
