/* Unified interactive hover.
   Every interactive element (list rows, cards, list items, event and focus cards…)
   lifts slightly and gains a full accent ring + soft glow on hover — like the
   Future Projects items. The accent is the element's OWN colour when it has an
   assigned one (hover.js sets --hl from a project/person colour); otherwise it
   falls back to the current theme accent. */
html.v-universe .uhl{
  transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .2s ease,border-color .2s ease,background-color .2s ease;
}
html.v-universe .uhl:hover,
html.v-universe .uhl:focus-visible{
  --uhl:var(--hl,var(--v-accent));
  border-color:color-mix(in srgb,var(--uhl) 48%,var(--line))!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--uhl) 55%,transparent),
             0 5px 14px color-mix(in srgb,var(--uhl) 13%,transparent)!important;
  background:color-mix(in srgb,var(--uhl) 6%,var(--surface))!important;
  transform:translateY(-1px);
  position:relative;z-index:3;
}
/* Keep any coloured indicator/heading legible on the tinted hover background. */
html.v-universe .uhl:hover .main strong,
html.v-universe .uhl:hover>strong{color:var(--text)}
html.v-universe[data-motion=off] .uhl:hover{transform:none}
@media(prefers-reduced-motion:reduce){html.v-universe .uhl:hover{transform:none;transition:none}}
/* Engines without color-mix still get a clear themed ring. */
@supports not (background:color-mix(in srgb,#fff 50%,transparent)){
  html.v-universe .uhl:hover{border-color:var(--v-accent)!important;box-shadow:0 0 0 1px var(--v-accent),0 5px 14px #2a4c6618!important;background:var(--v-wash)!important}
}

/* ---- Task rows ---------------------------------------------------------
   Tasks was the only list without the hover treatment. Its rows are <tr>, and
   a <tr> cannot paint a box-shadow while the table is border-collapse:collapse
   (app.css sets that on .table), so the ring simply would not draw. Switching
   just this table to `separate` with zero spacing keeps the layout identical
   and lets the row take the same ring and lift as every card elsewhere. */
.tasks-table{border-collapse:separate;border-spacing:0}
/* The generic table hover would otherwise fight the accent tint. */
html.v-universe .tasks-table tbody tr.uhl:hover{background:color-mix(in srgb,var(--uhl) 7%,var(--surface))!important}
/* A row is wide and flat, so it lifts less than a card would. */
html.v-universe .tasks-table tbody tr.uhl:hover{transform:translateY(-1px)}
html.v-universe[data-motion=off] .tasks-table tbody tr.uhl:hover{transform:none}
