:root{--ink:#243d36;--muted:#66736b;--paper:#f6f5ef;--line:#dcded5;--green:#2e6653;--serif:Georgia,'Times New Roman',serif;--sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 var(--sans)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #327b95;outline-offset:5px}button{color:inherit}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}button{transition:background .2s,transform .2s,box-shadow .2s}button:disabled{opacity:.4;cursor:default}button[hidden],[hidden]{display:none!important}.skip{position:fixed;top:-60px;left:20px;z-index:10;background:white;padding:12px}.skip:focus{top:12px}.topbar{max-width:1440px;margin:auto;padding:27px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:12px;line-height:1.1;font-weight:750;font-size:24px;letter-spacing:3px}.brand:hover{text-decoration:none}.brand svg{width:29px;height:36px;fill:var(--green)}.brand-sub{display:block;font-size:10px;letter-spacing:.5px;font-weight:400;margin-top:7px}.topbar nav{display:flex;gap:30px;font-size:13px}.current{color:var(--green);font-weight:650}.edition{font:10px var(--sans);letter-spacing:1.5px;color:var(--muted)}main{max-width:1280px;margin:auto;padding:0 40px}.intro{padding:57px 0 38px;display:flex;justify-content:space-between;gap:30px;align-items:center}.eyebrow,.tiny-label{font-size:10px;font-weight:650;letter-spacing:1.8px}.eyebrow{margin:0 0 15px}.small-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#648477;margin-right:7px;vertical-align:middle}h1,h2,h3,p{margin-top:0}h1{font-family:var(--serif);font-weight:400;font-size:58px;letter-spacing:-2.4px;line-height:1.06;margin-bottom:19px}em{font-family:var(--serif);font-weight:400;color:#497d68}h1 em{font-style:italic}.intro-copy{font-size:14px;color:var(--muted);line-height:1.7;margin:0}.intro-aside{padding:8px 0 0 35px;border-left:1px solid var(--line);min-width:250px}.section-no{font-size:10px;letter-spacing:1.5px;color:var(--muted)}.intro-aside p{font-family:var(--serif);font-size:24px;line-height:1.4;margin:14px 0 21px}.dark-button{background:var(--ink);color:#fff;border:1px solid var(--ink);padding:10px 17px;border-radius:5px;font-size:12px;display:inline-flex;gap:28px;align-items:center}.dark-button:hover{background:#376454}.explorer{border:1px solid var(--line);border-radius:12px;background:#fffefa;overflow:hidden;box-shadow:0 14px 35px #243d3606}.explorer-bar{padding:16px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.mode-group{display:flex;gap:4px;padding:4px;background:#eeefe8;border-radius:6px}.mode-group button{border:0;background:transparent;padding:7px 17px;font-size:12px;border-radius:4px;color:var(--muted)}.mode-group button[aria-pressed=true]{background:#fffefa;box-shadow:0 1px 5px #0000000c;color:var(--ink);font-weight:600}#explorer-hint{font-size:11px;color:var(--muted)}#explorer-hint span{margin-left:10px}.explorer-body{display:grid;grid-template-columns:1fr 1fr;min-height:572px}.diagram-area{padding:24px 24px 16px;border-right:1px solid var(--line);background:radial-gradient(ellipse at 50% 50%,#edf0e744,transparent 70%)}.diagram-top{display:flex;justify-content:space-between;align-items:center}.tiny-label{color:var(--muted);font-size:9px}.figure-tag{font-size:10px;color:#778178}.vase-shell{position:relative;max-width:530px;aspect-ratio:580/500;margin:5px auto 0}.vase-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.vase-outline{fill:url(#vase-wash);fill-opacity:.36;stroke:#e0e0d4;stroke-width:1}.flow-line{fill:none;stroke:#a3b1a7;stroke-width:1;stroke-dasharray:4 5}.flow-label{font:8px var(--sans);letter-spacing:1.7px;fill:#77877d}.vase-layers{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;padding-top:7%;gap:3.3%}.layer{border:none;position:relative;flex-shrink:0;height:16%;display:flex;justify-content:center;align-items:center;gap:16px;background:var(--fill);color:var(--text);clip-path:polygon(0 0,100% 0,95% 100%,5% 100%);isolation:isolate}.layer.data{--fill:#d8e2cb;--text:#39523e;width:59%}.layer.quality{--fill:#e2e7ce;--text:#526247;width:47%;clip-path:polygon(0 0,100% 0,94% 100%,6% 100%)}.layer.task{--fill:#eed99e;--text:#705820;width:38%;clip-path:polygon(1% 0,99% 0,99% 100%,1% 100%)}.layer.application{--fill:#eed0a7;--text:#795731;width:47%;clip-path:polygon(6% 0,94% 0,100% 100%,0 100%)}.layer.goal{--fill:#e6bdb4;--text:#824a41;width:59%;clip-path:polygon(5% 0,95% 0,100% 100%,0 100%)}.layer strong{display:block;font-size:20px;line-height:1.3;font-weight:580}.layer small{display:block;font-size:9px;letter-spacing:.25px;margin-top:5px}.layer-number{font-size:10px;opacity:.6}.layer-arrow{font-size:14px;opacity:0;width:10px}.layer:hover{filter:brightness(.97);transform:scale(1.025)}.layer[aria-pressed=true]{background:var(--text);color:#fff;filter:drop-shadow(0 5px 4px #243d3620)}.layer[aria-pressed=true] .layer-arrow{opacity:1}.layer:focus-visible{outline:0;box-shadow:inset 0 0 0 5px #173b47}.layer.related{background:var(--text);color:white}.layer.dimmed{opacity:.35}.diagram-caption{text-align:center;font:19px/1.5 var(--serif);margin:5px 0 0}.diagram-caption span{font:11px var(--sans);color:var(--muted)}.detail-area{padding:30px 34px 25px;min-width:0}.detail-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}.layer-kicker{font-size:10px;letter-spacing:1.5px;font-weight:650;color:var(--accent)}.detail-count{color:#a8ada4;font:italic 26px var(--serif)}h2{font:400 35px/1.15 var(--serif);letter-spacing:-.7px;margin-bottom:13px}.detail-intro{color:var(--muted);font-size:13px;line-height:1.7;margin-bottom:19px}.example-label{font-size:9px;letter-spacing:1.3px;font-weight:650;display:block;margin-bottom:10px;color:var(--muted)}.example-tabs{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}.example-tabs button{background:transparent;border:1px solid #dce1d7;border-radius:4px;font-size:11px;padding:5px 10px}.example-tabs button[aria-pressed=true]{background:var(--tint);border-color:var(--accent);color:var(--accent)}.example-card{border:1px solid #e1e4da;background:#fafbf6;border-radius:7px;overflow:hidden}.example-art{height:91px;background:var(--tint);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.example-art svg{width:100%;height:100%;max-width:330px}.example-body{padding:13px 16px}.example-body h3{font-size:13px;margin:0 0 4px;font-weight:600}.example-body p{font-size:12px;line-height:1.65;color:var(--muted);margin:0}.connection{border-top:1px solid var(--line);padding-top:14px;margin-top:18px;display:flex;gap:10px}.connection-icon{color:var(--accent);font-size:20px;line-height:1}.connection p{font-size:11px;line-height:1.6;margin:0;color:var(--muted)}.connection strong{display:block;color:var(--ink);font-weight:600;margin-bottom:3px}.detail-source{font-size:10px;color:var(--muted);margin:12px 0 0}.explorer-footer{border-top:1px solid var(--line);padding:13px 24px;display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--muted)}.tour{display:flex;align-items:center;justify-content:space-between;background:#edf2e9;border-top:1px solid #d9e2d3;padding:17px 24px;gap:24px}.tour p{font-size:12px;margin:3px 0 0;max-width:610px}.tour-controls{display:flex;gap:8px;align-items:center;flex-shrink:0}.outline-button{border:1px solid #becdbf;background:transparent;border-radius:5px;padding:9px 13px;font-size:12px}.text-button{border:0;background:transparent;font-size:11px;padding:10px}.relation-buttons{display:flex;flex-direction:column;gap:8px;margin:20px 0}.relation-buttons button{padding:11px 15px;display:flex;justify-content:space-between;border:1px solid var(--line);background:transparent;border-radius:5px;font-size:12px}.relation-buttons button[aria-pressed=true]{border-color:var(--green);background:#edf3e9}.relation-note{background:#f1f4eb;border-left:3px solid #648477;padding:16px 18px;border-radius:0 5px 5px 0}.relation-note h3{font:23px/1.25 var(--serif);margin-bottom:9px}.relation-note p{font-size:12px;color:var(--muted);margin-bottom:10px}.relation-note p:last-child{margin:0}.context-section{padding:64px 0 55px}.context-heading{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:25px}.context-heading h2{font-size:38px;margin:0}.context-heading>p{font-size:12px;color:var(--muted);line-height:1.9;margin:0;max-width:430px}.scenario-tabs{display:flex;border-bottom:1px solid var(--line);gap:30px}.scenario-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:12px 0;font-size:12px;color:var(--muted)}.scenario-tabs button span{font-size:10px;margin-right:10px;opacity:.65}.scenario-tabs button[aria-pressed=true]{color:var(--green);border-bottom-color:var(--green);font-weight:600}.scenario-summary{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:22px 0 18px}.scenario-summary p{font-size:13px;margin:0;max-width:760px}.illustrative{flex-shrink:0;font-size:9px;letter-spacing:.7px;border:1px solid #d8ded1;padding:4px 8px;border-radius:4px;color:var(--muted)}.scenario-trace{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.trace-card{padding:18px 17px;background:#fffefa;border:1px solid var(--line);border-top:3px solid var(--trace);border-radius:5px;position:relative}.trace-card:not(:last-child):after{content:'→';position:absolute;right:-12px;top:47%;z-index:1;background:var(--paper);color:#849086}.trace-card .tiny-label{font-size:9px;color:var(--trace)}.trace-card h3{font-size:13px;line-height:1.4;margin:9px 0 7px}.trace-card p{font-size:11px;line-height:1.6;color:var(--muted);margin:0}.feedback{margin-top:15px;border:1px dashed #c4cec1;border-radius:5px;padding:12px 17px;display:flex;gap:12px;font-size:12px}.feedback span{font-size:20px;line-height:1.3;color:var(--green)}.feedback p{margin:0;color:var(--muted)}.feedback strong{color:var(--ink);font-weight:600}.research-section{border-top:1px solid var(--line);padding:40px 0 50px;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.research-section h2{font-size:32px}.research-section>div>p:not(.eyebrow){font-size:12px;color:var(--muted);max-width:355px}.paper-links{display:grid;gap:14px}.paper-links>a{padding:16px 0;border-bottom:1px solid var(--line)}.paper-links>a:hover{text-decoration:none}.paper-links>a:hover h3{text-decoration:underline;text-underline-offset:3px}.paper-label{font-size:9px;letter-spacing:1.2px;color:var(--muted);display:flex;justify-content:space-between}.paper-links h3{font-size:14px;font-weight:500;margin:7px 0;line-height:1.5}.paper-links p{font-size:10px;color:var(--muted);margin:0}footer{max-width:1280px;margin:auto;padding:20px 40px 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px;color:var(--muted);font-size:10px}footer p{margin:0;max-width:650px;font-size:9px}footer p a{text-decoration:underline}.footer-brand{font-size:9px;letter-spacing:1.1px;white-space:nowrap}.noscript{padding:25px;text-align:center}#layer-content,#relation-detail,#scenario-content{animation:appear .25s ease}@keyframes appear{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1400px){main{padding:0 20px}.detail-area{padding:32px 40px}.explorer-body{min-height:595px}.vase-shell{max-width:550px}}
@media(max-width:1000px){.edition{display:none}.topbar{padding:22px 30px}main{padding:0 25px}h1{font-size:49px}.intro-aside{min-width:215px;padding-left:22px}.explorer-body{grid-template-columns:1fr 1fr}.detail-area{padding:25px}.diagram-area{padding:22px 14px}.layer strong{font-size:17px}.layer{gap:8px}.layer small{font-size:8px}.diagram-caption{margin-top:30px}.scenario-trace{gap:8px}.trace-card{padding:14px 12px}.research-section{gap:30px}.tour{align-items:flex-start;flex-direction:column;gap:12px}footer{flex-wrap:wrap}}
@media(max-width:720px){main{padding:0 18px}.topbar{padding:18px;gap:15px}.brand{font-size:20px;gap:8px}.brand-sub{font-size:8px}.brand svg{width:24px}.topbar nav{gap:15px;font-size:11px}.topbar nav a:nth-child(2){display:none}.intro{padding:34px 0 27px;display:block}.intro h1{font-size:43px;letter-spacing:-1.7px}.intro-copy{font-size:13px}.desktop-break{display:none}.intro-aside{border:0;padding:0;margin-top:22px;min-width:0}.intro-aside .section-no,.intro-aside p{display:none}.intro-aside .dark-button{padding:9px 14px}.explorer-bar{padding:12px;justify-content:center}#explorer-hint{display:none}.mode-group{width:100%}.mode-group button{flex:1;padding:8px}.explorer-body{grid-template-columns:1fr}.diagram-area{border-right:0;border-bottom:1px solid var(--line);padding:18px 15px 20px}.vase-shell{max-width:420px;margin-top:8px}.diagram-caption{margin:10px 0 0;font-size:18px}.detail-area{padding:24px;min-height:520px}.layer strong{font-size:18px}.layer small{font-size:8px}.layer{gap:12px}.layer-number{font-size:9px}.explorer-footer{padding:13px 18px;flex-direction:column;gap:7px}.context-section{padding:40px 0}.context-heading{display:block;margin-bottom:16px}.context-heading h2{font-size:33px}.context-heading>p{margin-top:16px;font-size:11px}.context-heading>p br{display:none}.scenario-tabs{gap:12px;justify-content:space-between}.scenario-tabs button{font-size:10px;line-height:1.5;text-align:left}.scenario-tabs button span{display:block}.scenario-summary{display:block;padding:18px 0}.scenario-summary p{font-size:12px;margin-bottom:10px}.scenario-trace{grid-template-columns:1fr;gap:8px}.trace-card{display:grid;grid-template-columns:90px 1fr;gap:0 10px;padding:14px}.trace-card .tiny-label{grid-row:span 2;padding-top:3px}.trace-card h3{margin:0 0 4px}.trace-card:not(:last-child):after{right:50%;top:auto;bottom:-15px;content:'↓'}.feedback{font-size:11px}.research-section{grid-template-columns:1fr;gap:10px;padding:32px 0}.research-section h2{font-size:30px}.research-section>div>p:not(.eyebrow){max-width:none}footer{padding:20px 18px}.tour{padding:16px}.tour-controls{flex-wrap:wrap;gap:6px}.tour-controls .dark-button{gap:8px}h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Keep every layer label legible inside the silhouette on narrow screens. */
@media(max-width:720px){.layer-number,.layer-arrow{display:none}.layer{gap:0}.layer strong{font-size:16px;white-space:nowrap}.layer small{font-size:7px;white-space:nowrap;margin-top:3px}}
.skip:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;padding:0}
