/* Shared REGOS controls. Load after page styles; compact is an explicit size variant. */
.catalog-shell #account-content {
    --control-height: 46px;
    --button-height: 44px;
    --compact-control-height: 40px;
}
.catalog-shell #account-content :is(.form-control, .form-select) {
    min-height: var(--control-height);
    padding: 10px 16px;
    line-height: 24px;
    border: 1px solid var(--app-field-border);
    border-radius: var(--app-control-radius);
    background-color: var(--app-field);
    color: var(--app-text);
    transition: background-color var(--app-transition), border-color var(--app-transition);
}
.catalog-shell #account-content .form-select { padding-right: 40px; }
.catalog-shell #account-content :is(.form-control-sm, .form-select-sm) { min-height: var(--compact-control-height); padding: 7px 12px; line-height: 24px; font-size: 14px; }
.catalog-shell #account-content .form-select-sm { padding-right: 36px; }
.catalog-shell #account-content :is(.form-control, .form-select):hover:not(:disabled):not([readonly]) { border-color: var(--app-focus); }
.catalog-shell #account-content :is(.form-control, .form-select):focus { border-color: var(--app-focus); outline: var(--app-focus-ring); outline-offset: var(--app-focus-offset); box-shadow: none; }
.catalog-shell #account-content :is(.form-control, .form-select):is([readonly], :disabled) { background-color: var(--app-surface-alt); color: var(--app-text); }
.catalog-shell #account-content :is(.form-control, .form-select):disabled { opacity: var(--app-disabled-opacity); cursor: not-allowed; }
.catalog-shell #account-content :is(.form-control, .form-select):is(.is-invalid, .input-validation-error, [aria-invalid="true"]) { border-color: var(--app-danger); }
.catalog-shell #account-content :is(.form-control, .form-select):is(.is-invalid, .input-validation-error, [aria-invalid="true"]):focus { outline-color: var(--app-danger); }
.catalog-shell #account-content .form-control.is-invalid { padding-right: 40px; }
.catalog-shell #account-content .form-control::placeholder { color: var(--app-muted); opacity: 1; }
.catalog-shell #account-content textarea.form-control { resize: vertical; }
.catalog-shell #account-content .form-control[type="file"]::file-selector-button { padding: 10px 16px; margin: -10px 16px -10px -16px; background: var(--app-surface-alt); color: var(--app-text); }
.catalog-shell #account-content .btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: var(--button-height); min-width: var(--button-height); max-width: 100%; padding: 10px 16px;
    border-radius: var(--app-control-radius) !important;
    font-weight: 600; line-height: 22px; white-space: normal; overflow-wrap: normal; word-break: normal;
    transition: background-color var(--app-transition), border-color var(--app-transition);
}
.catalog-shell #account-content .btn > :is(i, .spinner-border).me-2 { margin-right: 0 !important; }
.catalog-shell #account-content .btn > i.ms-2 { margin-left: 0 !important; }
.catalog-shell #account-content .btn-sm { min-height: var(--compact-control-height); min-width: var(--compact-control-height); padding: 8px 12px; font-size: 14px; }
.catalog-shell #account-content .btn:is(:disabled, .disabled) { opacity: var(--app-disabled-opacity); }
.catalog-shell #account-content :is(.btn-primary, .btn-success) { background: var(--app-primary); border-color: transparent; color: var(--app-on-action); }
.catalog-shell #account-content :is(.btn-primary, .btn-success):hover { background: var(--app-primary-hover); }
.catalog-shell #account-content :is(.btn-secondary, .btn-light, .btn-outline-secondary) { background: var(--app-surface-alt); border-color: transparent; color: var(--app-text); }
.catalog-shell #account-content :is(.btn-secondary, .btn-light, .btn-outline-secondary):hover { background: var(--app-hover); }
.catalog-shell #account-content .btn-danger { background: var(--app-danger-action); border-color: transparent; color: var(--app-on-action); }
.catalog-shell #account-content .btn-danger:hover { background: var(--app-danger-action-hover); }
.catalog-shell #account-content .btn-outline-danger { background: transparent; border-color: var(--app-danger-border); color: var(--app-danger); }
.catalog-shell #account-content .btn-outline-danger:hover { background: var(--app-danger-action); border-color: var(--app-danger-action); color: var(--app-on-action); }
.catalog-shell #account-content .btn:active:not(:disabled):not(.disabled) { filter: brightness(.92); }
.catalog-shell #account-content .btn:focus-visible { outline: var(--app-focus-ring); outline-offset: var(--app-focus-offset); box-shadow: none; }
.catalog-shell #account-content .input-group > :is(.form-control, .form-select):not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.catalog-shell #account-content .input-group > :is(.btn, .input-group-text):last-child { border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important; }
.catalog-shell #account-content .input-group-text { min-height: var(--control-height); padding: 10px 16px; line-height: 24px; border-radius: var(--app-control-radius); }
.catalog-shell #account-content .input-group-sm > :is(.form-control, .form-select, .input-group-text, .btn) { min-height: var(--compact-control-height); padding-block: 7px; font-size: 14px; }
.catalog-shell #account-content .tagify { min-height: var(--control-height); height: auto; padding: 4px 8px; border-radius: var(--app-control-radius); }
.catalog-shell #account-content .tagify__input { min-height: 30px; line-height: 24px; }
.catalog-shell #account-content .choices__inner { min-height: var(--control-height); padding: 8px 12px; border-radius: var(--app-control-radius); }
.catalog-shell #account-content .card { border-radius: var(--app-radius); }
.management-shell #account-content :is(.card.p-4, .card-body.p-4) { padding: 28px !important; }
.management-shell #account-content .dev-nav-link { min-height: 48px; padding: 12px 16px; }
.management-shell #account-content main > .d-flex > .d-flex { flex-wrap: wrap; }
@media (max-width: 767.98px) {
    .management-shell #account-content :is(.card.p-4, .card-body.p-4) { padding: 24px 20px !important; }
}
@media (max-width: 575.98px) {
    .catalog-shell #account-content .developer-credential-field:has(.developer-reset-secret) > :is(input, button) { border-radius: var(--app-control-radius) !important; }
}
@media (prefers-reduced-motion: reduce) {
    .catalog-shell #account-content :is(.btn, .form-control, .form-select, .tagify, .choices__inner) { transition: none; }
}
