/**
 * TDPS customer-facing dismiss (×) controls — modals, panels, inline clears.
 * Enqueued on wp_enqueue_scripts (frontend). Admin screens keep their own chrome.
 */

:root {
    --tdps-dismiss-size: 36px;
    --tdps-dismiss-radius: 4px;
    --tdps-dismiss-color: #646970;
    --tdps-dismiss-color-hover: #1d2327;
    --tdps-dismiss-bg-hover: #f0f0f1;
    --tdps-dismiss-font-size: 24px;
    --tdps-dismiss-outline: #2271b1;
}

.tdps-dismiss,
.tdps-modal-close:not(.tdps-button),
.tdps-forum-modal-close,
.tdps-cart-preview-close,
.tdps-v3-modal-close,
.tdps-v3-filter-clear,
.tdps-notification-center__members-close,
.tdps-notification-center__compose-close,
.tdps-notification-center__search-clear,
.tdps-notification-center__reply-target-clear,
.tdps-forum-user-profile-modal__close,
.tdps-address-book-modal-close,
.tdps-forum-search-clear,
.tdp-modal-close,
.tdps-bug-report-modal-content .tdps-modal-close,
.tdps-remove-attachment,
.dismiss-notification,
.dismiss-notification-btn,
.tdps-gc-notifications .dismiss-notification-btn {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: var(--tdps-dismiss-size);
    height: var(--tdps-dismiss-size);
    min-width: var(--tdps-dismiss-size);
    min-height: var(--tdps-dismiss-size);
    margin: 0;
    padding: 0;
    border: none;
    border-radius: var(--tdps-dismiss-radius);
    background: transparent;
    color: var(--tdps-dismiss-color);
    font-size: var(--tdps-dismiss-font-size);
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
    text-decoration: none;
    transition: color 0.15s ease, background-color 0.15s ease;
}

.tdps-dismiss:hover,
.tdps-dismiss:focus-visible,
.tdps-modal-close:not(.tdps-button):hover,
.tdps-modal-close:not(.tdps-button):focus-visible,
.tdps-forum-modal-close:hover,
.tdps-forum-modal-close:focus-visible,
.tdps-cart-preview-close:hover,
.tdps-cart-preview-close:focus-visible,
.tdps-v3-modal-close:hover,
.tdps-v3-modal-close:focus-visible,
.tdps-v3-filter-clear:hover,
.tdps-v3-filter-clear:focus-visible,
.tdps-notification-center__members-close:hover,
.tdps-notification-center__members-close:focus-visible,
.tdps-notification-center__compose-close:hover,
.tdps-notification-center__compose-close:focus-visible,
.tdps-notification-center__search-clear:hover,
.tdps-notification-center__search-clear:focus-visible,
.tdps-notification-center__reply-target-clear:hover,
.tdps-notification-center__reply-target-clear:focus-visible,
.tdps-forum-user-profile-modal__close:hover,
.tdps-forum-user-profile-modal__close:focus-visible,
.tdps-address-book-modal-close:hover,
.tdps-address-book-modal-close:focus-visible,
.tdps-forum-search-clear:hover,
.tdps-forum-search-clear:focus-visible,
.tdp-modal-close:hover,
.tdp-modal-close:focus-visible,
.tdps-bug-report-modal-content .tdps-modal-close:hover,
.tdps-bug-report-modal-content .tdps-modal-close:focus-visible,
.tdps-remove-attachment:hover,
.tdps-remove-attachment:focus-visible,
.dismiss-notification:hover,
.dismiss-notification:focus-visible,
.dismiss-notification-btn:hover,
.dismiss-notification-btn:focus-visible,
.tdps-gc-notifications .dismiss-notification-btn:hover,
.tdps-gc-notifications .dismiss-notification-btn:focus-visible {
    color: var(--tdps-dismiss-color-hover);
    background: var(--tdps-dismiss-bg-hover);
    outline: none;
}

.tdps-dismiss:focus-visible,
.tdps-modal-close:not(.tdps-button):focus-visible,
.tdps-forum-modal-close:focus-visible,
.tdps-cart-preview-close:focus-visible,
.tdps-v3-modal-close:focus-visible,
.tdps-forum-user-profile-modal__close:focus-visible,
.tdps-address-book-modal-close:focus-visible,
.tdps-forum-search-clear:focus-visible,
.tdp-modal-close:focus-visible,
.tdps-bug-report-modal-content .tdps-modal-close:focus-visible {
    outline: 2px solid var(--tdps-dismiss-outline);
    outline-offset: 2px;
}

.tdps-dismiss .dashicons,
.dismiss-notification-btn .dashicons,
.tdps-gc-notifications .dismiss-notification-btn .dashicons {
    width: 20px;
    height: 20px;
    font-size: 20px;
    line-height: 1;
}
