/* Sinapsi UI — global button geometry (28px height, 6px radius) */

:root {
  --ui-button-height: 28px;
  --ui-button-radius: 6px;
}

/* Text links and navigation items keep their own sizing */
.action-link:not(.action-link-button),
.spc-console-inline-link,
.signup-step__back,
.toggle-password,
.lang-switch button,
.admin-tab,
.admin-section-tab,
.support-tab,
.admin-pagination__link,
.admin-users-pagination__page,
.admin-users-pagination__nav,
.menu-link,
.menu-mobile-link,
.app-sidebar-collapse-toggle,
.developer-guide-index__link,
.developer-guide-doc__toc a,
.developer-guide-doc__content a {
  min-height: unset !important;
  height: auto !important;
}

.ui-button,
.ui-button--primary,
.ui-button--secondary,
.billing-hub-filled-button,
.btn-primary,
.btn-secondary,
.btn-google,
.btn-apple,
.action-btn,
.action-link-button,
a.action-btn,
a.btn-primary,
a.btn-secondary,
a.btn-google,
a.btn-apple,
button.primary,
.allow,
.deny,
.photo-upload-button,
.row-actions button,
.row-actions a:not(.danger),
.admin-message-actions button,
.actions button:not(.signup-step__back):not(.toggle-password):not(.action-link):not(.action-link-button),
.spc-console-inline-action:not(.spc-console-inline-link),
.spc-console-json-export-button,
.spc-console-chart-view-toggle__button,
.billing-hub-collapse-toggle,
.billing-hub-month-picker__month,
.billing-hub-date-picker__nav,
.mobile-menu-toggle,
.profile-menu-trigger,
.legal-acceptance-shell__logout,
.assurance-search-button,
.assurance-search-form button,
.dbox-filters-actions button,
.dbox-filters-actions a,
.spc-console-page button:not(.toggle-password):not(.signup-step__back):not(.billing-hub-collapse-toggle):not(.spc-console-chart-view-toggle__button):not(.app-sidebar-collapse-toggle),
.billing-hub-page button:not(.toggle-password):not(.billing-hub-collapse-toggle):not(.app-sidebar-collapse-toggle),
.dbox-page button:not(.toggle-password):not(.app-sidebar-collapse-toggle),
input[type="button"],
input[type="submit"],
input[type="reset"] {
  box-sizing: border-box !important;
  min-height: var(--ui-button-height, 28px) !important;
  height: var(--ui-button-height, 28px) !important;
  border: none !important;
  border-color: transparent !important;
  border-radius: var(--ui-button-radius, 6px) !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap;
}

.btn-google,
.btn-apple,
a.btn-google,
a.btn-apple {
  border-radius: var(--ui-button-radius, 6px) !important;
}

.ui-button,
.billing-hub-filled-button,
.btn-primary,
.btn-secondary,
.btn-google,
.btn-apple,
.action-btn,
.action-link-button,
a.action-btn,
a.btn-primary,
a.btn-secondary,
.spc-console-inline-action:not(.spc-console-inline-link),
.spc-console-json-export-button,
.assurance-search-button,
.row-actions button,
.row-actions a:not(.danger),
.admin-message-actions button,
.actions button:not(.signup-step__back):not(.toggle-password):not(.action-link):not(.action-link-button),
button.primary,
.allow,
.deny,
.photo-upload-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.billing-hub-month-picker__month,
.billing-hub-heatmap__legend-button,
.billing-hub-date-picker__nav,
.spc-console-widget-chip,
.spc-console-chart-view-toggle__button,
.admin-tab,
.admin-section-tab,
.support-tab,
.admin-users-table__save-btn,
.api-docs-regenerate-btn,
.api-docs-card__link,
.lang-link,
.billing-hub-icon-button,
.billing-hub-text-button,
.admin-pagination__link,
.admin-users-pagination__nav {
  border: none !important;
  border-color: transparent !important;
}

/* Bottoni filled: testo sempre leggibile su sfondo scuro/colorato */
.ui-button,
.ui-button--primary,
.ui-button--secondary,
.billing-hub-filled-button,
.btn-primary,
.btn-secondary,
.action-btn,
.action-link-button,
a.action-btn,
a.btn-primary,
a.btn-secondary,
button.primary,
.allow,
.deny,
.row-actions button,
.row-actions a:not(.danger),
.admin-message-actions button,
.actions button:not(.signup-step__back):not(.toggle-password):not(.action-link):not(.action-link-button),
.spc-console-inline-action:not(.spc-console-inline-link),
.spc-console-json-export-button,
.assurance-search-button,
.assurance-search-form button[type="submit"],
.admin-users-table__save-btn,
.admin-tab.active,
.admin-pagination__link.active,
.legal-acceptance-shell__logout,
input[type="submit"],
.api-docs-card__link:not(.api-docs-card__link--secondary),
.dbox-filters-actions button {
  background: var(--theme-button-bg, #141414);
  color: var(--theme-button-text, #ffffff) !important;
}

.ui-button:hover:not(:disabled),
.ui-button--primary:hover:not(:disabled),
.ui-button--secondary:hover:not(:disabled),
.billing-hub-filled-button:hover:not(:disabled),
.btn-primary:hover:not(:disabled),
.btn-secondary:hover:not(:disabled),
.action-btn:hover:not(:disabled),
.action-link-button:hover:not(:disabled),
a.action-btn:hover,
a.btn-primary:hover,
a.btn-secondary:hover,
button.primary:hover:not(:disabled),
.allow:hover,
.deny:hover,
.row-actions button:hover:not(:disabled),
.row-actions a:not(.danger):hover,
.row-actions a:not(.danger):focus,
.row-actions a:not(.danger):visited,
.admin-message-actions button:hover:not(:disabled),
.actions button:not(.signup-step__back):not(.toggle-password):not(.action-link):not(.action-link-button):hover:not(:disabled),
.spc-console-inline-action:not(.spc-console-inline-link):hover,
.spc-console-json-export-button:hover,
.assurance-search-button:hover,
.assurance-search-form button[type="submit"]:hover:not(:disabled),
.admin-users-table__save-btn:hover,
.admin-tab.active:hover,
.admin-pagination__link.active:hover,
.legal-acceptance-shell__logout:hover,
input[type="submit"]:hover:not(:disabled),
.api-docs-card__link:not(.api-docs-card__link--secondary):hover,
.dbox-filters-actions button:hover:not(:disabled) {
  background: var(--theme-button-bg-hover, #333333);
  color: var(--theme-button-text, #ffffff) !important;
  text-decoration: none !important;
}

.ui-button .material-symbols-outlined,
.ui-button--primary .material-symbols-outlined,
.ui-button--secondary .material-symbols-outlined,
.billing-hub-filled-button .material-symbols-outlined,
.btn-primary .material-symbols-outlined,
.btn-secondary .material-symbols-outlined,
.action-btn .material-symbols-outlined,
.action-link-button .material-symbols-outlined,
a.action-btn .material-symbols-outlined,
a.btn-primary .material-symbols-outlined,
a.btn-secondary .material-symbols-outlined,
button.primary .material-symbols-outlined,
.row-actions button .material-symbols-outlined,
.admin-message-actions button .material-symbols-outlined,
.actions button:not(.signup-step__back):not(.toggle-password):not(.action-link):not(.action-link-button) .material-symbols-outlined,
.spc-console-inline-action:not(.spc-console-inline-link) .material-symbols-outlined,
.spc-console-json-export-button .material-symbols-outlined,
.assurance-search-button .material-symbols-outlined,
.assurance-search-button__icon,
.admin-users-table__save-btn .material-symbols-outlined,
.legal-acceptance-shell__logout .material-symbols-outlined,
.api-docs-card__link:not(.api-docs-card__link--secondary) .material-symbols-outlined,
.dbox-filters-actions button .material-symbols-outlined {
  color: inherit !important;
}
