/* GENERATED by scripts/build-manaservice-ui-assets.py — do not edit directly. */
/* MANASERVICE UI-R1 — central design-system primitives.
 * Scope: presentation only. Business workflow, visibility and permissions stay outside this file.
 * New views should consume these semantic tokens/classes instead of defining page-local controls.
 */
:root {
    /* Semantic bridge: supports both the legacy --ms-* platform and the clean --* shell. */
    --ms-ui-bg: var(--ms-bg, var(--bg));
    --ms-ui-sidebar: var(--ms-sidebar-bg, var(--side));
    --ms-ui-surface: var(--ms-surface, var(--panel));
    --ms-ui-surface-alt: var(--ms-surface-alt, var(--panel));
    --ms-ui-surface-raised: var(--ms-surface-raised, var(--hover));
    --ms-ui-input: var(--ms-surface-input, var(--bg));
    --ms-ui-border: var(--ms-border, var(--border));
    --ms-ui-border-strong: var(--ms-border-strong, var(--ms-ui-border));
    --ms-ui-text: var(--ms-text, var(--text));
    --ms-ui-text-strong: var(--ms-text-strong, var(--text));
    --ms-ui-muted: var(--ms-muted, var(--muted));
    --ms-ui-accent: var(--ms-accent, var(--accent));
    --ms-ui-accent-hover: var(--ms-accent-hover, var(--ms-ui-accent));
    --ms-ui-on-accent: var(--ms-on-accent, var(--ms-ui-bg));
    --ms-ui-success: var(--ms-success, var(--ms-ui-accent));
    --ms-ui-warning: var(--ms-warning, var(--ms-ui-accent));
    --ms-ui-danger: var(--ms-danger, var(--ms-ui-accent));
    --ms-ui-info: var(--ms-info, var(--ms-ui-accent));
    --ms-ui-focus: var(--ms-focus-ring, color-mix(in srgb, var(--ms-ui-accent) 25%, transparent));
    --ms-ui-overlay: var(--ms-overlay, transparent);
    --ms-ui-shadow: var(--ms-shadow-raised, var(--ms-shadow, none));
    --ms-ui-line-soft: color-mix(in srgb, var(--ms-ui-border) 92%, var(--ms-ui-accent) 8%);
    --ms-ui-line: color-mix(in srgb, var(--ms-ui-border) 84%, var(--ms-ui-accent) 16%);
    --ms-ui-line-strong: color-mix(in srgb, var(--ms-ui-border-strong) 72%, var(--ms-ui-accent) 28%);

    /* Golden geometry extracted from the approved compact-professional references. */
    --ms-ui-space-1: 4px;
    --ms-ui-space-2: 8px;
    --ms-ui-space-3: 12px;
    --ms-ui-space-4: 16px;
    --ms-ui-space-5: 20px;
    --ms-ui-space-6: 24px;
    --ms-ui-radius-xs: 6px;
    --ms-ui-radius-sm: 8px;
    --ms-ui-radius-md: 10px;
    --ms-ui-radius-lg: 14px;
    --ms-ui-radius-window: 16px;
    /* Locked minimum readable widths: adjust by field meaning, never by column count. */
    --ms-ui-field-min-general: 165px;
    --ms-ui-field-min-name: 175px;
    --ms-ui-field-min-family: 225px;
    --ms-ui-field-min-mobile: 190px;
    --ms-ui-field-min-email: 245px;
    --ms-ui-field-min-company: 290px;
    --ms-ui-field-min-identity: 225px;
    --ms-ui-field-min-select: 175px;
    --ms-ui-control-height: 46px;
    --ms-ui-control-height-sm: 38px;
    --ms-ui-button-height: 42px;
    --ms-ui-icon-button-size: 42px;
    --ms-ui-table-row-height: 54px;
    --ms-ui-window-header-height: 76px;
    --ms-ui-window-footer-height: 58px;
    --ms-ui-sidebar-width: 236px;
    --ms-ui-shell-topbar-height: 56px;
    --ms-ui-shell-footer-height: 37px;
    --ms-ui-shell-content-padding: 30px;
    --ms-ui-shell-services-padding: 15px;
    --ms-ui-content-gap: 14px;
    --ms-ui-section-gap: 14px;

    /* Typography roles. R2 maps user preferences to these roles. */
    --ms-ui-font-family: var(--ms-font-family, Tahoma, Arial, sans-serif);
    --ms-ui-font-caption: 10px;
    --ms-ui-font-helper: 10.5px;
    --ms-ui-font-label: 11.5px;
    --ms-ui-font-body: 12.5px;
    --ms-ui-font-control: 12.5px;
    --ms-ui-font-button: 12px;
    --ms-ui-font-table: 11px;
    --ms-ui-font-card-title: 13.5px;
    --ms-ui-font-section-title: 14.5px;
    --ms-ui-font-window-title: 20px;
    --ms-ui-font-page-title: 22px;
}

/* Density is intentionally discrete and offers six testable levels. */
html[data-ms-ui-density='ultra'] {
    --ms-ui-control-height: 34px; --ms-ui-control-height-sm: 30px; --ms-ui-button-height: 32px;
    --ms-ui-icon-button-size: 32px; --ms-ui-table-row-height: 40px; --ms-ui-content-gap: 7px; --ms-ui-section-gap: 7px;
}
html[data-ms-ui-density='dense'] {
    --ms-ui-control-height: 38px; --ms-ui-control-height-sm: 32px; --ms-ui-button-height: 34px;
    --ms-ui-icon-button-size: 34px; --ms-ui-table-row-height: 44px; --ms-ui-content-gap: 9px; --ms-ui-section-gap: 9px;
}
html[data-ms-ui-density='compact'] {
    --ms-ui-control-height: 42px; --ms-ui-control-height-sm: 35px; --ms-ui-button-height: 38px;
    --ms-ui-icon-button-size: 38px; --ms-ui-table-row-height: 48px; --ms-ui-content-gap: 11px; --ms-ui-section-gap: 11px;
}
html[data-ms-ui-density='standard'] {
    --ms-ui-control-height: 46px; --ms-ui-control-height-sm: 38px; --ms-ui-button-height: 42px;
    --ms-ui-icon-button-size: 42px; --ms-ui-table-row-height: 54px; --ms-ui-content-gap: 14px; --ms-ui-section-gap: 14px;
}
html[data-ms-ui-density='comfortable'] {
    --ms-ui-control-height: 50px; --ms-ui-control-height-sm: 42px; --ms-ui-button-height: 46px;
    --ms-ui-icon-button-size: 46px; --ms-ui-table-row-height: 60px; --ms-ui-content-gap: 17px; --ms-ui-section-gap: 17px;
}
html[data-ms-ui-density='airy'] {
    --ms-ui-control-height: 54px; --ms-ui-control-height-sm: 46px; --ms-ui-button-height: 50px;
    --ms-ui-icon-button-size: 50px; --ms-ui-table-row-height: 66px; --ms-ui-content-gap: 20px; --ms-ui-section-gap: 20px;
}

/* Workspace scale is independent from typography. */
html[data-ms-ui-scale='85'] { --ms-ui-shell-topbar-height:48px; --ms-ui-shell-footer-height:32px; --ms-ui-shell-content-padding:20px; --ms-ui-shell-services-padding:10px; --ms-ui-window-header-height:66px; --ms-ui-window-footer-height:50px; }
html[data-ms-ui-scale='90'] { --ms-ui-shell-topbar-height:52px; --ms-ui-shell-footer-height:34px; --ms-ui-shell-content-padding:24px; --ms-ui-shell-services-padding:12px; --ms-ui-window-header-height:70px; --ms-ui-window-footer-height:54px; }
html[data-ms-ui-scale='95'] { --ms-ui-shell-topbar-height:54px; --ms-ui-shell-footer-height:35px; --ms-ui-shell-content-padding:27px; --ms-ui-shell-services-padding:13px; --ms-ui-window-header-height:73px; --ms-ui-window-footer-height:56px; }
html[data-ms-ui-scale='100'] { --ms-ui-shell-topbar-height:56px; --ms-ui-shell-footer-height:37px; --ms-ui-shell-content-padding:30px; --ms-ui-shell-services-padding:15px; --ms-ui-window-header-height:76px; --ms-ui-window-footer-height:58px; }
html[data-ms-ui-scale='105'] { --ms-ui-shell-topbar-height:59px; --ms-ui-shell-footer-height:39px; --ms-ui-shell-content-padding:33px; --ms-ui-shell-services-padding:17px; --ms-ui-window-header-height:79px; --ms-ui-window-footer-height:61px; }
html[data-ms-ui-scale='110'] { --ms-ui-shell-topbar-height:62px; --ms-ui-shell-footer-height:41px; --ms-ui-shell-content-padding:36px; --ms-ui-shell-services-padding:18px; --ms-ui-window-header-height:82px; --ms-ui-window-footer-height:64px; }

html[data-ms-ui-sidebar-size='compact'] { --ms-ui-sidebar-width: 216px; }
html[data-ms-ui-sidebar-size='wide'] { --ms-ui-sidebar-width: 278px; }

html[data-ms-ui-table-density='ultra'] { --ms-ui-table-row-height: 38px; }
html[data-ms-ui-table-density='dense'] { --ms-ui-table-row-height: 42px; }
html[data-ms-ui-table-density='compact'] { --ms-ui-table-row-height: 46px; }
html[data-ms-ui-table-density='standard'] { --ms-ui-table-row-height: 52px; }
html[data-ms-ui-table-density='comfortable'] { --ms-ui-table-row-height: 58px; }
html[data-ms-ui-table-density='airy'] { --ms-ui-table-row-height: 64px; }

/* Six global text presets preserve visual ratios. Per-role controls below may refine them. */
html[data-ms-ui-text-size='xsmall'] { --ms-ui-font-caption:8.5px; --ms-ui-font-helper:9px; --ms-ui-font-label:9.5px; --ms-ui-font-body:10.5px; --ms-ui-font-control:10.5px; --ms-ui-font-button:10px; --ms-ui-font-table:9.5px; --ms-ui-font-card-title:11.5px; --ms-ui-font-section-title:12.5px; --ms-ui-font-window-title:17px; --ms-ui-font-page-title:19px; }
html[data-ms-ui-text-size='small'] { --ms-ui-font-caption:9px; --ms-ui-font-helper:9.5px; --ms-ui-font-label:10.5px; --ms-ui-font-body:11.5px; --ms-ui-font-control:11.5px; --ms-ui-font-button:11px; --ms-ui-font-table:10px; --ms-ui-font-card-title:12.5px; --ms-ui-font-section-title:13.5px; --ms-ui-font-window-title:18px; --ms-ui-font-page-title:20px; }
html[data-ms-ui-text-size='compact'] { --ms-ui-font-caption:9.5px; --ms-ui-font-helper:10px; --ms-ui-font-label:11px; --ms-ui-font-body:12px; --ms-ui-font-control:12px; --ms-ui-font-button:11.5px; --ms-ui-font-table:10.5px; --ms-ui-font-card-title:13px; --ms-ui-font-section-title:14px; --ms-ui-font-window-title:19px; --ms-ui-font-page-title:21px; }
html[data-ms-ui-text-size='standard'] { --ms-ui-font-caption:10px; --ms-ui-font-helper:10.5px; --ms-ui-font-label:11.5px; --ms-ui-font-body:12.5px; --ms-ui-font-control:12.5px; --ms-ui-font-button:12px; --ms-ui-font-table:11px; --ms-ui-font-card-title:13.5px; --ms-ui-font-section-title:14.5px; --ms-ui-font-window-title:20px; --ms-ui-font-page-title:22px; }
html[data-ms-ui-text-size='large'] { --ms-ui-font-caption:10.5px; --ms-ui-font-helper:11.25px; --ms-ui-font-label:12.5px; --ms-ui-font-body:13.5px; --ms-ui-font-control:13.5px; --ms-ui-font-button:13px; --ms-ui-font-table:12px; --ms-ui-font-card-title:14.5px; --ms-ui-font-section-title:15.75px; --ms-ui-font-window-title:21.5px; --ms-ui-font-page-title:24px; }
html[data-ms-ui-text-size='xlarge'] { --ms-ui-font-caption:11.5px; --ms-ui-font-helper:12px; --ms-ui-font-label:13.5px; --ms-ui-font-body:14.5px; --ms-ui-font-control:14.5px; --ms-ui-font-button:14px; --ms-ui-font-table:13px; --ms-ui-font-card-title:15.5px; --ms-ui-font-section-title:17px; --ms-ui-font-window-title:23px; --ms-ui-font-page-title:25.5px; }

/* Independent role scales: these are deliberately separate to preserve visual mathematics. */
html[data-ms-body-text='xxs'] { --ms-ui-font-body:9.75px; }
html[data-ms-body-text='xs'] { --ms-ui-font-body:10.75px; }
html[data-ms-body-text='sm'] { --ms-ui-font-body:11.75px; }
html[data-ms-body-text='md'] { --ms-ui-font-body:12.5px; }
html[data-ms-body-text='lg'] { --ms-ui-font-body:13.5px; }
html[data-ms-body-text='xl'] { --ms-ui-font-body:14.5px; }
html[data-ms-page-title-scale='xxs'] { --ms-ui-font-page-title:17px; --ms-ui-font-window-title:16px; }
html[data-ms-page-title-scale='xs'] { --ms-ui-font-page-title:19px; --ms-ui-font-window-title:17.5px; }
html[data-ms-page-title-scale='sm'] { --ms-ui-font-page-title:20.5px; --ms-ui-font-window-title:18.5px; }
html[data-ms-page-title-scale='md'] { --ms-ui-font-page-title:22px; --ms-ui-font-window-title:20px; }
html[data-ms-page-title-scale='lg'] { --ms-ui-font-page-title:24px; --ms-ui-font-window-title:21.5px; }
html[data-ms-page-title-scale='xl'] { --ms-ui-font-page-title:25.5px; --ms-ui-font-window-title:23px; }
html[data-ms-section-title-scale='xxs'] { --ms-ui-font-section-title:11.5px; --ms-ui-font-card-title:10.75px; }
html[data-ms-section-title-scale='xs'] { --ms-ui-font-section-title:12.5px; --ms-ui-font-card-title:11.5px; }
html[data-ms-section-title-scale='sm'] { --ms-ui-font-section-title:13.5px; --ms-ui-font-card-title:12.5px; }
html[data-ms-section-title-scale='md'] { --ms-ui-font-section-title:14.5px; --ms-ui-font-card-title:13.5px; }
html[data-ms-section-title-scale='lg'] { --ms-ui-font-section-title:15.75px; --ms-ui-font-card-title:14.5px; }
html[data-ms-section-title-scale='xl'] { --ms-ui-font-section-title:17px; --ms-ui-font-card-title:15.5px; }
html[data-ms-field-label-scale='xxs'] { --ms-ui-font-label:8.75px; }
html[data-ms-field-label-scale='xs'] { --ms-ui-font-label:9.75px; }
html[data-ms-field-label-scale='sm'] { --ms-ui-font-label:10.75px; }
html[data-ms-field-label-scale='md'] { --ms-ui-font-label:11.5px; }
html[data-ms-field-label-scale='lg'] { --ms-ui-font-label:12.5px; }
html[data-ms-field-label-scale='xl'] { --ms-ui-font-label:13.5px; }
html[data-ms-control-text-scale='xxs'] { --ms-ui-font-control:9.5px; }
html[data-ms-control-text-scale='xs'] { --ms-ui-font-control:10.5px; }
html[data-ms-control-text-scale='sm'] { --ms-ui-font-control:11.5px; }
html[data-ms-control-text-scale='md'] { --ms-ui-font-control:12.5px; }
html[data-ms-control-text-scale='lg'] { --ms-ui-font-control:13.5px; }
html[data-ms-control-text-scale='xl'] { --ms-ui-font-control:14.5px; }
html[data-ms-button-text-scale='xxs'] { --ms-ui-font-button:9px; }
html[data-ms-button-text-scale='xs'] { --ms-ui-font-button:10px; }
html[data-ms-button-text-scale='sm'] { --ms-ui-font-button:11px; }
html[data-ms-button-text-scale='md'] { --ms-ui-font-button:12px; }
html[data-ms-button-text-scale='lg'] { --ms-ui-font-button:13px; }
html[data-ms-button-text-scale='xl'] { --ms-ui-font-button:14px; }
html[data-ms-table-text='xxs'] { --ms-ui-font-table:8.75px; }
html[data-ms-table-text='xs'] { --ms-ui-font-table:9.5px; }
html[data-ms-table-text='sm'] { --ms-ui-font-table:10.25px; }
html[data-ms-table-text='md'] { --ms-ui-font-table:11px; }
html[data-ms-table-text='lg'] { --ms-ui-font-table:12px; }
html[data-ms-table-text='xl'] { --ms-ui-font-table:13px; }
html[data-ms-helper-text='xxs'] { --ms-ui-font-helper:8.25px; --ms-ui-font-caption:8px; }
html[data-ms-helper-text='xs'] { --ms-ui-font-helper:9px; --ms-ui-font-caption:8.5px; }
html[data-ms-helper-text='sm'] { --ms-ui-font-helper:9.75px; --ms-ui-font-caption:9.25px; }
html[data-ms-helper-text='md'] { --ms-ui-font-helper:10.5px; --ms-ui-font-caption:10px; }
html[data-ms-helper-text='lg'] { --ms-ui-font-helper:11.5px; --ms-ui-font-caption:10.75px; }
html[data-ms-helper-text='xl'] { --ms-ui-font-helper:12.5px; --ms-ui-font-caption:11.5px; }

.ms-ui-stack { display: flex; flex-direction: column; gap: var(--ms-ui-content-gap); min-width: 0; }
.ms-ui-row { display: flex; align-items: center; gap: var(--ms-ui-content-gap); min-width: 0; }
.ms-ui-grid { display: grid; gap: var(--ms-ui-content-gap); min-width: 0; }
.ms-ui-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ms-ui-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ms-ui-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.ms-ui-btn {
    min-height: var(--ms-ui-button-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 15px;
    border: 1px solid var(--ms-ui-line-soft);
    border-radius: var(--ms-ui-radius-sm);
    background: var(--ms-ui-surface-raised);
    color: var(--ms-ui-text);
    font: 600 var(--ms-ui-font-button)/1.3 var(--ms-ui-font-family);
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color .14s ease, border-color .14s ease, color .14s ease, box-shadow .14s ease, transform .14s ease;
}
.ms-ui-btn:hover { border-color: var(--ms-ui-border-strong); background: color-mix(in srgb, var(--ms-ui-surface-raised) 76%, var(--ms-ui-accent) 24%); color: var(--ms-ui-text-strong); }
.ms-ui-btn:focus-visible { outline: none; box-shadow: 0 0 0 3px var(--ms-ui-focus); }
.ms-ui-btn:active { transform: translateY(1px); }
.ms-ui-btn:disabled, .ms-ui-btn[aria-disabled='true'] { opacity: .48; cursor: not-allowed; transform: none; }
.ms-ui-btn--primary { background: linear-gradient(180deg, color-mix(in srgb, var(--ms-ui-accent) 82%, var(--ms-ui-text-strong) 18%), var(--ms-ui-accent)); border-color: var(--ms-ui-accent); color: var(--ms-ui-on-accent); }
.ms-ui-btn--primary:hover { background: var(--ms-ui-accent-hover); border-color: var(--ms-ui-accent-hover); color: var(--ms-ui-on-accent); }
.ms-ui-btn--secondary { background: transparent; }
.ms-ui-btn--danger { background: color-mix(in srgb, var(--ms-ui-danger) 14%, var(--ms-ui-surface)); border-color: color-mix(in srgb, var(--ms-ui-danger) 64%, var(--ms-ui-border)); color: var(--ms-ui-danger); }
.ms-ui-btn--success { background: color-mix(in srgb, var(--ms-ui-success) 14%, var(--ms-ui-surface)); border-color: color-mix(in srgb, var(--ms-ui-success) 60%, var(--ms-ui-border)); color: var(--ms-ui-success); }
.ms-ui-btn--ghost { background: transparent; border-color: transparent; }
.ms-ui-btn--sm { min-height: var(--ms-ui-control-height-sm); padding-inline: 11px; font-size: var(--ms-ui-font-helper); }
.ms-ui-btn--icon { width: var(--ms-ui-icon-button-size); min-width: var(--ms-ui-icon-button-size); min-height: var(--ms-ui-icon-button-size); padding: 0; }

.ms-ui-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.ms-ui-field__label { display: flex; align-items: center; gap: 6px; min-height: 18px; margin: 0; color: var(--ms-ui-text); font: 600 var(--ms-ui-font-label)/1.4 var(--ms-ui-font-family); }
.ms-ui-field__required { color: var(--ms-ui-danger); font-weight: 900; }
.ms-ui-field__help { color: var(--ms-ui-muted); font: 400 var(--ms-ui-font-helper)/1.65 var(--ms-ui-font-family); }
.ms-ui-field :is(input, select, textarea), :is(input, select, textarea).ms-ui-control {
    width: 100%;
    min-height: var(--ms-ui-control-height);
    margin: 0;
    padding: 8px 11px;
    border: 1px solid var(--ms-ui-line-soft);
    border-radius: var(--ms-ui-radius-sm);
    background: var(--ms-ui-input);
    color: var(--ms-ui-text);
    font: 600 var(--ms-ui-font-control)/1.45 var(--ms-ui-font-family);
    outline: none;
}
.ms-ui-field textarea, textarea.ms-ui-control { min-height: 78px; resize: vertical; }
.ms-ui-field :is(input, select, textarea):focus, :is(input, select, textarea).ms-ui-control:focus { border-color: var(--ms-ui-accent); box-shadow: 0 0 0 3px var(--ms-ui-focus); }
.ms-ui-field :is(input, select, textarea):disabled, :is(input, select, textarea).ms-ui-control:disabled { opacity: .58; cursor: not-allowed; }

.ms-ui-panel { min-width: 0; border: 1px solid var(--ms-ui-line); border-radius: var(--ms-ui-radius-lg); background: color-mix(in srgb, var(--ms-ui-surface) 94%, transparent); overflow: hidden; }
.ms-ui-panel__header { min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 14px; border-bottom: 1px solid var(--ms-ui-line-soft); background: color-mix(in srgb, var(--ms-ui-surface-alt) 90%, transparent); }
.ms-ui-panel__title { margin: 0; color: var(--ms-ui-text-strong); font: 800 var(--ms-ui-font-section-title)/1.4 var(--ms-ui-font-family); }
.ms-ui-panel__body { padding: 12px 14px; }
.ms-ui-panel__footer { min-height: 48px; display: flex; align-items: center; gap: 8px; padding: 8px 14px; border-top: 1px solid var(--ms-ui-line-soft); background: color-mix(in srgb, var(--ms-ui-surface-alt) 80%, transparent); }

.ms-ui-toolbar { display: flex; align-items: center; gap: 8px; min-width: 0; flex-wrap: wrap; }
.ms-ui-toolbar__grow { flex: 1 1 240px; min-width: 180px; }
.ms-ui-toolbar__group { display: inline-flex; align-items: center; gap: 6px; }

.ms-ui-tabs { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(140px, 1fr); gap: 4px; padding: 0; }
.ms-ui-tab { min-height: 48px; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 8px 14px; border: 1px solid var(--ms-ui-line-soft); border-radius: var(--ms-ui-radius-sm); background: color-mix(in srgb, var(--ms-ui-surface) 92%, transparent); color: var(--ms-ui-muted); font: 800 var(--ms-ui-font-body)/1.3 var(--ms-ui-font-family); }
.ms-ui-tab[aria-selected='true'], .ms-ui-tab.is-active { color: var(--ms-ui-text-strong); border-color: var(--ms-ui-accent); box-shadow: inset 0 -3px 0 var(--ms-ui-accent), 0 0 0 1px color-mix(in srgb, var(--ms-ui-accent) 26%, transparent); background: color-mix(in srgb, var(--ms-ui-accent) 11%, var(--ms-ui-surface)); }

.ms-ui-chip { min-height: 28px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 3px 10px; border: 1px solid var(--ms-ui-border); border-radius: 999px; background: var(--ms-ui-surface-raised); color: var(--ms-ui-text); font: 800 var(--ms-ui-font-helper)/1.2 var(--ms-ui-font-family); white-space: nowrap; }
.ms-ui-chip::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.ms-ui-chip--success { color: var(--ms-ui-success); }
.ms-ui-chip--warning { color: var(--ms-ui-warning); }
.ms-ui-chip--danger { color: var(--ms-ui-danger); }
.ms-ui-chip--info { color: var(--ms-ui-info); }
.ms-ui-chip--neutral::before { display: none; }

.ms-ui-kpi-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; }
.ms-ui-kpi { min-height: 50px; display: flex; align-items: center; justify-content: center; gap: 10px; padding: 8px 12px; border: 1px solid var(--ms-ui-border); border-radius: var(--ms-ui-radius-sm); background: var(--ms-ui-surface); color: var(--ms-ui-text); font: 800 var(--ms-ui-font-body)/1.2 var(--ms-ui-font-family); }
.ms-ui-kpi strong { font-size: calc(var(--ms-ui-font-body) + 1px); font-variant-numeric: tabular-nums; }

.ms-ui-table-wrap { min-width: 0; overflow: auto; border: 1px solid var(--ms-ui-line); border-radius: var(--ms-ui-radius-lg); background: var(--ms-ui-surface); }
.ms-ui-table { width: 100%; border-collapse: separate; border-spacing: 0; color: var(--ms-ui-text); font: 600 var(--ms-ui-font-table)/1.45 var(--ms-ui-font-family); }
.ms-ui-table th { position: sticky; top: 0; z-index: 2; height: 44px; padding: 7px 9px; border-bottom: 1px solid var(--ms-ui-line); border-inline-start: 1px solid var(--ms-ui-line-soft); background: color-mix(in srgb, var(--ms-ui-surface-alt) 94%, transparent); color: var(--ms-ui-text); font-weight: 800; white-space: nowrap; }
.ms-ui-table td { height: var(--ms-ui-table-row-height); padding: 6px 9px; border-bottom: 1px solid var(--ms-ui-line-soft); border-inline-start: 1px solid var(--ms-ui-line-soft); vertical-align: middle; }
.ms-ui-table tbody tr:hover td { background: color-mix(in srgb, var(--ms-ui-accent) 6%, var(--ms-ui-surface)); }
.ms-ui-table tr:last-child td { border-bottom: 0; }

.ms-ui-pagination { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 10px; }
.ms-ui-pagination__pages { display: flex; align-items: center; gap: 5px; }
.ms-ui-pagination__page { min-width: 36px; min-height: 36px; display: inline-grid; place-items: center; border: 1px solid var(--ms-ui-border); border-radius: var(--ms-ui-radius-sm); background: var(--ms-ui-surface); color: var(--ms-ui-text); font-weight: 800; }
.ms-ui-pagination__page.is-active { background: var(--ms-ui-accent); border-color: var(--ms-ui-accent); color: var(--ms-ui-on-accent); }

.ms-ui-window { width: min(1320px, calc(100vw - 48px)); max-height: calc(100vh - 40px); display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--ms-ui-line-strong); border-radius: var(--ms-ui-radius-window); background: var(--ms-ui-bg); color: var(--ms-ui-text); box-shadow: var(--ms-ui-shadow); font-family: var(--ms-ui-font-family); }
.ms-ui-window__header { min-height: var(--ms-ui-window-header-height); display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 18px; border-bottom: 1px solid var(--ms-ui-border); background: color-mix(in srgb, var(--ms-ui-surface-alt) 62%, var(--ms-ui-bg)); }
.ms-ui-window__heading { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.ms-ui-window__breadcrumb { color: var(--ms-ui-muted); font-size: var(--ms-ui-font-caption); }
.ms-ui-window__title { margin: 0; color: var(--ms-ui-text-strong); font: 900 var(--ms-ui-font-window-title)/1.35 var(--ms-ui-font-family); }
.ms-ui-window__controls { display: flex; align-items: center; gap: 8px; }
.ms-ui-window__body { min-height: 0; overflow: auto; flex: 1 1 auto; padding: 12px; }
.ms-ui-window__footer { min-height: var(--ms-ui-window-footer-height); display: flex; align-items: center; gap: 10px; padding: 8px 16px; border-top: 1px solid var(--ms-ui-border); background: color-mix(in srgb, var(--ms-ui-surface-alt) 68%, var(--ms-ui-bg)); }
.ms-ui-window__footer-note { flex: 1 1 auto; min-width: 0; color: var(--ms-ui-muted); font-size: var(--ms-ui-font-helper); }

@media (max-width: 1100px) {
    .ms-ui-kpi-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ms-ui-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ms-ui-window { width: min(100vw - 24px, 1320px); max-height: calc(100vh - 24px); }
}
@media (max-width: 760px) {
    .ms-ui-grid--2, .ms-ui-grid--3, .ms-ui-grid--4, .ms-ui-kpi-grid { grid-template-columns: 1fr; }
    .ms-ui-tabs { grid-auto-flow: row; grid-auto-columns: 1fr; grid-template-columns: 1fr 1fr; }
    .ms-ui-window { width: calc(100vw - 12px); max-height: calc(100vh - 12px); border-radius: 12px; }
    .ms-ui-window__header { padding-inline: 12px; }
    .ms-ui-window__body { padding: 9px; }
    .ms-ui-window__footer { padding-inline: 10px; flex-wrap: wrap; }
}

/* UI-R3 — Golden Window contract extracted from the approved reception references.
 * These primitives are presentation-only. Workflow visibility and business rules remain authoritative elsewhere. */
:root {
    --ms-ui-border-visible: color-mix(in srgb, var(--ms-ui-border) 72%, var(--ms-ui-accent) 28%);
    --ms-ui-border-emphasis: color-mix(in srgb, var(--ms-ui-border) 44%, var(--ms-ui-accent) 56%);
    --ms-ui-focus-border: color-mix(in srgb, var(--ms-ui-accent) 88%, white 12%);
    --ms-ui-window-surface: color-mix(in srgb, var(--ms-ui-bg) 84%, var(--ms-ui-surface) 16%);
    --ms-ui-section-surface: color-mix(in srgb, var(--ms-ui-surface) 64%, var(--ms-ui-bg) 36%);
    --ms-ui-control-surface: color-mix(in srgb, var(--ms-ui-bg) 88%, var(--ms-ui-surface) 12%);
    --ms-ui-golden-window-width: 1340px;
    --ms-ui-golden-window-height: 1000px;
    --ms-ui-golden-header-height: 90px;
    --ms-ui-golden-tabs-height: 64px;
    --ms-ui-golden-footer-height: 58px;
    --ms-ui-golden-section-radius: 11px;
}

[data-ms-golden-window] {
    border-color: var(--ms-ui-border-emphasis);
    background: var(--ms-ui-window-surface);
    box-shadow: 0 24px 88px color-mix(in srgb, #000 62%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--ms-ui-accent) 8%, transparent);
}
[data-ms-golden-window] :is(input, select, textarea) {
    border-color: var(--ms-ui-border-visible);
    background: var(--ms-ui-control-surface);
    color: var(--ms-ui-text);
}
[data-ms-golden-window] :is(input, select, textarea):hover:not(:disabled) { border-color: var(--ms-ui-border-emphasis); }
[data-ms-golden-window] :is(input, select, textarea):focus {
    border-color: var(--ms-ui-focus-border);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--ms-ui-accent) 19%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--ms-ui-accent) 12%, transparent);
}
[data-ms-golden-window] .ms-ui-btn,
[data-ms-golden-window] :is(.action,.ghost,.ms-window-cross,.ms-window-minimize) {
    border-color: var(--ms-ui-border-visible);
}
[data-ms-golden-window] .ms-window-cross:hover,
[data-ms-golden-window] .ms-window-minimize:hover,
[data-ms-golden-window] .ghost:hover { border-color: var(--ms-ui-focus-border); background: color-mix(in srgb, var(--ms-ui-accent) 12%, transparent); }

/* UI-R5 — Full-site migration bridge + enforcement baseline.
 * The application contract is now semantic-first: legacy Clean classes are only
 * compatibility aliases for the shared Design System. Business visibility,
 * authorization, validation and workflow remain server-authoritative. */
body[data-ms-ui-contract='5'] {
    font-family: var(--ms-ui-font-family);
    font-size: var(--ms-ui-font-body);
}

/* Page titles / cards / operational sections share one density and line hierarchy. */
body[data-ms-ui-contract='5'] :is(.services-heading,.clean-page-title) h1 {
    margin: 0;
    color: var(--ms-ui-text-strong);
    font: 900 var(--ms-ui-font-page-title)/1.35 var(--ms-ui-font-family);
}
body[data-ms-ui-contract='5'] :is(.services-heading,.clean-page-title) p {
    margin-top: 4px;
    color: var(--ms-ui-muted);
    font: 500 var(--ms-ui-font-helper)/1.75 var(--ms-ui-font-family);
}
body[data-ms-ui-contract='5'] :is(
    .panel,.service-list,.service-metric,.ms-info,.ms-details>div,.ms-device-row,.ms-event,.ms-device-form,
    .ms-repair-actions,.ms-repair-current-state,.ms-repair-report-card,.ms-repair-part-request,
    .ms-settings-card,.ms-settings-panel,.ms-identity-definition-panel,.ms-identity-record,
    .ms-ws-service-choice,.ms-edit-fieldset,.ms-ref-card,.ms-invoice-summary-card,.ms-delivery-card,
    .ms-archive-section,.ms-technician-card,.data-grid>div
) {
    border-color: var(--ms-ui-line-soft) !important;
    background-color: color-mix(in srgb, var(--ms-ui-surface) 92%, transparent);
    color: var(--ms-ui-text);
}
body[data-ms-ui-contract='5'] :is(
    .service-list-header,.service-list-footer,.ms-ref-card__head,.ms-repair-report-card>header,.ms-repair-report-card>footer
) {
    border-color: var(--ms-ui-line-soft) !important;
}
body[data-ms-ui-contract='5'] :is(.muted,.ms-info p,.ms-settings-hint,.ms-window-feedback,[class*='__help']) {
    color: var(--ms-ui-muted) !important;
}

/* All operational form controls inherit one shared control contract. */
body[data-ms-ui-contract='5'] :is(
    .ms-form-grid,.service-filter-form,.ms-inline-actions,.form,.ms-settings-panel,.ms-window-panel,
    .ms-identity-create,.ms-appearance-form,.profile-panel
) :is(
    input:not([type='checkbox']):not([type='radio']):not([type='hidden']),select,textarea
) {
    min-height: var(--ms-ui-control-height);
    max-width: 100%;
    border: 1px solid var(--ms-ui-line-soft) !important;
    border-radius: var(--ms-ui-radius-sm) !important;
    background: var(--ms-ui-input) !important;
    color: var(--ms-ui-text) !important;
    padding: 8px 11px !important;
    font: 600 var(--ms-ui-font-control)/1.45 var(--ms-ui-font-family) !important;
    outline: none;
    transition: border-color .14s ease, box-shadow .14s ease, background-color .14s ease;
}
body[data-ms-ui-contract='5'] :is(
    .ms-form-grid,.service-filter-form,.ms-inline-actions,.form,.ms-settings-panel,.ms-window-panel,
    .ms-identity-create,.ms-appearance-form,.profile-panel
) textarea { min-height: 78px; resize: vertical; }
body[data-ms-ui-contract='5'] :is(
    .ms-form-grid,.service-filter-form,.ms-inline-actions,.form,.ms-settings-panel,.ms-window-panel,
    .ms-identity-create,.ms-appearance-form,.profile-panel
) :is(input,select,textarea):focus {
    border-color: var(--ms-ui-accent) !important;
    box-shadow: 0 0 0 3px var(--ms-ui-focus) !important;
}
body[data-ms-ui-contract='5'] :is(input,select,textarea):disabled,
body[data-ms-ui-contract='5'] :is(input,select,textarea)[readonly] {
    border-color: var(--ms-ui-line-soft) !important;
    background: color-mix(in srgb, var(--ms-ui-input) 74%, var(--ms-ui-surface) 26%) !important;
    color: color-mix(in srgb, var(--ms-ui-text) 76%, var(--ms-ui-muted) 24%) !important;
    opacity: 1;
}
body[data-ms-ui-contract='5'] :is(input[type='checkbox'],input[type='radio']) { accent-color: var(--ms-ui-accent); }
body[data-ms-ui-contract='5'] :is(.ms-form-grid,.form,.ms-window-panel) label {
    color: var(--ms-ui-text);
    font-size: var(--ms-ui-font-label);
}
body[data-ms-ui-contract='5'] :is(.ms-form-grid,.form,.ms-window-panel) label>small { color: var(--ms-ui-muted); }

/* Legacy action names are aliases of the central button variants. */
body[data-ms-ui-contract='5'] :is(
    .action,.ghost,.service-row-action,.service-row-delete,.ms-window-cross,.ms-window-minimize,
    .ms-danger-action,.menu-btn,.sidebar-profile-menu button
) {
    min-height: var(--ms-ui-button-height);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: auto;
    padding: 0 14px;
    border: 1px solid var(--ms-ui-line-soft) !important;
    border-radius: var(--ms-ui-radius-sm) !important;
    background: var(--ms-ui-surface-raised);
    color: var(--ms-ui-text);
    font: 600 var(--ms-ui-font-button)/1.3 var(--ms-ui-font-family);
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease;
}
body[data-ms-ui-contract='5'] :is(.action,.service-row-action):not(.secondary):not(.service-row-delete):not(.ms-danger-action) {
    background: linear-gradient(180deg,color-mix(in srgb,var(--ms-ui-accent) 82%,var(--ms-ui-text-strong) 18%),var(--ms-ui-accent));
    border-color: var(--ms-ui-accent) !important;
    color: var(--ms-ui-on-accent);
}
body[data-ms-ui-contract='5'] :is(.ghost,.action.secondary) { background: transparent; color: var(--ms-ui-text); }
body[data-ms-ui-contract='5'] :is(.service-row-delete,.ms-danger-action) {
    background: color-mix(in srgb,var(--ms-ui-danger) 13%,var(--ms-ui-surface));
    border-color: color-mix(in srgb,var(--ms-ui-danger) 62%,var(--ms-ui-line-soft)) !important;
    color: var(--ms-ui-danger);
}
body[data-ms-ui-contract='5'] :is(.action,.ghost,.service-row-action,.service-row-delete,.ms-danger-action):hover:not(:disabled) {
    border-color: var(--ms-ui-accent) !important;
    box-shadow: 0 0 0 2px color-mix(in srgb,var(--ms-ui-accent) 16%,transparent);
}
body[data-ms-ui-contract='5'] :is(.action,.ghost,.service-row-action,.service-row-delete,.ms-danger-action):disabled {
    opacity: .46;
    cursor: not-allowed;
    box-shadow: none;
}
body[data-ms-ui-contract='5'] :is(.ms-window-cross,.ms-window-minimize,.menu-btn) {
    width: var(--ms-ui-icon-button-size);
    min-width: var(--ms-ui-icon-button-size);
    min-height: var(--ms-ui-icon-button-size);
    padding: 0;
}

/* Every operational modal/window uses the same shell geometry unless a purpose-built
 * reference window explicitly overrides it (Golden Reception remains resizable). */
body[data-ms-ui-contract='5'] .ms-window:not([data-ms-golden-reception]) {
    border-color: var(--ms-ui-line-strong) !important;
    border-radius: var(--ms-ui-radius-window) !important;
    background: var(--ms-ui-bg);
    color: var(--ms-ui-text);
    box-shadow: 0 24px 88px color-mix(in srgb,#000 54%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--ms-ui-accent) 6%,transparent);
}
body[data-ms-ui-contract='5'] .ms-window:not([data-ms-golden-reception])>.ms-window-header {
    min-height: var(--ms-ui-window-header-height);
    padding: 11px 16px;
    border-bottom: 1px solid var(--ms-ui-line) !important;
    background: color-mix(in srgb,var(--ms-ui-surface-alt) 62%,var(--ms-ui-bg));
}
body[data-ms-ui-contract='5'] .ms-window:not([data-ms-golden-reception])>.ms-window-header h2 {
    margin: 0;
    color: var(--ms-ui-text-strong);
    font: 900 var(--ms-ui-font-window-title)/1.35 var(--ms-ui-font-family);
}
body[data-ms-ui-contract='5'] .ms-window:not([data-ms-golden-reception])>.ms-window-header small {
    color: var(--ms-ui-muted);
    font-size: var(--ms-ui-font-caption);
}
body[data-ms-ui-contract='5'] .ms-window:not([data-ms-golden-reception])>.ms-window-tabs {
    border-bottom: 1px solid var(--ms-ui-line) !important;
    background: color-mix(in srgb,var(--ms-ui-surface) 92%,var(--ms-ui-bg));
}
body[data-ms-ui-contract='5'] .ms-window:not([data-ms-golden-reception])>.ms-window-tabs>button {
    min-height: 46px;
    border-inline-start: 1px solid var(--ms-ui-line-soft) !important;
    border-bottom: 3px solid transparent !important;
    background: transparent;
    color: var(--ms-ui-muted);
    font: 800 var(--ms-ui-font-body)/1.3 var(--ms-ui-font-family);
}
body[data-ms-ui-contract='5'] .ms-window:not([data-ms-golden-reception])>.ms-window-tabs>button[aria-selected='true'] {
    color: var(--ms-ui-text-strong);
    border-bottom-color: var(--ms-ui-accent) !important;
    background: color-mix(in srgb,var(--ms-ui-accent) 9%,var(--ms-ui-surface));
}
body[data-ms-ui-contract='5'] .ms-window:not([data-ms-golden-reception])>.ms-window-body { padding: var(--ms-ui-section-gap); }
body[data-ms-ui-contract='5'] .ms-window:not([data-ms-golden-reception])>.ms-window-footer {
    min-height: var(--ms-ui-window-footer-height);
    padding: 8px 14px;
    border-top: 1px solid var(--ms-ui-line) !important;
    background: color-mix(in srgb,var(--ms-ui-surface-alt) 68%,var(--ms-ui-bg));
}
body[data-ms-ui-contract='5'] .ms-window-panel>h3,
body[data-ms-ui-contract='5'] :is(.ms-info,.ms-ref-card,.ms-archive-section)>h3 {
    color: var(--ms-ui-text-strong);
    font: 800 var(--ms-ui-font-section-title)/1.4 var(--ms-ui-font-family);
}

/* Status chips are semantic, theme aware and shared by every module. */
body[data-ms-ui-contract='5'] .status-chip {
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 10px;
    border: 1px solid var(--ms-ui-line-soft);
    border-radius: 999px;
    background: var(--ms-ui-surface-raised);
    color: var(--ms-ui-text);
    font: 800 var(--ms-ui-font-helper)/1.2 var(--ms-ui-font-family);
}
body[data-ms-ui-contract='5'] .status-chip--intake { color: var(--ms-ui-info); background: color-mix(in srgb,var(--ms-ui-info) 12%,var(--ms-ui-surface)); }
body[data-ms-ui-contract='5'] .status-chip--ready { color: var(--ms-ui-warning); background: color-mix(in srgb,var(--ms-ui-warning) 12%,var(--ms-ui-surface)); }
body[data-ms-ui-contract='5'] .status-chip--assigned { color: color-mix(in srgb,var(--ms-ui-info) 58%,var(--ms-ui-accent) 42%); background: color-mix(in srgb,var(--ms-ui-accent) 10%,var(--ms-ui-surface)); }
body[data-ms-ui-contract='5'] .status-chip--repair { color: var(--ms-ui-warning); background: color-mix(in srgb,var(--ms-ui-warning) 12%,var(--ms-ui-surface)); }
body[data-ms-ui-contract='5'] .status-chip--parts { color: color-mix(in srgb,var(--ms-ui-danger) 52%,var(--ms-ui-accent) 48%); background: color-mix(in srgb,var(--ms-ui-danger) 10%,var(--ms-ui-surface)); }
body[data-ms-ui-contract='5'] .status-chip--done { color: var(--ms-ui-success); background: color-mix(in srgb,var(--ms-ui-success) 12%,var(--ms-ui-surface)); }

/* List/table/detail lines cannot disappear in any of the 8 themes. */
body[data-ms-ui-contract='5'] :is(.service-list-columns,.service-row,.service-list-footer,.ms-assignment-row,.ms-identity-record>summary) {
    border-color: var(--ms-ui-line-soft) !important;
}
body[data-ms-ui-contract='5'] table:not(.ms-dashboard-table):not(.ms-ui-table) {
    border-color: var(--ms-ui-line-soft);
    color: var(--ms-ui-text);
}
body[data-ms-ui-contract='5'] table:not(.ms-dashboard-table):not(.ms-ui-table) :is(th,td) {
    border-color: var(--ms-ui-line-soft) !important;
}
body[data-ms-ui-contract='5'] .notice {
    border: 1px solid var(--ms-ui-line-soft);
    border-radius: var(--ms-ui-radius-sm);
    background: color-mix(in srgb,var(--ms-ui-info) 8%,var(--ms-ui-surface));
    color: var(--ms-ui-text);
}
body[data-ms-ui-contract='5'] .notice.error {
    border-color: color-mix(in srgb,var(--ms-ui-danger) 58%,var(--ms-ui-line-soft));
    background: color-mix(in srgb,var(--ms-ui-danger) 9%,var(--ms-ui-surface));
    color: color-mix(in srgb,var(--ms-ui-danger) 82%,var(--ms-ui-text) 18%);
}

/* Authentication shell also consumes the central primitives. */
body[data-ms-ui-contract='5'].security-login :is(.security-login__card,.security-login__step,.security-tenant-list label,.security-message) {
    border-color: var(--ms-ui-line-soft) !important;
    background-color: color-mix(in srgb,var(--ms-ui-surface) 92%,transparent);
    color: var(--ms-ui-text);
}
body[data-ms-ui-contract='5'].security-login .security-login__form :is(input:not([type='checkbox']):not([type='radio']),select,textarea) {
    min-height: var(--ms-ui-control-height);
    border: 1px solid var(--ms-ui-line-soft) !important;
    border-radius: var(--ms-ui-radius-sm) !important;
    background: var(--ms-ui-input) !important;
    color: var(--ms-ui-text) !important;
    padding: 8px 11px !important;
    font: 600 var(--ms-ui-font-control)/1.45 var(--ms-ui-font-family) !important;
}
body[data-ms-ui-contract='5'].security-login button {
    min-height: var(--ms-ui-button-height);
    padding: 0 14px;
    border: 1px solid var(--ms-ui-line-soft) !important;
    border-radius: var(--ms-ui-radius-sm) !important;
    background: transparent;
    color: var(--ms-ui-text);
    font: 600 var(--ms-ui-font-button)/1.3 var(--ms-ui-font-family);
}
body[data-ms-ui-contract='5'].security-login button.primary {
    background: linear-gradient(180deg,color-mix(in srgb,var(--ms-ui-accent) 82%,var(--ms-ui-text-strong) 18%),var(--ms-ui-accent));
    border-color: var(--ms-ui-accent) !important;
    color: var(--ms-ui-on-accent);
}

/* Compact-professional responsive profile: preserve functionality, then compress. */
@media (max-width: 1180px) {
    body[data-ms-ui-contract='5'] :is(.ms-form-grid,.ms-ref-grid) { gap: 10px; }
    body[data-ms-ui-contract='5'] :is(.service-list-header,.services-heading) { gap: 10px; }
}
@media (max-width: 760px) {
    body[data-ms-ui-contract='5'] :is(.action,.ghost,.service-row-action,.service-row-delete,.ms-danger-action) { min-height: var(--ms-ui-control-height-sm); padding-inline: 11px; }
}

/* Semantic field widths and disabled states — shared across site windows. */
.ms-ui-semantic-field { min-width:min(100%,var(--ms-ui-field-min-general)); }
.ms-ui-semantic-field[data-ms-field-kind="mobile"] { --ms-ui-field-min:var(--ms-ui-field-min-mobile); }
.ms-ui-semantic-field[data-ms-field-kind="name"] { --ms-ui-field-min:var(--ms-ui-field-min-name); }
.ms-ui-semantic-field[data-ms-field-kind="family"] { --ms-ui-field-min:var(--ms-ui-field-min-family); }
.ms-ui-semantic-field[data-ms-field-kind="email"] { --ms-ui-field-min:var(--ms-ui-field-min-email); }
.ms-ui-semantic-field[data-ms-field-kind="company"] { --ms-ui-field-min:var(--ms-ui-field-min-company); }
.ms-ui-semantic-field[data-ms-field-kind="identity"] { --ms-ui-field-min:var(--ms-ui-field-min-identity); }
.ms-ui-semantic-field[data-ms-field-kind="select"] { --ms-ui-field-min:var(--ms-ui-field-min-select); }
:where(.ms-window,.content) :is(input,select,textarea):disabled:not([type="hidden"]) {
  opacity:.52; cursor:not-allowed; filter:saturate(.45);
}
:where(.ms-window,.content) :is(input,select,textarea)[readonly] {
  cursor:default; border-style:dashed;
}
