/* Keep text as live glyphs, not a persistently cached texture enlarged by the canvas. */
.project-map-page .map-world,
.wemeld-workspace #world,
.wemeld-workspace .canvas-node,
.gallery-page .g-canvas-stage,
.publish-page .g-canvas-stage,
.story-home .travelling-reference { will-change:auto; }

/* The matte finish comes from the surface, never from blurring a scaled text layer. */
.project-map-page.wm-secondary .map-node,
.wemeld-workspace.wm-secondary #world .canvas-node,
.story-home :is(.mini-card,.glass-card),
body.wm-secondary :is(.project-card,.profile-card,.recent-project,.credits-card,.wallet-panel,.plan-card,.pack-card,.g-card,.publish-panel,.publish-preview-panel) {
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.story-home,
body.wm-secondary,
.wemeld-workspace.wm-secondary {
  --canvas-grain:url('/workflow-assets/canvas-grain-soft.svg');
  --wm-page-grain:url('/workflow-assets/canvas-grain-soft.svg');
}
.wm-secondary .map-stage { background-image:var(--canvas-grain); }
.wm-secondary .map-viewport { background-image:var(--canvas-grain),radial-gradient(circle,#ffffff0d .7px,transparent .9px); }
.wm-secondary :is(.map-node,.map-details,.map-project-index,.map-dialog) {
  background-image:var(--canvas-grain),linear-gradient(132deg,#272727f5,#191919f5 74%,#242424f5);
}
.project-map-page .map-node-name { color:#f1f1f1;font-weight:600; }
.project-map-page :is(.map-node-top,.map-node-meta) { color:#b8b8b8; }
.project-map-page .map-node.is-dim { opacity:1; border-color:#ffffff15; box-shadow:none; }
.project-map-page .map-node.is-selected { border-color:#eee;box-shadow:0 0 0 1px #ffffff35,0 14px 38px #0005; }
.project-map-page .map-node.is-neighbor { border-color:#ffffff90; }

/* Secondary information stays readable against a textured card. */
body.wm-secondary :is(.project-card-meta,.project-card-footer,.project-change-cover,.project-rename,.recent-project p,.recent-project small,.credits-card small,.wallet-panel small,.plan-card p,.plan-card small,.pack-card p,.pack-card small,.g-card-kicker,.g-card-footer,.publish-help,.publish-local-note) { color:#aaa; }
body.wm-secondary :is(.project-card h2,.recent-project strong,.g-card h2,.g-card h3) { color:#eee;font-weight:500; }
.wemeld-workspace.wm-secondary :is(.node-port-caption,.node-authorship,.node-connection-summary) { color:#aaa;font-size:10px; }
.wemeld-workspace.wm-secondary :is(.canvas-shortcuts>span,.canvas-tools-hint,#canvas-hint) { color:#999; }
.story-home :is(.mini-top>span:first-child,.mini-bottom,.card-bar b,.quiet-pill,.card-caption) { color:#aaa; }
.g-canvas { background-image:var(--canvas-grain),radial-gradient(circle,#ffffff0d .7px,transparent .9px); }
.g-canvas-node::before,.g-dialog { background-image:var(--canvas-grain); }
.gallery-page :is(.g-canvas-node-head,.g-node-body-text),
.publish-page :is(.g-canvas-node-head,.g-node-body-text) { color:#ddd; }
