.project-visual{--soft:var(--fg2);--muted:var(--fg2);--accent:var(--gold);
.preview-frame{border-radius:16px;border:1px solid #1B2647;background:linear-gradient(145deg,#141D33,#0E1526);box-shadow:0 24px 100px #080D1A66;position:relative}.preview-frame:before{position:absolute;content:"";height:2px;top:0;left:25px;right:25px;background:linear-gradient(90deg,#66748F,var(--accent),var(--gold));border-radius:2px}.frame-head{display:flex;align-items:center;padding:15px 19px;border-bottom:1px solid var(--line);gap:10px}.logo{width:27px;height:27px;border-radius:7px;background:linear-gradient(140deg,var(--gold),#1B2647);color:var(--fg);display:grid;place-items:center;font-weight:650;font-size:11px}.frame-head strong{font-size:12px;letter-spacing:-.3px}.frame-head small{font:9px ui-monospace,monospace;color:var(--muted);margin-left:auto;display:flex;gap:6px;align-items:center}.signal{width:5px;height:5px;border-radius:50%;background:var(--teal);display:inline-block}.tabbar{padding:0 18px;display:flex;gap:22px;border-bottom:1px solid var(--line)}.tabbar button{background:none;color:var(--soft);border:0;padding:13px 0 10px;font-size:11px;border-bottom:2px solid transparent}.tabbar button[aria-selected=true]{color:var(--gold);border-bottom-color:var(--gold)}.scene{padding:20px;min-height:440px}.query-picker{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}.query-picker button{border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--muted);padding:5px 8px;font-size:10px}.query-picker button[aria-pressed=true]{background:#1B2647;color:var(--gold);border-color:#66748F}.question{font-size:17px;line-height:1.45;letter-spacing:-.3px;margin:0 0 7px}.eyebrow{font:9px ui-monospace,monospace;letter-spacing:1px;text-transform:uppercase;color:var(--soft)}.metricrow{display:flex;justify-content:space-between;gap:16px;align-items:end;margin:17px 0 8px}.bigmetric{font-size:38px;line-height:1.15;letter-spacing:-1.8px;color:var(--gold);font-weight:550}.metricunit{font-size:13px;letter-spacing:0;color:var(--muted)}.delta{font-size:10px;color:var(--red);border:1px solid #66748F;border-radius:5px;background:#1B264766;padding:4px 7px}.chart{display:block;width:100%;height:auto;max-height:143px}.chart text{font-family:inherit;font-size:10px;fill:var(--fg2)}.narrative{margin-top:14px;padding:12px 13px;background:#080D1A8c;border:1px solid var(--line);border-left:2px solid var(--teal);border-radius:6px;font-size:11px;color:var(--fg);line-height:1.7}.narrative b{color:var(--fg);font-weight:550}.trace-foot{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-between;margin-top:13px;font:9px ui-monospace,monospace;color:var(--soft)}.trace-foot .ok{color:var(--teal)}.frame-foot{padding:12px 20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;align-items:center;color:var(--soft);font-size:10px}.frame-foot a{color:var(--gold);font-size:10px}.trace-question{background:#1B2647;border:1px solid #66748F;padding:12px;border-radius:7px;font-size:12px;margin:12px 0 16px}.flow{display:grid;grid-template-columns:1fr;gap:0}.flow-step{position:relative;display:grid;grid-template-columns:30px 1fr;gap:11px;padding-bottom:18px}.flow-step:not(:last-child):before{content:"";position:absolute;top:28px;bottom:0;left:13px;border-left:1px dashed #66748F}.flow-step .number{width:27px;height:27px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;font:10px ui-monospace,monospace;color:var(--soft);background:#0E1526;z-index:1}.flow-step.active .number{color:var(--gold);border-color:var(--gold);box-shadow:0 0 20px rgba(215,172,92,.2)}.flow-step b{font-size:12px;font-weight:500;display:block}.flow-step small{font-size:10px;color:var(--soft);display:block}.flow-step.active b{color:var(--gold)}.replay{border:1px solid var(--line);background:#1B2647;color:var(--gold);border-radius:5px;font-size:10px;padding:7px 12px}.lineage-list{margin-top:16px;display:grid;gap:10px}.lineage-list div{padding:12px;border:1px solid var(--line);border-radius:6px;display:flex;justify-content:space-between;gap:12px;font-size:11px}.lineage-list b{font-weight:500;color:var(--gold)}.lineage-list span{color:var(--muted)}.lineage-list .matched{color:var(--teal)}
}
.project-visual .preview-frame{box-shadow:none;background:var(--s1)}
.project-visual .scene{min-height:420px}
.project-visual .fine,.project-visual .eyebrow,.project-visual .narrative,.project-visual .frame-foot,.project-visual .flow-step small,.project-visual .trace-foot{font-size:12px;color:var(--fg2)}
.project-visual .frame-head{flex-wrap:wrap}
.project-visual .tabbar{gap:12px;flex-wrap:wrap}
.project-visual button{min-height:40px;font:inherit;font-size:13px}
.project-visual .frame-foot{flex-wrap:wrap}
.project-visual .chart text{fill:var(--fg2)}
.project-visual .chart{max-height:none}
