b94e6e60f5
На живой странице оверлей модалки жил внутри канвы веб-части, чей контекст наложения ниже шапки SharePoint: верх высокого окна (например, «Новый шаг маршрута») уезжал под шапку. В workbench шапки нет, поэтому там было незаметно. Теперь Modal и ConfirmDialog рендерят подложку через ModalOverlay (портал в document.body) с z-index выше шапки; меню выпадающих списков подняты над ним. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
63 lines
1.3 KiB
SCSS
63 lines
1.3 KiB
SCSS
@import '../../../../styles/design-tokens';
|
|
|
|
// Ниже Modal.module.scss/.overlay (z-index 100000) — диалоги, которые может
|
|
// открыть сама длительная операция (например, разрешение конфликта), должны
|
|
// быть ПОВЕРХ этой подложки, а не под ней.
|
|
.overlay {
|
|
position: fixed;
|
|
inset: 0;
|
|
z-index: 250;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
background: rgba(10, 27, 48, .45);
|
|
}
|
|
|
|
.box {
|
|
min-width: 320px;
|
|
max-width: 420px;
|
|
padding: 24px 26px;
|
|
border-radius: $r-lg;
|
|
background: #fff;
|
|
box-shadow: $sh-modal;
|
|
text-align: center;
|
|
}
|
|
|
|
.label {
|
|
font-size: 13.5px;
|
|
font-weight: 600;
|
|
color: $gray-900;
|
|
}
|
|
|
|
.counter {
|
|
margin-top: 4px;
|
|
font-size: 12px;
|
|
color: $gray-500;
|
|
}
|
|
|
|
.track {
|
|
margin-top: 14px;
|
|
height: 6px;
|
|
border-radius: $r-full;
|
|
background: $gray-200;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.fill {
|
|
height: 100%;
|
|
border-radius: $r-full;
|
|
background: $grad-gold;
|
|
transition: width .2s;
|
|
}
|
|
|
|
// Общее число шагов заранее неизвестно — бегущая полоса вместо доли.
|
|
.indeterminate {
|
|
width: 40%;
|
|
animation: slide 1.1s ease-in-out infinite;
|
|
}
|
|
|
|
@keyframes slide {
|
|
0% { transform: translateX(-100%); }
|
|
100% { transform: translateX(250%); }
|
|
}
|