/* Process illustrations: editable HTML/SVG; earlier visuals remain hidden in the page. */
.work-visual { min-width:0; min-height:420px; padding:30px; border:0; background:linear-gradient(145deg,#eef4ff,#f8fbff); box-shadow:none; color:var(--ink); }
.work-visual p { margin:0; }
.work-visual svg { display:block; }
.work-visual .wv-icon { width:100%; height:auto; max-width:120px; }
.wv-note { display:block; margin-top:20px; color:var(--muted); font-size:11px; letter-spacing:.02em; }
.wv-icon-grid { display:grid; grid-template-columns:1fr 1fr; gap:34px 54px; padding:12px 30px; }
.wv-icon-grid > div { display:flex; align-items:center; justify-content:center; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,#dff9fd,transparent 72%); }
.wv-icon-grid .wv-icon { max-width:125px; filter:drop-shadow(0 8px 6px rgba(5,18,41,.05)); }
.wv-paper { padding:28px; border:1px solid #dbe4ef; border-radius:12px; background:#fff; box-shadow:0 12px 30px rgba(5,18,41,.06); }
.wv-document-top { display:flex; align-items:center; gap:8px; padding-bottom:18px; border-bottom:1px solid var(--line); color:var(--muted); font-size:12px; }
.wv-speaker { display:flex; align-items:center; gap:10px; margin-bottom:7px; }
.wv-speaker span { color:var(--muted); font-family:var(--mono); font-size:10px; }
.wv-turn .wv-speaker strong { margin-bottom:0; }
.wv-turn .wv-speaker { justify-content:flex-end; }
.wv-answer .wv-speaker { justify-content:flex-start; }
.wv-recording { width:7px; height:7px; border-radius:50%; background:var(--cyan); }
.wv-turn { margin-top:22px; margin-left:25px; text-align:right; }
.wv-turn strong { display:block; margin-bottom:7px; color:#00869e; font-size:14px; }
.wv-turn p { font-size:18px; line-height:1.5; }
.wv-answer { margin-left:0; margin-right:25px; text-align:left; }
.wv-answer strong { color:var(--ink); }
.wv-answer mark { padding:1px 2px; color:inherit; background:#fff0a3; box-decoration-break:clone; -webkit-box-decoration-break:clone; border-radius:3px 6px 2px 4px; }
.wv-route { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:55px 22px; position:relative; }
.wv-stop { display:flex; flex-direction:column; align-items:center; position:relative; z-index:1; }
.wv-stop .wv-icon { width:72px; margin-bottom:8px; }
.wv-stop span { font-size:14px; font-weight:600; }
.wv-stop:not(:nth-child(3n))::after { content:'→'; position:absolute; right:-19px; top:27px; color:#7898ad; }
.wv-stop:nth-child(3)::after { content:""; position:absolute; width:calc(200% + 44px); height:22px; border-right:1px solid #9eb8c9; border-bottom:1px solid #9eb8c9; border-radius:0 0 12px 0; right:50%; top:104px; }
.wv-stop:nth-child(4)::before { content:"↓"; position:absolute; top:-29px; color:#7898ad; }
.wv-friction { display:flex; align-items:center; gap:12px; padding:14px 16px; margin-top:28px; border-radius:8px; background:#dff9fd; }
.wv-friction > span { font-size:27px; color:#00869e; }
.wv-friction p { font-size:11px; color:#41728a; }
.wv-friction strong { display:block; margin-top:3px; color:var(--ink); font-size:15px; }
.wv-legend { display:flex; gap:24px; font-size:13px; }
.wv-legend span { display:flex; align-items:center; gap:8px; }
.wv-legend i { width:17px; height:3px; background:#00a8c4; }
.wv-legend span:last-child i { background:var(--ink); }
.wv-trend { width:100%; margin:22px 0 15px; font-family:var(--sans); }
.wv-indicators { display:grid; grid-template-columns:repeat(3,1fr); text-align:center; font-size:13px; font-weight:600; padding:17px 0; border-top:1px solid #cddbe9; }
.wv-indicators span + span { border-left:1px solid #cddbe9; }
.wv-evidence-sources { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.wv-evidence-sources > div { background:white; padding:16px 10px; min-height:143px; border-radius:8px; border-top:2px solid #b6dbe7; box-shadow:0 7px 15px rgba(5,18,41,.035); }
.wv-evidence-sources span { display:block; color:#4a6080; font-size:11px; margin-bottom:15px; }
.wv-evidence-sources p { font-size:14px; line-height:1.4; }
.wv-evidence-sources b { color:#009bb6; }
.wv-evidence-sources svg { width:100%; max-height:70px; }
.wv-converge { height:66px; width:100%; }
.wv-hypothesis { padding:22px 24px; background:var(--ink); color:white; border-radius:10px; }
.wv-hypothesis strong { font-size:20px; font-weight:600; color:#8deeff; }
.wv-hypothesis p { margin-top:10px; font-size:16px; line-height:1.5; color:#d4e2f3; }
.wv-knowledge { padding:24px; }
.wv-portal { overflow:hidden; height:245px; border-radius:10px; border:1px solid #d0dfef; background:#eef4ff; }
.wv-portal img { display:block; width:170%; max-width:none; height:auto; transform:translate(-5%,-30%); }
.wv-source-panel { position:relative; margin:-24px 0 0 44px; padding:20px 24px; background:#fff; border:1px solid #dbe4ef; border-radius:10px; box-shadow:0 10px 25px rgba(5,18,41,.08); }
.wv-source-heading { display:flex; align-items:center; gap:8px; font-size:14px; }
.wv-source-dot { width:7px; height:7px; border-radius:50%; background:#00b8d5; }
.wv-source-panel p { font-size:15px; margin-top:12px; }
.wv-source-panel ul { list-style:none; margin:15px 0 0; padding:0; }
.wv-source-panel li { display:flex; align-items:center; gap:12px; border-top:1px solid #edf1f6; padding:9px 0; font-size:13px; }
.wv-source-panel li span { color:#00869e; font-family:var(--mono); font-size:10px; }
.wv-source-panel .wv-note { margin-top:9px; }
.wv-project-heading { display:flex; gap:15px; align-items:center; }
.wv-project-heading strong { font-family:var(--sans); font-size:25px; line-height:1.16; letter-spacing:-.025em; }
.wv-project-check { flex-shrink:0; width:43px; height:43px; display:grid; place-items:center; background:#dff9fd; color:#00869e; border-radius:50%; font-size:24px; }
.wv-project-fields { margin:26px 0 0; }
.wv-project-fields > div { padding:16px 0; border-top:1px solid #e1e8ef; }
.wv-project-fields dt { color:#4a6080; font-size:12px; margin-bottom:5px; }
.wv-project-fields dd { margin:0; font-size:17px; }
.wv-learning-origin { display:flex; align-items:center; gap:20px; padding:22px; background:white; border:1px solid #dbe4ef; border-radius:12px; }
.wv-learning-origin > .wv-icon { width:85px; flex-shrink:0; }
.wv-learning-origin strong { font-size:17px; }
.wv-learning-origin ul { list-style:none; padding:0; margin:12px 0 0; }
.wv-learning-origin li { font-size:13px; line-height:1.9; color:#4a6080; }
.wv-learning-origin li::before { content:'✓'; margin-right:9px; color:#00869e; }
.wv-branch { width:100%; height:65px; }
.wv-learning-network { display:grid; grid-template-columns:repeat(3,1fr); }
.wv-learning-network > div { display:flex; justify-content:center; }
.wv-learning-network .wv-icon { width:85px; }
.wv-learning-caption { text-align:center; font-size:14px; color:#4a6080; padding-top:17px; }
@media(max-width:650px) {
 .work-visual { padding:20px; min-height:350px; }
 .wv-icon-grid { padding:0 15px; gap:26px; }
 .wv-paper { padding:20px; }
 .wv-turn p { font-size:16px; }
 .wv-turn { margin-left:12px; }
 .wv-answer { margin-left:0; margin-right:12px; }
 .wv-source-panel { margin-left:14px; padding:18px; }
 .wv-evidence-sources { gap:7px; }
 .wv-evidence-sources > div { padding:12px 8px; }
 .wv-evidence-sources span { font-size:10px; }
 .wv-evidence-sources p { font-size:12px; }
 .wv-hypothesis { padding:19px; }
 .wv-hypothesis strong { font-size:18px; }
 .wv-indicators { font-size:11px; }
 .wv-route { gap:55px 16px; }
 .wv-stop span { font-size:12px; }
 .wv-stop:not(:nth-child(3n))::after { right:-15px; }
 .wv-stop:nth-child(3)::after { width:calc(200% + 32px); }
 .wv-project-heading strong { font-size:22px; }
 .wv-project-fields dd { font-size:16px; }
 .wv-learning-origin { padding:16px 12px; gap:10px; }
 .wv-learning-origin > .wv-icon { width:64px; }
 .wv-learning-origin strong { font-size:15px; }
 .wv-learning-origin li { font-size:12px; }
}

.wv-icon-grid > div { flex-direction:column; border-radius:0; }
.wv-icon-grid > div > span { margin-top:12px; font-size:15px; font-weight:600; text-align:center; }
.work-deliverable-list { list-style:none; margin:0; padding:0; display:grid; gap:15px; }
.work-deliverable-list li { display:flex; gap:12px; align-items:baseline; color:#d4e2f3; font-size:17px; line-height:1.45; }
.work-deliverable-list li::before { content:"✓"; color:#00c8e8; font-weight:700; }
