Molecule

Handover line

A line in the shift brief: something that moved while you were away. 35 instances across 7 screens, and it stands nowhere else.

It is a different component and not a variant, and the reason is the anatomy rule rather than the drawing. It has four zones where the queue row has seven. No severity and no cost: a pointer in a handover is not a thing to triage, it is a thing that already happened.

Anatomy

dark, shipped

WhenWhat movedState 
04:14C-4417 escalated to S. Vargaescalated2h
05:02C-4501 ruled and fileddecided1h

light, the pair

WhenWhat movedState 
04:14C-4417 escalated to S. Vargaescalated2h
05:02C-4501 ruled and fileddecided1h

Behaviour at width

Below 1280, the system's one point (Width), the gap drops to --space-1 and the padding to --space-3. The four tracks do not collapse: --row-tracks-moved has no narrow value, because the shift brief is not rendered at that width at all. Above the point the side padding is the same clamp(--space-3, 0.31rem + 0.31vw, --space-4) the queue row carries, written again because this is a different component. It was a query at 1560 until stage 10, and it gives four pixels of padding back to the content continuously now rather than once at a number nobody had named.

Variants

AxisValueUsesThe rule
head.row-moved--head5the column names. It is a line and it is not a record, which is why it is a variant
listno values–Prohibited. There is one list of things that moved and there will not be a second: a shift brief is one shift
stateno values–Nothing here is selected, hovered or opened. See the state block, which is the whole of what separates this from row

The 132px, 1fr, 116px, 44px track set is --row-tracks-moved in tokens.css. It was one of the two values the second instrument at step 1 found declared and recorded nowhere.

When to use it

At the top of a shift, once. The brief answers one question: what happened while I was not here. Rasha reads it, decides whether anything needs picking up, and goes to the queue.

Where she meets it. Twice a day at most, and never in the middle of ruling. That is the whole argument for it having no states: a brief that could be clicked would invite her to work it, and the work is in the queue.

Rule and anti-rule

Do

04:14C-4417 escalated to S. Vargaescalated2h

Four zones, read left to right as a sentence: at this time, this happened, it ended here, that long ago.

Do not

Never as a link. It looks harmless and it says the shift can be re-opened. If a line in a brief needs to lead somewhere, the thing it leads to is a case, and the case is reached from the queue.

States

Two, and the first reading of this component had them wrong. Every one of the thirty instances is an a with an href: a line in a handover names a case, and the case opens. Hover and active are the same two tokens the queue row reads.

What survived the correction is the smaller half of the original claim. There is no SELECTED state: a brief is read in one pass and nothing in it is being ruled on. That is still the difference from row that matters most, and it is a real one; "point at these and nothing happens" was not.

dark, shipped

WhenWhat movedState 
04:14C-4417 escalated to S. Vargaescalated2h
05:02C-4501 ruled and fileddecided1h

light, the pair

WhenWhat movedState 
04:14C-4417 escalated to S. Vargaescalated2h
05:02C-4501 ruled and fileddecided1h

A queue row is decided; a line in a handover is read, and then opened if she wants the case behind it. So it hovers like a row and it never carries a selected state, because the brief is a record of what somebody else already did and there is nothing in it to rule on. The sentence that stood here said no hover and no href, and the markup on three coloured screens says otherwise on eighteen instances.

Motion

Response, 120ms, the browser's own ease. What moves is a ground, a line in a handover. Named one by one rather than as all, because all animates what nobody ordered and drags the layout properties in behind it. Never a size and never a position: those make the browser recalculate the layout of the page on every frame. Under prefers-reduced-motion it is 1ms, and this component does nothing to make that happen: it reads var(--dur-fast) and the token is redefined once. Full reasoning on Motion.

What it reads, and where it stands

RoleSurfaceWhere on the componentDarkLight
--text-secondaryink 4.5:1the head, and the elapsed time
--line-separatorline, exemptthe rule between lines, through --rule-hair

Copy this

<div class="row-moved"> <span>04:14</span> <span>C-4417 escalated to S. Varga</span> <span class="states"><i class="state">escalated</i></span> <span class="when">2h</span> </div>

Where it stands