:is(dialog, [role="dialog"]) button[aria-label^="Fermer"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    padding: 0;
    font-size: 1.5rem;
    line-height: 1;
}

:is(dialog, [role="dialog"]) button[aria-label^="Fermer"] > :is(.icon, .fa-xmark) {
    font-size: inherit;
    line-height: 1;
}

@media (max-width: 760px) {
    :root { --modal-padding: 16px; }

    dialog:is(.share-dialog, .content-action-dialog, .composer-book-dialog,
        .studio-dialog, .reader-dialog, .blog-media-dialog,
        .friends-invite, .message-dialog, .room-decor-dialog, .room-gallery-dialog,
        .spine-dialog, .pressure-dialog, .publication-announcement) {
        padding: var(--modal-padding);
    }

    .reader-dialog .dialog-close {
        margin-top: -4px;
        margin-right: -4px;
    }
    .studio-dialog .studio-dialog-close { margin: -4px -4px 6px 6px; }

    .spine-dialog .spine-footer { bottom: calc(-1 * var(--modal-padding)); }

    .reading-dialog .reading-editor,
    .reading-dialog .reading-loading,
    .friends-invite .friend-code-identity { padding: var(--modal-padding); }
    .reading-dialog :is(.reading-editor-actions, .reading-remove) {
        padding-top: var(--modal-padding);
    }

    .guest-invitation { padding: var(--modal-padding) var(--modal-padding) 0; }
    .guest-invitation-continue {
        width: calc(100% + 2 * var(--modal-padding));
        margin-inline: calc(-1 * var(--modal-padding));
    }

    .guided-tour-panel { padding: var(--modal-padding); }
    .guided-tour-close { margin: -4px -4px -8px 0; }

    .rail-panel {
        padding: max(var(--modal-padding), env(safe-area-inset-top))
            var(--modal-padding) max(var(--modal-padding), env(safe-area-inset-bottom));
    }
    .rail-panel .rail-close { top: max(10px, env(safe-area-inset-top)); right: 10px; }
    .rail-panel .rail-identity { padding-bottom: var(--modal-padding); }

    .notification-panel .notification-heading {
        padding: var(--modal-padding) var(--modal-padding) .6rem;
    }
    .notification-panel .notification-toolbar { padding-inline: var(--modal-padding); }
    .notification-panel .notification-empty { padding: var(--modal-padding); }

    .navigation-search .navigation-search__heading { padding: var(--modal-padding) var(--modal-padding) 15px; }
    .navigation-search .global-search-form { padding-inline: var(--modal-padding); }
    .navigation-search .navigation-search__actions { padding-inline: var(--modal-padding); }
    .navigation-search .navigation-search__footer { padding-inline: var(--modal-padding); }
    .navigation-search .search-empty { padding-block: var(--modal-padding); }
}
