Moves phases 08–11 execution artifacts from .planning/phases/ to
.planning/milestones/v0.2-phases/ to keep .planning/phases/ clean
for the next milestone.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Make spacing, typography, hover, focus-visible, and active states consistent across the frontend without introducing a component-library rewrite.
Tasks
Preserve legitimate data-driven inline styles:
topic color swatches
quota/progress widths
Teleport dropdown coordinates
tree indentation
Remove arbitrary spacing and decorative inline styles unless they are data-driven layout values with no Tailwind equivalent.
Normalize typography to this app scale:
page title: text-2xl font-semibold
section title: text-lg font-semibold
panel/table heading: text-sm font-semibold
body: text-sm
caption/metadata: text-xs
Replace generic focus:ring-* only patterns on interactive elements with this keyboard focus convention: focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-indigo-500 focus-visible:ring-offset-1.
Ensure buttons, links, card rows, table rows, menu items, and icon actions have coherent hover and active states.
Avoid broad palette changes; preserve the current DocuVault identity while removing one-off visual drift.
Add focused tests or static checks for the agreed invariants where practical.
Acceptance Criteria
No unnecessary px-[...], margin style=, or one-off typography overrides remain.
Interactive elements have hover plus keyboard-visible focus states.
Typography reads as one app scale, not per-component choices.
Data-driven inline styles remain where they carry runtime values.