/* Shared progress panel for the catalog button and the standalone pending page. */
.excel-download-feedback {
    width: min(340px, 85vw);
    margin: 10px 0;
    padding: 14px;
    border: 1px solid var(--cw-border, var(--theme-input-border));
    border-radius: 8px;
    background: var(--cw-panel, var(--color-surface));
    color: var(--cw-text, var(--theme-text));
    font-size: 12px;
    line-height: 1.5;
}
.excel-download-feedback:empty { display: none; }
.catalog-download-action [data-excel-feedback].excel-download-feedback {
    position: static;
    width: min(340px, calc(100vw - 64px));
    margin: 0;
}
.catalog-page.catalog-workspace .catalog-header:has([data-excel-feedback]:not(:empty)) { align-items: flex-start; }
.excel-progress-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.excel-progress-heading > span { font-variant-numeric: tabular-nums; white-space: nowrap; }
.excel-progress-bar { height: 7px; margin: 10px 0; border-radius: 6px; overflow: hidden; background: var(--cw-border, var(--theme-input-border)); }
.excel-progress-bar > span { display: block; height: 100%; border-radius: inherit; background: #36b97a; transition: width .3s ease; }
.excel-progress-bar.is-indeterminate > span { animation: excel-preparing 1.6s ease-in-out infinite; }
.excel-download-feedback p { margin: 0; }
.excel-progress-timing { font-weight: 600; color: var(--cw-text, var(--theme-text)); }
.excel-progress-detail, .excel-progress-hint { color: var(--cw-muted, var(--theme-text-muted)); font-size: 11px; }
.excel-download-feedback .excel-progress-hint { margin-top: 8px; }
.excel-download-feedback.has-error { border-color: #bd5555; }
html[data-theme="light"] .excel-download-feedback { background: var(--cw-panel, #fff); color: var(--cw-text, #1b2532); border-color: var(--cw-border, #dce1e7); }
html[data-theme="light"] .excel-progress-bar > span { background: #23794b; }
@keyframes excel-preparing { from { transform: translateX(-120%); } to { transform: translateX(390%); } }
@media (max-width: 767px) {
    .catalog-page.catalog-workspace .catalog-header:has([data-excel-feedback]:not(:empty)) {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }
    .catalog-header:has([data-excel-feedback]:not(:empty)) .catalog-header-actions { width: 100%; }
    .catalog-header:has([data-excel-feedback]:not(:empty)) .catalog-download-action { align-items: flex-start; }
    .catalog-header:has([data-excel-feedback]:not(:empty)) [data-excel-feedback].excel-download-feedback { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    .excel-progress-bar > span { transition: none; }
    .excel-progress-bar.is-indeterminate > span { animation: none; }
}
