/* Contextual graph extras, intentionally quiet by default. */
.project-node[data-importance="Critical"]::before,.project-node[data-importance="High"]::before{border-width:2px}
.project-node[data-spatial-zone="later"]:not(.dim){opacity:.94}.project-node[data-spatial-zone="completed"]:not(.dim){opacity:.84}.project-node.dragging:not(.dim){opacity:1}
.project-node.health-stalled{background:color-mix(in srgb,var(--node) 9%,var(--surface,#fff))}.project-node.health-overdue .health-node-badge{outline:2px solid #be715529;outline-offset:2px}
.polish-unread::before{opacity:.55}.polish-unread .polish-recent-dot{box-shadow:0 0 0 3px color-mix(in srgb,var(--node) 12%,transparent)}
.graph-edge.polish-needs-update{stroke-dasharray:5 6}
html[data-motion="full"][data-line-flow="on"] .graph-world:not(.polish-large) .graph-edge.hot:not(.project){stroke-dasharray:8 12;animation:polish-flow 6s linear infinite}
.polish-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:8px 0;padding:8px;border-radius:10px;background:var(--surface-soft,#f5f8fc)}.polish-quick-actions button{border:1px solid var(--line);background:var(--surface,#fff);text-align:center;animation:polish-enter var(--motion-med) backwards;animation-delay:var(--stagger,0ms);font-size:12px!important}
.context-menu{max-height:calc(100dvh - 24px);overflow-y:auto;border-top:3px solid var(--context-accent,var(--nhs))}
.polish-contact-fresh .person-avatar{border-color:#c7e6d4}.polish-contact-aging .person-avatar{border-color:#e5decb}
.calendar-day:hover,.calendar-day:focus-within,.calendar-event:hover{background:var(--surface-soft,#f5f8fc);box-shadow:inset 0 0 0 1px #0e67b322}.calendar-event{transition:background-color var(--motion-fast),box-shadow var(--motion-fast)}
.matrix-wrap .table th{position:sticky;top:0;background:var(--surface,#fff);z-index:1;box-shadow:0 1px 0 var(--line)}.matrix-wrap tr:hover td,.matrix-wrap tr:focus-within td{background:var(--surface-soft,#f6f9fc)}
.empty{animation:polish-fade var(--motion-slow)}.activity-entry{animation:polish-enter var(--motion-med)}
@keyframes polish-flow{to{stroke-dashoffset:-40}}
@media(prefers-reduced-motion:reduce){html .graph-world .graph-edge,html .polish-quick-actions button,html .activity-entry,html .empty{animation:none!important}}

