/* Formato consistente por tema, preservando suas cores e tamanhos. */
html[data-theme="classico"],
html[data-theme="deluxe"] {
  --button-radius: 0px;
  --menu-radius: 0px;
}
html[data-theme="moderno"],
html[data-theme="ultimate"] {
  --button-radius: 999px;
  --menu-radius: 16px;
}
html[data-theme] body .btn,
html[data-theme] body .navbar-toggler,
html[data-theme] body .page-link,
html[data-theme] body .nav-pills .nav-link,
html[data-theme] body .navbar-nav .nav-link {
  border-radius: var(--button-radius, 6px) !important;
}
html[data-theme] body .dropdown-menu {
  border-radius: var(--menu-radius, 6px) !important;
  padding: 0.5rem;
}
html[data-theme] body .dropdown-item {
  border-radius: var(--button-radius, 6px) !important;
}
/* Tema: o ícone e o select formam um único controle. */
html[data-theme] body .theme-control {
  border-radius: var(--button-radius, 6px) !important;
}
html[data-theme] body .theme-control > .input-group-text {
  border-radius: var(--button-radius, 6px) 0 0 var(--button-radius, 6px) !important;
}
html[data-theme] body .theme-control > .form-select {
  border-radius: 0 var(--button-radius, 6px) var(--button-radius, 6px) 0 !important;
}
/* Grupos continuam unidos, com cantos externos seguindo o tema. */
html[data-theme]:not([data-theme="ultimate"]) body .btn-group > .btn:not(:first-child) {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}
html[data-theme]:not([data-theme="ultimate"]) body .btn-group > .btn:not(:last-child):not(.dropdown-toggle) {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

/* No Ultimate cada ação continua sendo uma cápsula, mesmo em grupos. */
html[data-theme="ultimate"] body .btn-group {
  gap: 0.375rem;
}
html[data-theme="ultimate"] body .btn-group > .btn {
  border-radius: 999px !important;
  margin-left: 0 !important;
}
