/* Shared title/action icons. SVG masks inherit each page's existing text color. */
.uniform-icon { display:inline-block; width:1.05em; height:1.05em; margin-right:6px; vertical-align:-.16em; flex-shrink:0; background:var(--uniform-icon-image) center/contain no-repeat; pointer-events:none; }
@supports ((mask-image:none) or (-webkit-mask-image:none)) {
    .uniform-icon { background:currentColor; -webkit-mask:var(--uniform-icon-image) center/contain no-repeat; mask:var(--uniform-icon-image) center/contain no-repeat; }
}
.uniform-icon-control { background-image:var(--uniform-input-icon),var(--uniform-base-background,none)!important; background-repeat:no-repeat,no-repeat!important; background-position:9px center,center!important; background-size:14px 14px,auto!important; padding-left:29px!important; }
.uniform-icon-link > .uniform-icon,.uniform-icon-button > .uniform-icon { width:1em; height:1em; margin-right:5px; }
.uniform-icon-heading > .uniform-icon { width:1.05em; height:1.05em; }
.uniform-icon-heading { min-width:0; }
.uniform-icon-button, .uniform-icon-link { white-space: nowrap; }
.uniform-icon-button > .uniform-icon, .uniform-icon-link > .uniform-icon {
    vertical-align: -0.15em;
    pointer-events: none;
}
.uniform-icon-control { background-size:15px 15px,auto!important; background-position:10px center,center!important; padding-left:31px!important; }
/* One spacing rule for inline SVG icons; avoid combining gap and margin. */
.flms-controls :is(button, a).uniform-icon-button,
.flms-controls a.uniform-icon-link:is(.button, .flms-button, .flms-btn) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.flms-controls :is(.uniform-icon-button, .uniform-icon-link):is(button, .button, .flms-button, .flms-btn) > .uniform-icon {
    width: 15px; height: 15px; margin: 0;
}
/* Beat the shared theme's padding shorthand on ASP.NET submit inputs. */
.flms-controls input.uniform-icon-control,
.flms-controls .page-content input.uniform-icon-control {
    padding-left: 31px !important;
    padding-right: 10px !important;
}
.flms-controls .pf-work-actions,
.flms-controls .flms-record-pager,
.flms-controls .flms-record-pager > div {
    display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
}
.flms-controls .pf-work-actions > :is(button, input, a) { margin: 0; }
@media screen and (max-width: 560px) {
    .flms-controls .pf-work-actions { gap: 6px; }
    .flms-controls .pf-work-actions > :is(button, input, a) {
        flex: 1 1 130px; min-width: 0; max-width: 100%;
    }
    .flms-controls .page-content :is(button, a).uniform-icon-button,
    .flms-controls .page-content a.uniform-icon-link:is(.button, .flms-button, .flms-btn) {
        height: auto !important; white-space: normal; overflow-wrap: anywhere;
    }
    .flms-controls .flms-record-pager > div { justify-content: flex-end; }
}
@media print { .uniform-icon { print-color-adjust:exact; -webkit-print-color-adjust:exact; } }
