/* Aurora reusable Workboard primitives. All colors map to theme tokens. */
.halo-visually-hidden { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.halo-metric--operational { min-height:140px; padding:16px 18px; gap:12px; border:1px solid var(--halo-board-line); border-radius:var(--halo-board-card-radius); background:var(--halo-surface); box-shadow:var(--halo-board-shadow-sm); backdrop-filter:none; -webkit-backdrop-filter:none; transition:transform var(--halo-board-motion) var(--halo-board-ease),box-shadow var(--halo-board-motion) var(--halo-board-ease),border-color var(--halo-board-motion) var(--halo-board-ease); }
.halo-metric--operational .halo-metric__head { min-height:26px; gap:8px; padding-right:8px; }
.halo-metric--operational .halo-metric__label { font-size:12.5px; font-weight:500; line-height:1.3; white-space:normal; }
.halo-metric--operational .halo-metric__icon { width:26px; height:26px; border-radius:8px; background:rgb(var(--t1) / .10); }
.halo-metric--operational .halo-metric__icon :is(svg,.mud-icon-root) { width:15px; height:15px; }
.halo-metric__reading { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.halo-metric--operational .halo-metric__value { font-size:28px; font-weight:650; letter-spacing:-.035em; color:var(--halo-board-fg); }
.halo-metric--operational .halo-metric__footer { border:0; padding:0; margin-top:auto; font-size:12px; line-height:1.4; gap:7px; flex-wrap:wrap; color:var(--halo-board-subtle); }
.halo-metric--operational:hover { transform:translateY(-2px); box-shadow:var(--halo-board-shadow-lg); }
.halo-metric--operational.is-selected { border-color:var(--metric-ink); outline:0; box-shadow:0 0 0 3px rgb(var(--t1) / .18); }
.halo-metric--operational .halo-metric__selected { display:none; }
.halo-metric--operational.halo-metric--attention::before { left:auto; right:12px; top:12px; width:6px; height:6px; border-radius:50%; background:var(--metric-ink); animation:halo-board-alert 2s ease-out infinite; }
.halo-metric--operational:focus-visible { outline:2px solid var(--halo-board-accent); outline-offset:4px; }
.halo-metric__sparkline { width:64px; height:26px; flex:none; overflow:visible; }
.halo-metric__sparkline polygon { fill:rgb(var(--t1) / .1); }
.halo-metric__sparkline polyline { fill:none; stroke:var(--metric-ink); stroke-width:1.7; }
.halo-metric__sparkline circle { fill:var(--metric-ink); }
@keyframes halo-board-alert { 0%,100% { box-shadow:0 0 0 2px rgb(var(--t1) / .10); } 50% { box-shadow:0 0 0 4px rgb(var(--t1) / .20); } }
.halo-filter-chip { display:inline-flex; align-items:center; gap:8px; min-height:32px; padding:6px 12px; border:1px solid var(--halo-board-line-strong); border-radius:var(--halo-radius-pill); color:var(--halo-board-muted); background:transparent; font:500 12.5px/1.4 var(--halo-font); white-space:nowrap; cursor:pointer; transition:background var(--halo-board-motion) var(--halo-board-ease); }
.halo-filter-chip__count { font:11.5px var(--halo-font-mono); font-variant-numeric:tabular-nums; opacity:.8; }
.halo-filter-chip[aria-pressed=true] { background:var(--halo-board-fg); border-color:var(--halo-board-fg); color:var(--halo-surface); }
.halo-filter-chip:hover { border-color:var(--halo-board-accent); }
.halo-filter-chip:focus-visible,.halo-owner-pill:focus-visible { outline:2px solid var(--halo-board-accent); outline-offset:2px; }
.halo-search-field--scoped .halo-search-field__control { display:flex; align-items:center; min-height:40px; border:1px solid var(--halo-board-line-strong); border-radius:var(--halo-board-control-radius); background:var(--halo-board-surface-2); transition:box-shadow var(--halo-board-motion) var(--halo-board-ease); }
.halo-search-field--scoped .halo-search-field__control:focus-within { background:var(--halo-surface); border-color:var(--halo-board-accent); box-shadow:0 0 0 4px var(--halo-board-accent-ring); }
.halo-search-field--scoped .halo-input { height:38px; min-height:38px; background:transparent; border:0; box-shadow:none; font-size:12.5px; }
.halo-search-field--scoped .halo-search-field__input { flex:1; width:0; min-width:50px; }
.halo-search-field__scope { border-left:1px solid var(--halo-board-line); flex:0 1 185px; min-width:130px; }
.halo-search-field__scope .halo-field { margin:0; }
.halo-search-field__shortcut { padding:2px 5px; margin-right:10px; font:11px var(--halo-font-mono); color:var(--halo-board-subtle); border:1px solid var(--halo-board-line); border-radius:4px; white-space:nowrap; }
.halo-search-field--scoped .halo-input:focus-visible { outline:none; box-shadow:none; }
.halo-owner-pill { display:inline-flex; align-items:center; gap:6px; max-width:100%; width:fit-content; min-height:29px; padding:3px 8px; border:1px solid var(--halo-board-line-strong); border-radius:var(--halo-radius-pill); background:var(--halo-surface); color:var(--halo-board-muted); font:500 12px/1.3 var(--halo-font); }
.halo-owner-pill--unassigned { border-style:dashed; }
button.halo-owner-pill { cursor:pointer; }
.halo-owner-pill--unassigned svg { color:var(--halo-board-amber); width:16px; height:16px; }
.halo-owner-pill__avatar { display:grid; place-items:center; width:20px; height:20px; flex:none; border-radius:50%; background:var(--halo-board-violet-soft); color:var(--halo-board-violet); font:10px var(--halo-font-mono); }
.halo-status-pill { --pill-ink:var(--halo-board-slate); --pill-bg:var(--halo-board-slate-soft); width:fit-content; min-width:112px; max-width:175px; }
.halo-status-pill--brand { --pill-ink:var(--halo-board-accent); --pill-bg:var(--halo-board-accent-soft); }
.halo-status-pill--info { --pill-ink:var(--halo-board-sky); --pill-bg:var(--halo-board-sky-soft); }
.halo-status-pill--success { --pill-ink:var(--halo-board-green); --pill-bg:var(--halo-board-green-soft); }
.halo-status-pill--warning { --pill-ink:var(--halo-board-amber); --pill-bg:var(--halo-board-amber-soft); }
.halo-status-pill--critical { --pill-ink:var(--halo-board-red); --pill-bg:var(--halo-board-red-soft); }
.halo-status-pill .halo-native-select { min-height:28px; height:28px; padding:0 26px 0 23px; border:1px solid transparent; border-radius:var(--halo-board-tag-radius); background:var(--pill-bg); color:var(--pill-ink); font-size:12px; font-weight:500; box-shadow:none; }
.halo-status-pill .halo-native-select-wrap::before { content:''; position:absolute; top:50%; left:10px; width:5px; height:5px; border-radius:50%; background:var(--pill-ink); transform:translateY(-50%); pointer-events:none; }
.halo-status-pill .halo-native-select__chevron { right:7px; color:var(--pill-ink); }
.halo-status-pill .halo-native-select:focus-visible { outline:2px solid var(--halo-board-accent); outline-offset:2px; }
.halo-sla-age { --age-ink:var(--halo-board-green); display:flex; align-items:center; gap:8px; white-space:nowrap; font-variant-numeric:tabular-nums; }
.halo-sla-age--warning { --age-ink:var(--halo-board-amber); }
.halo-sla-age--critical { --age-ink:var(--halo-board-red); color:var(--age-ink); }
.halo-sla-age__track { width:46px; height:3px; border-radius:3px; background:var(--halo-board-line-strong); overflow:hidden; }
.halo-sla-age__track > span { display:block; height:100%; background:var(--age-ink); }
.halo-density--icons button > span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.halo-density--icons button { min-width:30px; min-height:28px; padding:4px 7px; }
.halo-segmented--accent .halo-segmented__item[aria-pressed=true] { background:var(--halo-board-accent-soft); color:var(--halo-board-accent); box-shadow:none; }
.halo-workboard-grid.halo-operational-grid .mud-table-head .mud-table-cell { height:42px; background:var(--halo-board-surface-2); backdrop-filter:none; font-size:11.5px; letter-spacing:.04em; color:var(--halo-board-subtle); }
.halo-workboard-grid .halo-grid-header > .mud-menu { opacity:0; transition:opacity 150ms var(--halo-board-ease); }
.halo-workboard-grid .mud-table-cell:is(:hover,:focus-within) .halo-grid-header > .mud-menu,.halo-workboard-grid .halo-grid-header.is-active > .mud-menu { opacity:1; }
.halo-workboard-grid .mud-table-body .mud-table-cell { height:auto; padding-top:14px; padding-bottom:14px; font-size:13px; border-bottom:1px solid var(--halo-board-line); }
.halo-workboard-grid.halo-grid--condensed .mud-table-body .mud-table-cell { height:auto; padding-top:8px; padding-bottom:8px; }
.halo-workboard-grid.halo-grid--condensed :is(.halo-record-details small,.halo-record-source small,.halo-record-owner small,.halo-record-attention small,.workboard-legacy-details,.halo-record-ownership,.wb-inline-flag) { display:none; }
.halo-workboard-grid .mud-table-body .mud-table-row.halo-grid-row:hover { background:rgb(var(--halo-violet) / .035) !important; }
.halo-workboard-grid .mud-table-body .mud-table-row.halo-row-selected > .mud-table-cell { background:var(--halo-board-accent-soft) !important; }
.halo-workboard-grid .halo-record-avatar { width:34px; height:34px; border-radius:10px; background:var(--halo-board-violet-soft); color:var(--halo-board-violet); box-shadow:none; font:500 11.5px var(--halo-font-mono); }
.halo-workboard-grid.halo-grid--condensed .halo-record-avatar { width:28px; height:28px; }
.halo-workboard-grid .halo-record-name { font-weight:550; font-size:13px; }
.halo-workboard-grid .halo-record-details small { font:11.5px var(--halo-font-mono); color:var(--halo-board-subtle); }
.halo-workboard-grid .halo-record-source strong { font-size:13px; font-weight:500; }
.halo-workboard-grid .halo-record-source small { font-size:12px; }
.halo-workboard-grid .halo-record-attention { border-left:0; padding-left:0; }
.halo-workboard-grid .halo-record-attention strong { font-weight:500; font-size:13px; }
.halo-workboard-grid .halo-record-attention--owner { color:var(--halo-board-amber); }
.halo-workboard-grid .halo-record-attention small { font-size:12px; }
.halo-workboard-grid .workboard-language { font:11px var(--halo-font-mono); text-transform:uppercase; padding:3px 6px; border-radius:6px; background:var(--halo-board-slate-soft); color:var(--halo-board-slate); }
.halo-workboard-grid .workboard-legacy-details { display:block; margin-top:4px; padding:0; font:10.5px var(--halo-font-mono); color:var(--halo-board-subtle); text-transform:uppercase; white-space:nowrap; background:transparent; border:0; cursor:pointer; }
.halo-workboard-grid .workboard-legacy-details:focus-visible { outline:2px solid var(--halo-board-accent); }
.halo-workboard-grid .halo-col-actions { min-width:112px; }
.halo-workboard-grid .mud-table-body .mud-table-row .halo-col-actions > * { transform:translateX(4px); }
.halo-workboard-grid .mud-table-body .mud-table-row:is(:hover,:focus-within) .halo-col-actions > * { transform:none; }
.halo-workboard-grid .halo-col-actions :is(.halo-icon-button,.halo-row-actions__trigger) { width:30px; height:30px; }
.halo-workboard-grid .mud-checkbox .mud-icon-root { width:18px; height:18px; }
.halo-workboard-grid .mud-table-head .mud-checkbox { color:var(--halo-board-muted); }
.halo-workboard-grid .halo-grid-number { text-align:left; }
.halo-bulk-bar { position:fixed; z-index:1100; left:50%; bottom:24px; transform:translateX(-50%); display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:12px 16px; max-width:calc(100vw - 48px); border:1px solid var(--halo-hairline-strong); border-radius:14px; background:var(--halo-sidebar-surface); color:var(--halo-sidebar-text); box-shadow:var(--halo-shadow-3); animation:halo-bulk-enter 200ms var(--halo-board-ease); }
.halo-bulk-bar strong { font-variant-numeric:tabular-nums; white-space:nowrap; }
.halo-bulk-bar .halo-native-select { background:var(--halo-sidebar-surface); color:var(--halo-sidebar-text); border-color:currentColor; }
.halo-bulk-bar .halo-btn--secondary,.halo-bulk-bar .halo-btn--ghost { color:var(--halo-sidebar-text); border-color:currentColor; }
.halo-bulk-bar .halo-field { min-width:130px; }
@keyframes halo-bulk-enter { from { opacity:0; bottom:16px; } }
@media(hover:none) { .halo-workboard-grid .halo-grid-header > .mud-menu { opacity:1; } }
@media(max-width:560px) { .halo-metric__sparkline { display:none; } .halo-search-field__shortcut { display:none; } .halo-bulk-bar { bottom:90px; width:calc(100vw - 24px); max-width:none; padding:10px; gap:8px; } }
@media(prefers-reduced-motion:reduce) { .halo-metric--operational,.halo-workboard-grid .halo-grid-filter-trigger,.halo-search-field__control { transition:none; } .halo-metric--operational.halo-metric--attention::before,.halo-bulk-bar { animation:none; } .halo-metric--operational:hover { transform:none; } }

.halo-filterbar--workboard .halo-multi-picker__summary { height:40px; min-height:40px; border-radius:var(--halo-board-control-radius); border-color:var(--halo-board-line-strong); font-size:12.5px; }
.halo-filterbar--workboard .halo-multi-picker__value { font-weight:550; color:var(--halo-board-fg); }
.halo-filterbar--workboard .halo-multi-picker__count { min-width:16px; height:16px; font-size:10px; }
@media(max-width:559px) {
 .halo-search-field--scoped .halo-search-field__control { flex-wrap:wrap; }
 .halo-search-field--scoped .halo-search-field__input { width:calc(100% - 40px); flex-basis:calc(100% - 40px); }
 .halo-search-field__scope { flex:1 0 100%; border-left:0; border-top:1px solid var(--halo-board-line); }
 .halo-search-field--scoped .halo-search-field__control > svg { top:20px; }
}

.halo-page-number { width:28px; height:28px; border:1px solid var(--halo-board-line); border-radius:6px; background:var(--halo-surface); color:var(--halo-board-muted); font:12px var(--halo-font-mono); cursor:pointer; }
.halo-page-number[aria-current=page] { background:var(--halo-board-fg); color:var(--halo-surface); border-color:var(--halo-board-fg); }
.halo-page-number:focus-visible { outline:2px solid var(--halo-board-accent); outline-offset:2px; }
.halo-page-number:disabled { opacity:.5; cursor:default; }

.halo-bulk-bar { color-scheme:dark; }
/* Keep Mud's native selection inputs and events; only replace their visible glyph. */
.halo-workboard-grid .mud-checkbox .mud-button-root { position:relative; }
.halo-workboard-grid .mud-checkbox .mud-button-root > svg { opacity:0; width:16px; height:16px; }
.halo-workboard-grid .mud-checkbox .mud-button-root::before { content:''; position:absolute; width:16px; height:16px; top:50%; left:50%; transform:translate(-50%,-50%); border:1px solid var(--halo-board-line-strong); border-radius:5px; background:var(--halo-surface); pointer-events:none; }
.halo-workboard-grid .mud-checkbox .mud-button-root:has(input:checked)::before,.halo-workboard-grid .mud-checkbox .mud-checkbox-null::before { background:var(--halo-action-brand); border-color:var(--halo-action-brand); }
.halo-workboard-grid .mud-checkbox .mud-button-root:has(input:checked)::after { content:''; position:absolute; top:50%; left:50%; width:4px; height:8px; border:solid var(--halo-on-action); border-width:0 1.5px 1.5px 0; transform:translate(-50%,-65%) rotate(45deg); pointer-events:none; }
.halo-workboard-grid .mud-checkbox .mud-checkbox-null::after { content:''; position:absolute; top:50%; left:50%; width:8px; height:2px; background:var(--halo-on-action); transform:translate(-50%,-50%); pointer-events:none; }
.halo-workboard-grid .mud-checkbox .mud-button-root:has(input:focus-visible)::before { outline:2px solid var(--halo-board-accent); outline-offset:2px; }

.halo-owner-pill > span:last-child { white-space:nowrap; }
