/* Scrum Boards — Wave 2 "bulkmove": the multi-select action bar and the selected-
   card states. Owned by the bulkmove stream; loaded from its own index.html seam
   line. Tokens only (--oc-*), never a raw hex — oc-theme.css owns the values and
   the dark flip. */

/* ------------------------------------------------------------- action bar */

.ocsb-bulkbar {
    display: flex;
    align-items: center;
    gap: .5rem;
    flex-wrap: wrap;
    margin-top: .5rem;
    padding: .5rem .625rem;
    border: 1px solid var(--oc-info);
    border-radius: var(--oc-radius-md);
    background: var(--oc-info-bg);
    font-size: var(--oc-fs-sm);
}

.ocsb-bulkbar label {
    font-size: var(--oc-fs-xs);
    color: var(--oc-info-text);
}

.ocsb-bulkbar select {
    font-size: var(--oc-fs-sm);
    padding: .25rem .375rem;
    border: 1px solid var(--oc-border);
    border-radius: var(--oc-radius-md);
    background: var(--oc-surface);
    color: var(--oc-text);
}

.ocsb-bulkbar-count {
    font-weight: 600;
    color: var(--oc-info-text);
}

/* The Assign control is an OcUserPicker (Wave 3 "designsystem"), which drops an
   absolutely positioned result list; give it a positioning context and a width
   that does not collapse inside the flex bar. */
.ocsb-bulkbar-picker {
    display: inline-block;
    position: relative;
    min-width: 14rem;
}

.ocsb-bulkbar-busy {
    font-size: var(--oc-fs-xs);
    color: var(--oc-text-muted);
}

/* ------------------------------------------- selected-card states (both modes)
   The class is applied by the surfaces (integration edit); the look lives here
   so the selection ships fully styled the moment the wiring lands. */

.ocsb-card.is-bulk-selected,
.ocsb-col-card.is-bulk-selected {
    outline: 2px solid var(--oc-info);
    outline-offset: 1px;
}

/* Check badge shown on a selected card.

   BASE = the COLUMN card, which is ordinary themed chrome. The house info pair,
   used solid-badge way round: --oc-info-text is the fill and --oc-info-bg the
   glyph. The pair is certified either way round (contrast is symmetric), and
   this orientation is the one that also separates the chip from the card behind
   it. It used to be --oc-info-text ON --oc-info -- a `-text` token, meant for a
   pale background, sitting on a saturated one -- which measured 1.81:1 in light
   and 1.57:1 in dark: the tick was very nearly invisible in both themes.
     glyph on chip   #084298 on #cfe2ff = 7.13:1 light / #9bd8ff on #162f42 = 8.99:1 dark
     chip on card    #084298 on #ffffff = 9.36:1 light / light chip on dark surface, higher */
.ocsb-bulk-badge {
    position: absolute;
    top: -.375rem;
    right: -.375rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.125rem;
    height: 1.125rem;
    border-radius: var(--oc-radius-pill);
    background: var(--oc-info-text);
    color: var(--oc-info-bg);
    font-size: var(--oc-fs-xs);
    pointer-events: none;
}

/* On the WALL the badge sits on sticky-note paper, which is FROZEN -- identical
   in light and dark. No themed pair can work there: every info token is dark in
   light mode and light in dark mode, while the paper stays bright, so the chip
   would score 8.7:1 in light and 1.4:1 in dark against the very same paper. So
   the badge takes the note's own frozen ink and paper, exactly as the age pill
   and the card reference already do. These are the pairs oc-theme.css certifies:
     ink-0 on top-0 7.45:1   ink-1 7.62:1   ink-2 6.47:1   ink-3 7.86:1   ink-4 6.79:1
   -- for the glyph on the chip AND for the chip on the paper behind it, in BOTH
   themes, because none of the five values flips. (The 2px --oc-info selection
   outline needs no such treatment: outline-offset puts it outside the paper, on
   the wall canvas, which does flip with the theme.) */
.ocsb-card .ocsb-bulk-badge {
    background: var(--ink);
    color: var(--paper-top);
}

/* Columns cards are not absolutely positioned, so give the badge an anchor. */
.ocsb-col-card { position: relative; }
