/* User-approved smoky glass. Explicit markers keep other pages unchanged. */
.pl-smoky-glass.pl-glass-dialog,
.pl-smoky-glass.pl-glass-message,
[style*="--pl-smoky-message"] {
    --pl-glass-ink: #152a42;
    --pl-glass-muted: #253b54;
    --pl-glass-focus: #315d8b;
    --pl-glass-line: rgba(255, 255, 255, .5);
    --pl-glass-solid: #bac6d2;
    --pl-glass-danger: #a7373a;
    --pl-glass-warning: #775114;
    --pl-glass-success: #235a40;
    --pl-glass-surface: radial-gradient(ellipse at 0% 0%, rgba(255, 255, 255, .24), transparent 60%),
        linear-gradient(140deg, rgba(255, 255, 255, .22), rgba(255, 255, 255, .08) 48%, rgba(255, 255, 255, .04)),
        rgba(128, 146, 166, .22);
    --pl-glass-shadow: 0 24px 64px rgba(24, 36, 54, .22), 0 5px 16px rgba(24, 36, 54, .12),
        inset 0 1px 0 rgba(255, 255, 255, .72), inset 0 -1px 0 rgba(28, 44, 66, .2),
        inset 1px 0 0 rgba(255, 255, 255, .25), inset -1px 0 0 rgba(255, 255, 255, .08);
    font-family: Inter, "Segoe UI", system-ui, sans-serif;
}

html:has(#radzen-theme-link[href*="-dark"]) :is(.pl-smoky-glass.pl-glass-dialog, .pl-smoky-glass.pl-glass-message, [style*="--pl-smoky-message"]) {
    --pl-glass-ink: #f5f8ff;
    --pl-glass-muted: #e0e8f4;
    --pl-glass-focus: #b8d8ff;
    --pl-glass-solid: #48586b;
    --pl-glass-danger: #ffb7b1;
    --pl-glass-warning: #f1ca93;
    --pl-glass-success: #94d6b0;
}

.pl-smoky-glass.pl-glass-dialog:is(dialog, .rz-dialog, .rz-popup),
html:has(#radzen-theme-link) .pl-smoky-glass.pl-glass-dialog.rz-popup.wbs-progress-status-popup,
.pl-smoky-glass.pl-glass-message,
.rz-notification-item-wrapper[style*="--pl-smoky-message"] {
    box-sizing: border-box;
    max-width: calc(100vw - 32px);
    border: 1px solid var(--pl-glass-line);
    border-radius: 28px;
    background: var(--pl-glass-surface);
    color: var(--pl-glass-ink);
    box-shadow: var(--pl-glass-shadow);
    backdrop-filter: blur(20px) saturate(110%);
    -webkit-backdrop-filter: blur(20px) saturate(110%);
}

.pl-smoky-glass.pl-glass-dialog:is(dialog, .rz-dialog) { max-height: calc(100dvh - 32px); }
.pl-smoky-glass.pl-glass-dialog[open],
.pl-smoky-glass.pl-glass-dialog.rz-dialog,
.pl-smoky-glass.pl-glass-dialog.rz-popup,
.rz-notification-item-wrapper[style*="--pl-smoky-message"] {
    animation: pl-glass-message-enter .3s cubic-bezier(.22, 1, .36, 1) both;
}

.pl-smoky-glass.pl-glass-dialog::backdrop,
.pl-glass-dialog-wrapper .rz-dialog-mask {
    background: rgba(31, 44, 65, .3);
    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(7px);
    animation: pl-glass-backdrop-enter .2s ease both;
}

.pl-smoky-glass.pl-glass-dialog :is(h2, h4, .rz-dialog-title, .wbs-status-help-section strong) {
    color: var(--pl-glass-ink);
    overflow-wrap: anywhere;
}
.pl-smoky-glass.pl-glass-dialog :is(p, .holiday-help, .holiday-eyebrow, .holiday-delete-summary span, .wbs-status-help-example) {
    color: var(--pl-glass-muted);
    overflow-wrap: anywhere;
}
.pl-smoky-glass.pl-glass-dialog :is(.rz-dialog-titlebar, .rz-dialog-content) { background: transparent; }
.pl-smoky-glass.pl-glass-dialog .rz-dialog-titlebar { padding: 24px 28px 12px; border: 0; }
.pl-smoky-glass.pl-glass-dialog .rz-dialog-title { font-size: 1.25rem; font-weight: 650; }
.pl-smoky-glass.pl-glass-dialog .rz-dialog-content { padding: 12px 28px 28px; }
.pl-smoky-glass.pl-glass-dialog .rz-dialog-content p { line-height: 1.65; }
.pl-smoky-glass.pl-glass-dialog :is(.holiday-dialog-head, .profile-viewer-header, .wbs-status-help-heading) {
    background: transparent;
    border-color: var(--pl-glass-line);
}

.pl-smoky-glass.pl-glass-dialog :is(.pl-header__logout-dialog-icon, .holiday-dialog-icon) {
    border: 1px solid var(--pl-glass-line);
    background: linear-gradient(145deg, rgba(255, 255, 255, .14), rgba(255, 255, 255, .025));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .55), inset 0 -1px 0 rgba(28, 44, 66, .16), 0 3px 8px rgba(24, 36, 54, .08);
    color: var(--pl-glass-ink);
}

.pl-smoky-glass.pl-glass-dialog :is(.pl-glass-button, .pl-header__logout-cancel, .pl-header__logout-confirm,
    .holiday-button, .holiday-icon-button, .profile-viewer-close, .wbs-status-help-close, .rz-button.rz-variant-filled) {
    min-height: 44px;
    border: 1px solid var(--pl-glass-line);
    border-radius: 14px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .14), rgba(255, 255, 255, .025));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .55), inset 0 -1px 0 rgba(28, 44, 66, .16), 0 3px 8px rgba(24, 36, 54, .08);
    color: var(--pl-glass-ink);
    font-family: inherit;
    transition: background .2s ease, border-color .2s ease, transform .2s cubic-bezier(.22, 1, .36, 1);
}
.pl-smoky-glass.pl-glass-dialog :is(.pl-glass-button, .pl-header__logout-cancel, .holiday-button,
    .holiday-icon-button, .profile-viewer-close, .wbs-status-help-close, .rz-button.rz-variant-filled):hover:not(:disabled) {
    background: rgba(255, 255, 255, .23);
    border-color: rgba(255, 255, 255, .75);
}
.pl-smoky-glass.pl-glass-dialog :is(.pl-glass-button--danger, .pl-header__logout-confirm, .holiday-button.destructive),
.pl-smoky-glass.pl-glass-dialog--danger .rz-button.rz-primary {
    border-color: rgba(255, 191, 183, .38);
    background: linear-gradient(145deg, rgba(167, 56, 57, .9), rgba(153, 50, 56, .94));
    color: #fff;
}
.pl-smoky-glass.pl-glass-dialog :is(.pl-glass-button--danger, .pl-header__logout-confirm, .holiday-button.destructive):hover:not(:disabled),
.pl-smoky-glass.pl-glass-dialog--danger .rz-button.rz-primary:hover:not(:disabled) {
    background: linear-gradient(145deg, rgba(151, 43, 48, .96), rgba(132, 35, 44, .98));
    color: #fff;
}
.pl-smoky-glass.pl-glass-dialog .holiday-button.primary {
    border-color: rgba(177, 211, 255, .5);
    background: linear-gradient(145deg, rgba(46, 93, 152, .85), rgba(35, 75, 128, .92));
    color: #fff;
}
.pl-smoky-glass.pl-glass-dialog .holiday-button.primary:hover:not(:disabled) { background: #234b80; color: #fff; }
.pl-smoky-glass.pl-glass-dialog :focus-visible { outline: 2px solid var(--pl-glass-focus); outline-offset: 3px; }
.pl-smoky-glass.pl-glass-dialog button:disabled { opacity: .5; cursor: not-allowed; }
.pl-smoky-glass.pl-glass-dialog .profile-viewer-error { color: var(--pl-glass-danger); }
.pl-smoky-glass.pl-glass-dialog .profile-full-photo { background: rgba(128, 146, 166, .1); }
.pl-smoky-glass.pl-glass-dialog :is(.holiday-icon-button, .profile-viewer-close, .wbs-status-help-close) { min-width: 44px; }

/* Preserve severity and existing inline/toast behavior; only change surfaces. */
.pl-smoky-glass.pl-glass-message { border-radius: 18px; }
.pl-smoky-glass.pl-glass-message:is(.profile-project-message, .profile-work-message) { padding: 16px; }
.pl-smoky-glass.pl-glass-message :is(p, small) { color: var(--pl-glass-muted); }
.pl-smoky-glass.pl-glass-message:is(.danger, .holiday-import-feedback, .profile-photo-error, .profile-security-error) { --feedback-accent: var(--pl-glass-danger); }
.pl-smoky-glass.pl-glass-message:is(.profile-security-error.is-warning) { --feedback-accent: var(--pl-glass-warning); }
.pl-smoky-glass.pl-glass-message:is(.success, .profile-photo-status) { color: var(--pl-glass-success); }
.pl-smoky-glass.pl-glass-message:is(.danger, .holiday-import-feedback, .profile-photo-error) { color: var(--pl-glass-danger); }
.pl-smoky-glass.pl-glass-message.profile-security-error strong { color: var(--feedback-accent); }

.rz-notification-item-wrapper[style*="--pl-smoky-message"] :is(.rz-notification-item, .rz-notification-content) {
    background: transparent;
    color: var(--pl-glass-ink);
}
.rz-notification-item-wrapper[style*="--pl-smoky-message"] .rz-notification-title { color: var(--pl-glass-ink); }
.rz-notification-item-wrapper[style*="--pl-smoky-message"] .rz-notification-content { color: var(--pl-glass-muted); }
.rz-notification-item-wrapper[style*="--pl-smoky-message"] .rz-notification-close { color: var(--pl-glass-ink); }

@keyframes pl-glass-message-enter {
    from { opacity: 0; transform: translateY(12px) scale(.97); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes pl-glass-backdrop-enter { from { opacity: 0; } to { opacity: 1; } }

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .pl-smoky-glass.pl-glass-dialog:is(dialog, .rz-dialog, .rz-popup),
    html:has(#radzen-theme-link) .pl-smoky-glass.pl-glass-dialog.rz-popup.wbs-progress-status-popup,
    .pl-smoky-glass.pl-glass-message,
    .rz-notification-item-wrapper[style*="--pl-smoky-message"] { background: var(--pl-glass-solid); }
}
@media (prefers-reduced-transparency: reduce) {
    .pl-smoky-glass.pl-glass-dialog:is(dialog, .rz-dialog, .rz-popup),
    html:has(#radzen-theme-link) .pl-smoky-glass.pl-glass-dialog.rz-popup.wbs-progress-status-popup,
    .pl-smoky-glass.pl-glass-message,
    .rz-notification-item-wrapper[style*="--pl-smoky-message"] {
        background: var(--pl-glass-solid); backdrop-filter: none; -webkit-backdrop-filter: none;
    }
    .pl-smoky-glass.pl-glass-dialog::backdrop,
    .pl-glass-dialog-wrapper .rz-dialog-mask { backdrop-filter: none; -webkit-backdrop-filter: none; }
}
@media (prefers-reduced-motion: reduce) {
    .pl-smoky-glass.pl-glass-dialog[open],
    .pl-smoky-glass.pl-glass-dialog.rz-dialog,
    .pl-smoky-glass.pl-glass-dialog.rz-popup,
    .pl-smoky-glass.pl-glass-dialog::backdrop,
    .pl-glass-dialog-wrapper .rz-dialog-mask,
    .rz-notification-item-wrapper[style*="--pl-smoky-message"] { animation: none; }
    .pl-smoky-glass.pl-glass-dialog button { transition: none; }
}
