/* One connected particle composition, with labels outside its moving paths. */
.detail-page .task-experience { overflow: hidden; padding: 25px 25px 22px; min-width: 0; }
.task-caption { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; font: 11px/1.5 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--gold-text); }
.task-caption-note { color: var(--text-dim); font-size: 9px; letter-spacing: .02em; text-align: right; }
.task-universe { position: relative; width: 100%; aspect-ratio: 1.08; margin: 12px 0 2px; isolation: isolate; }
.task-universe > canvas, .task-fallback { position: absolute; inset: 0; width: 100%; height: 100%; }
.task-fallback { display: block; }
.task-universe.scene-ready .task-fallback { visibility: hidden; }
.task-universe > :not(canvas):not(svg) { position: absolute; z-index: 1; pointer-events: none; }
.task-agent-label { left: 0; top: 25%; width: 36%; text-align: center; }
.task-agent-label b { display: block; font-size: 14px; font-weight: 600; line-height: 1.4; }
.task-agent-label span { display: block; font-size: 10px; line-height: 1.5; margin-top: 3px; color: var(--text-dim); }
.task-environment-label { top: 1%; left: 34%; width: 66%; text-align: center; font: 10px/1.5 var(--mono); color: var(--gold-text); }
.task-variant { transform: translateX(-50%); font: 10px/1.5 var(--mono); color: var(--gold-text); background: rgba(255,253,250,.9); padding: 2px 6px; border-radius: 3px; }
.task-demand { left: 60%; top: 31%; }
.task-capacity { left: 81%; top: 57%; }
.task-timing { left: 59%; top: 83%; }
.task-return-label { top: 71%; left: 2%; width: 30%; text-align: center; font: 9px/1.5 var(--mono); color: var(--text-dim); background: rgba(255,253,250,.85); border-radius: 4px; padding: 4px; }
.task-lessons { padding: 18px 0 16px; border-top: 1px solid rgba(176,124,32,.3); border-bottom: 1px solid var(--hairline); }
.detail-page .task-lessons .eyebrow { font-size: 10px; margin-bottom: 7px; }
.detail-page .task-lessons p:last-child { font-size: 17px; line-height: 1.55; margin: 0; letter-spacing: -.015em; }
.detail-page .task-continuity { font-size: 12px; line-height: 1.6; margin: 15px 0 0; color: var(--text-dim); }
@media (max-width: 1000px) and (min-width: 761px) {
 .task-caption { display: block; }
 .task-caption-note { display: block; text-align: left; margin-top: 4px; }
 .task-agent-label b { font-size: 12px; }
 .task-agent-label span { font-size: 9px; }
 .task-environment-label, .task-variant { font-size: 9px; }
}
@media (max-width: 760px) {
 .detail-page .task-experience { padding: 20px; }
 .task-caption { gap: 8px; font-size: 10px; }
 .task-caption-note { max-width: 68px; font-size: 8px; }
 .task-universe { margin-top: 20px; aspect-ratio: .98; }
 .task-agent-label b { font-size: 12px; }
 .task-agent-label span { font-size: 9px; }
 .task-environment-label, .task-variant { font-size: 9px; }
 .task-return-label { font-size: 8px; }
}
