data-transfer-rail-panel,
security-profile-import-blade-panel,
security-profile-export-blade-panel {
    color: var(--countermeasure-text, #102725);
}

data-transfer-rail-panel {
    display: block;
    width: 100%;
}

data-transfer-rail-panel .data-transfer-rail-panel {
    display: grid;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--countermeasure-glass-border, rgba(14, 116, 109, 0.22));
    border-radius: 8px;
    background: var(--countermeasure-glass-surface, rgba(255, 255, 255, 0.82));
    box-shadow: var(--countermeasure-shadow, 0 18px 46px rgba(15, 71, 67, 0.14));
    backdrop-filter: blur(12px);
}

data-transfer-rail-panel .data-transfer-rail-heading,
data-transfer-rail-panel .data-transfer-rail-section-heading {
    display: grid;
    gap: 4px;
}

data-transfer-rail-panel .data-transfer-rail-heading {
    border-bottom: 1px solid rgba(44, 93, 89, 0.14);
    padding-bottom: 12px;
}

data-transfer-rail-panel .data-transfer-rail-heading h2 {
    margin: 0;
    color: var(--countermeasure-text, #102725);
    font-size: 1rem;
    line-height: 1.2;
}

data-transfer-rail-panel .data-transfer-rail-heading p,
data-transfer-rail-panel .data-transfer-rail-section-heading p {
    margin: 0;
    color: var(--countermeasure-text-muted, #526866);
    font-size: 0.88rem;
    line-height: 1.42;
}

data-transfer-rail-panel .data-transfer-rail-section {
    display: grid;
    gap: 10px;
}

data-transfer-rail-panel .data-transfer-rail-section + .data-transfer-rail-section {
    border-top: 1px solid rgba(44, 93, 89, 0.14);
    padding-top: 12px;
}

data-transfer-rail-panel .data-transfer-rail-section-heading h3 {
    margin: 0;
    color: var(--countermeasure-text, #102725);
    font-size: 0.92rem;
    line-height: 1.2;
}

data-transfer-rail-panel .data-transfer-rail-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

data-transfer-rail-panel .data-transfer-rail-actions cso-button {
    min-width: 0;
    width: 100%;
}

security-profile-import-blade-panel .security-profile-transfer-blade,
security-profile-export-blade-panel .security-profile-transfer-blade {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
    color: var(--countermeasure-text, #102725);
}

security-profile-import-blade-panel .security-profile-transfer-option-panel,
security-profile-export-blade-panel .security-profile-transfer-option-panel {
    display: grid;
    gap: 14px;
    padding: 16px;
    border: 1px solid var(--countermeasure-glass-border, rgba(14, 116, 109, 0.22));
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.72);
}

security-profile-import-blade-panel .security-profile-transfer-section-heading,
security-profile-export-blade-panel .security-profile-transfer-section-heading {
    display: grid;
    gap: 4px;
}

security-profile-import-blade-panel .security-profile-transfer-section-heading h3,
security-profile-export-blade-panel .security-profile-transfer-section-heading h3 {
    margin: 0;
    color: var(--countermeasure-text, #102725);
    font-size: 1rem;
    line-height: 1.25;
}

security-profile-import-blade-panel .security-profile-transfer-section-heading p,
security-profile-export-blade-panel .security-profile-transfer-section-heading p {
    margin: 0;
    color: var(--countermeasure-text-muted, #526866);
    line-height: 1.42;
}

security-profile-import-blade-panel .security-profile-transfer-file-picker,
security-profile-export-blade-panel .security-profile-transfer-confirmation {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
    border: 1px dashed rgba(44, 93, 89, 0.42);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.72);
    padding: 12px;
    color: var(--countermeasure-text-muted, #526866);
    font-weight: 600;
}

security-profile-export-blade-panel .security-profile-transfer-confirmation {
    display: grid;
    justify-content: stretch;
    gap: 4px;
}

security-profile-import-blade-panel .security-profile-transfer-file-picker[data-status="running"],
security-profile-export-blade-panel .security-profile-transfer-confirmation[data-status="running"] {
    border-style: solid;
    border-color: rgba(15, 118, 110, 0.44);
    background: rgba(224, 242, 241, 0.72);
}

security-profile-import-blade-panel .security-profile-transfer-file-picker[data-status="complete"] {
    border-style: solid;
    border-color: rgba(21, 128, 61, 0.42);
    background: rgba(240, 253, 244, 0.76);
}

security-profile-import-blade-panel .security-profile-transfer-file-name,
security-profile-export-blade-panel .security-profile-transfer-confirmation-title {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--countermeasure-text, #102725);
    font-weight: 700;
}

security-profile-export-blade-panel .security-profile-transfer-confirmation-text {
    color: var(--countermeasure-text-muted, #526866);
    font-size: 0.9rem;
    line-height: 1.35;
}

security-profile-import-blade-panel .security-profile-transfer-file-input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    opacity: 0;
    pointer-events: none;
}

security-profile-import-blade-panel .security-profile-transfer-file-picker cso-button {
    flex: 0 0 auto;
}

security-profile-import-blade-panel .security-profile-transfer-action-row,
security-profile-export-blade-panel .security-profile-transfer-action-row {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

security-profile-import-blade-panel .security-profile-transfer-progress,
security-profile-export-blade-panel .security-profile-transfer-progress {
    display: grid;
    gap: 10px;
    padding: 12px;
    border: 1px solid rgba(44, 93, 89, 0.18);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.68);
}

security-profile-import-blade-panel .security-profile-transfer-progress-section,
security-profile-export-blade-panel .security-profile-transfer-progress-section {
    display: grid;
    gap: 8px;
}

security-profile-import-blade-panel .security-profile-transfer-progress-section + .security-profile-transfer-progress-section,
security-profile-export-blade-panel .security-profile-transfer-progress-section + .security-profile-transfer-progress-section {
    padding-top: 10px;
    border-top: 1px solid rgba(82, 104, 102, 0.14);
}

security-profile-import-blade-panel .security-profile-transfer-progress-copy,
security-profile-export-blade-panel .security-profile-transfer-progress-copy {
    display: grid;
    gap: 3px;
}

security-profile-import-blade-panel .security-profile-transfer-progress-task,
security-profile-export-blade-panel .security-profile-transfer-progress-task {
    color: var(--countermeasure-text, #102725);
    font-weight: 700;
    line-height: 1.25;
}

security-profile-import-blade-panel .security-profile-transfer-progress-status,
security-profile-export-blade-panel .security-profile-transfer-progress-status,
security-profile-import-blade-panel .security-profile-transfer-progress-counts,
security-profile-export-blade-panel .security-profile-transfer-progress-counts {
    color: var(--countermeasure-text-muted, #526866);
    font-size: 0.88rem;
    line-height: 1.35;
}

security-profile-import-blade-panel .security-profile-transfer-progress-track,
security-profile-export-blade-panel .security-profile-transfer-progress-track {
    width: 100%;
    height: 14px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(15, 118, 110, 0.12);
}

security-profile-import-blade-panel .security-profile-transfer-progress-bar,
security-profile-export-blade-panel .security-profile-transfer-progress-bar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--security-profile-transfer-progress-width, 100%);
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--countermeasure-accent, #0f766e), #35a49a);
    color: #ffffff;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1;
    transition: width 180ms ease;
}

security-profile-import-blade-panel .security-profile-transfer-progress-section[data-progress-kind="entity"] .security-profile-transfer-progress-bar,
security-profile-export-blade-panel .security-profile-transfer-progress-section[data-progress-kind="entity"] .security-profile-transfer-progress-bar {
    background: linear-gradient(90deg, #2563eb, #14b8a6);
}

security-profile-import-blade-panel .security-profile-transfer-progress-section[data-determinate="false"] .security-profile-transfer-progress-bar,
security-profile-export-blade-panel .security-profile-transfer-progress-section[data-determinate="false"] .security-profile-transfer-progress-bar {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.35) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.35) 50%, rgba(255, 255, 255, 0.35) 75%, transparent 75%, transparent);
    background-color: var(--countermeasure-accent, #0f766e);
    background-size: 20px 20px;
    animation: security-profile-transfer-progress-stripes 1s linear infinite;
}

@keyframes security-profile-transfer-progress-stripes {
    from {
        background-position: 20px 0;
    }
    to {
        background-position: 0 0;
    }
}

@media (prefers-reduced-transparency: reduce) {
    data-transfer-rail-panel .data-transfer-rail-panel {
        background: var(--countermeasure-glass-surface-solid, #ffffff);
        backdrop-filter: none;
    }

    security-profile-import-blade-panel .security-profile-transfer-option-panel,
    security-profile-export-blade-panel .security-profile-transfer-option-panel,
    security-profile-import-blade-panel .security-profile-transfer-file-picker,
    security-profile-export-blade-panel .security-profile-transfer-confirmation,
    security-profile-import-blade-panel .security-profile-transfer-progress,
    security-profile-export-blade-panel .security-profile-transfer-progress {
        background: #ffffff;
    }
}

@media (max-width: 640px) {
    security-profile-import-blade-panel .security-profile-transfer-file-picker,
    security-profile-import-blade-panel .security-profile-transfer-action-row,
    security-profile-export-blade-panel .security-profile-transfer-action-row {
        align-items: stretch;
        flex-direction: column;
    }

    security-profile-import-blade-panel .security-profile-transfer-file-picker cso-button,
    security-profile-import-blade-panel .security-profile-transfer-action-row cso-button,
    security-profile-export-blade-panel .security-profile-transfer-action-row cso-button {
        width: 100%;
    }
}
