/* Live floor: pre-shift checks (live-preshift.js, docs/PRESHIFT_CHECK.md). */
.pre-btn { font-weight: 700; }
.pre-btn.pre-has { background: var(--bad-soft); color: var(--bad-text); border-color: transparent; }
.pre-counts { display: inline-flex; gap: 6px; margin-left: 4px; }
.pre-c { padding: 0 6px; border-radius: 999px; background: rgba(127, 127, 127, 0.15); font-variant-numeric: tabular-nums; }
.pre-c.pre-pass { color: var(--ok-text); } .pre-c.pre-warn { color: var(--warn-text); } .pre-c.pre-fail { color: var(--bad-text); }
.pre-panel { width: min(440px, calc(100vw - 32px)); }
.pre-panel-tools { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 8px 0 4px; }
.pre-panel-tools select { width: auto; max-width: 100%; }
.pre-filt { display: flex; flex-wrap: wrap; gap: 4px; }
.pre-filt .active { background: var(--accent); color: var(--accent-text); }
.pre-note { font-size: 13px; }
.pre-item { padding: 8px 10px; margin: 6px 0; border-radius: 8px; border-left: 4px solid var(--pause); background: rgba(127, 127, 127, 0.07); }
.pre-item.pre-pass { border-left-color: var(--ok); } .pre-item.pre-warn { border-left-color: var(--warn); } .pre-item.pre-fail { border-left-color: var(--bad); }
.pre-item-top { display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.pre-pill { display: inline-flex; gap: 4px; align-items: center; font-size: 12px; font-weight: 700; padding: 1px 8px; border-radius: 999px; background: var(--pause-soft); color: var(--pause-text); }
.pre-pill.pre-pass { background: var(--ok-soft); color: var(--ok-text); } .pre-pill.pre-warn { background: var(--warn-soft); color: var(--warn-text); }
.pre-pill.pre-fail { background: var(--bad-soft); color: var(--bad-text); }
.pre-pill i { font-style: normal; }
.pre-issues { margin: 4px 0 0; padding-left: 18px; font-size: 13px; }
.pre-blocked { font-size: 12px; font-weight: 700; color: var(--bad-text); margin-top: 2px; }
.pre-badge { display: inline-flex; gap: 4px; align-items: center; font-size: 12px; font-weight: 700; margin-top: 4px; padding: 1px 8px; border-radius: 999px; }
.pre-badge.pre-fail { background: var(--bad-soft); color: var(--bad-text); }
.pre-badge.pre-none { background: var(--pause-soft); color: var(--pause-text); }
.pre-badge i { font-style: normal; }
.pre-badge.hidden { display: none; }
.lv-card .pre-badge { box-sizing: border-box; max-width: 100%; justify-self: start; }
.lv-card:has(.pre-badge:not(.hidden)) { grid-template-columns: minmax(0, 1fr); }
