.app-update-dialog {
    width: min(440px, calc(100vw - 32px));
    margin: auto;
    padding: 28px;
    border: 1px solid var(--border, #e6e8ec);
    border-radius: 16px;
    background: #fff;
    color: var(--text, #1d2029);
    box-shadow: 0 20px 70px #15183a26;
    font-family: var(--font, sans-serif);
}
.app-update-dialog::backdrop { background: #1d203966; }
.app-update-icon {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    margin-bottom: 18px;
    border-radius: 14px;
    background: var(--primary-soft, #f4f4ff);
    color: var(--primary, #5b5ce2);
}
.app-update-icon svg { width: 26px; height: 26px; }
.app-update-dialog h2 { margin: 0 0 10px; font-size: 20px; font-weight: 600; }
.app-update-dialog p { margin: 0; color: var(--text-secondary, #717784); font-size: 14px; line-height: 1.7; }
.app-update-dialog .app-update-save { margin-top: 12px; padding: 10px 12px; border-radius: 8px; background: #f7f8fa; font-size: 13px; }
.app-update-actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 24px; }
.app-update-actions button { padding: 10px 18px; border: 1px solid var(--border, #e6e8ec); border-radius: 8px; background: #fff; color: inherit; cursor: pointer; font: inherit; font-size: 14px; }
.app-update-actions [data-update-refresh] { background: var(--primary, #5b5ce2); border-color: var(--primary, #5b5ce2); color: #fff; }
.app-update-actions button:focus-visible { outline: 2px solid var(--primary, #5b5ce2); outline-offset: 3px; }
.app-update-actions button:hover { filter: brightness(.97); }
.app-update-dialog .app-update-footnote { margin-top: 14px; font-size: 12px; }
@media (max-width: 480px) {
    .app-update-dialog { padding: 24px; }
    .app-update-actions button { flex: 1; padding: 10px 8px; }
}
