:root {
    --amz-ui-font-family: "Segoe UI", "Microsoft YaHei", sans-serif;
    --amz-ui-font-mono: Consolas, "Microsoft YaHei", monospace;

    --amz-ui-font-12: 12px;
    --amz-ui-font-13: 13px;
    --amz-ui-font-14: 14px;
    --amz-ui-font-16: 16px;
    --amz-ui-font-20: 20px;
    --amz-ui-font-24: 24px;

    --amz-ui-weight-medium: 500;
    --amz-ui-weight-semibold: 600;
    --amz-ui-weight-bold: 700;

    --amz-ui-tab-height: 42px;
    --amz-tab-bar-bg: var(--amz-theme-bg-data);
    --amz-tab-hover-bg: var(--amz-theme-bg-subtle);
    --amz-tab-selected-bg: var(--amz-theme-bg-selected);
    --amz-control-radius: 6px;
    --amz-ui-control-height: 30px;
    --amz-ui-pagination-height: 26px;
    --amz-ui-table-action-height: 26px;
}

/* Radius-only Bootstrap adaptation; keep its input-group joins and special shapes. */
.btn:not(.rounded-pill):not(.rounded-circle):not(.btn-link) {
    --bs-btn-border-radius: var(--amz-control-radius);
}

.form-control:not(.rounded-pill):not(.rounded-circle),
.form-select:not(.rounded-pill):not(.rounded-circle),
.input-group-text {
    border-radius: var(--amz-control-radius);
}

.input-group-sm > .form-control,
.input-group-sm > .form-select,
.input-group-sm > .input-group-text,
.input-group-sm > .btn,
.input-group-lg > .form-control,
.input-group-lg > .form-select,
.input-group-lg > .input-group-text,
.input-group-lg > .btn {
    border-radius: var(--amz-control-radius);
}

.navbar.compact-main-navbar {
    margin-bottom: 6px !important;
}

.amz-ui-page {
    font-family: var(--amz-ui-font-family);
}

.amz-ui-tab {
    box-sizing: border-box;
    min-height: var(--amz-ui-tab-height);
    padding-top: 0;
    padding-bottom: 0;
    font-size: var(--amz-ui-font-16);
    font-weight: var(--amz-ui-weight-semibold);
    line-height: 1;
}

.amz-ui-action,
.amz-ui-action-primary,
.amz-ui-toolbar-control {
    box-sizing: border-box;
    height: var(--amz-ui-control-height);
    min-height: var(--amz-ui-control-height);
    padding-top: 0;
    padding-bottom: 0;
    font-family: var(--amz-ui-font-family);
    font-size: var(--amz-ui-font-13);
    line-height: 1;
}

.amz-ui-action,
.amz-ui-action-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.amz-ui-action {
    font-weight: var(--amz-ui-weight-semibold);
}

.amz-ui-action-primary {
    font-weight: var(--amz-ui-weight-bold);
}

.amz-ui-toolbar-control {
    font-weight: var(--amz-ui-weight-medium);
}

.amz-ui-page-action,
.amz-ui-page-field {
    box-sizing: border-box;
    height: var(--amz-ui-pagination-height);
    min-height: var(--amz-ui-pagination-height);
    padding-top: 0;
    padding-bottom: 0;
    font-family: var(--amz-ui-font-family);
    font-size: var(--amz-ui-font-13);
    line-height: 1;
}

.amz-ui-page-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: var(--amz-ui-weight-semibold);
}

.amz-ui-page-field {
    font-weight: var(--amz-ui-weight-medium);
}

.amz-ui-technical-input {
    font-family: var(--amz-ui-font-mono);
}

/* Explicit business-table roles; legacy action and pagination roles stay unchanged. */
.amz-ui-toolbar-action,
.amz-ui-table-action,
.amz-ui-table-action-link {
    font-family: var(--amz-ui-font-family);
}

.amz-ui-toolbar-action,
.amz-ui-table-action {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-top: 0;
    padding-bottom: 0;
    line-height: 1;
}

.amz-ui-toolbar-action {
    height: var(--amz-ui-control-height);
    min-height: var(--amz-ui-control-height);
    font-size: var(--amz-ui-font-13);
    font-weight: var(--amz-ui-weight-bold);
}

.amz-ui-table-action {
    height: var(--amz-ui-table-action-height);
    min-height: var(--amz-ui-table-action-height);
    font-size: var(--amz-ui-font-12);
    font-weight: var(--amz-ui-weight-semibold);
}

.amz-ui-table-action-link {
    font-size: var(--amz-ui-font-12);
    font-weight: var(--amz-ui-weight-semibold);
}
