/* Data contributions remain readable; interaction highlights their model evidence. */
.edm-section{padding:110px 0;background:#fff;color:#1d1d1f}
.edm-wrap{width:calc(100% - var(--gutter,24px)*2);max-width:1200px;margin-inline:auto}
.edm-heading{max-width:870px;margin-bottom:44px}
.edm-eyebrow{font-size:16px;font-weight:600;color:#6e6e73;margin:0 0 20px}
.edm-heading h2{font-size:clamp(36px,4vw,56px);line-height:1.25;letter-spacing:-.035em}
.edm-heading>p:last-child{font-size:19px;line-height:1.8;color:#6e6e73;margin-top:26px}
.edm-workflow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding:0 0 32px;margin:0;list-style:none}
.edm-workflow li{display:flex;align-items:flex-start;gap:12px;position:relative;min-width:0;margin:0}
.edm-workflow li+li{margin-top:0}
.edm-workflow li+li:before{content:'›';position:absolute;left:-20px;top:6px;font-size:20px;color:#a2a2a7}
.edm-workflow li>span{flex:none;width:27px;height:27px;display:grid;place-items:center;border:1px solid #d7dde3;border-radius:50%;font-size:12px;color:#687888;margin-top:2px}
.edm-workflow h3{font-size:16px;line-height:1.7;font-weight:600;letter-spacing:0}
.edm-workflow p{font-size:12px;color:#737b84;line-height:1.7;margin-top:4px}
.edm-lab{display:grid;grid-template-columns:340px minmax(0,1fr);border:1px solid #e1e6ea;border-radius:28px;overflow:hidden;background:#f7f9fb}
.edm-sources{background:#fff;padding:30px 24px 25px;border-right:1px solid #e1e6ea}
.edm-panel-title{font-size:16px;font-weight:600;line-height:1.5}
.edm-interaction-help{font-size:12px;color:#717a83;line-height:1.7;margin-top:8px;margin-bottom:23px}
.edm-source-options{display:grid;gap:13px}
.edm-source{--source-color:#0071e3;--source-tint:#edf5fe;appearance:none;display:block;width:100%;text-align:left;padding:17px 16px;border:1px solid #e2e6e9;border-radius:15px;background:#fff;color:#1d1d1f;cursor:pointer;font:inherit;transition:background .2s,border-color .2s}
.edm-source-surface{--source-color:#547b5d;--source-tint:#f0f5f0}
.edm-source-validation{--source-color:#9c5c2a;--source-tint:#faf3ed}
.edm-source[aria-pressed=true]{border-color:var(--source-color);background:var(--source-tint)}
.edm-source:hover{border-color:var(--source-color)}
.edm-source-heading{display:flex;align-items:center;gap:10px}
.edm-source-heading svg{width:25px;height:25px;flex:none;color:var(--source-color)}
.edm-source-heading strong{font-size:16px;font-weight:600;line-height:1.5}
.edm-source-arrow{margin-left:auto;font-size:17px;color:var(--source-color);opacity:0}
.edm-source[aria-pressed=true] .edm-source-arrow{opacity:1}
.edm-source-input{display:block;font-size:13px;line-height:1.8;color:#6e6e73;margin-top:10px}
.edm-source-use{display:block;font-size:13px;line-height:1.8;color:var(--source-color);margin-top:4px;font-weight:500}
.edm-model-panel{min-width:0;display:flex;flex-direction:column;padding:30px 30px 24px}
.edm-model-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}
.edm-model-heading>span{font-size:12px;color:#73808c;line-height:1.6}
.edm-model-scene{position:relative;width:100%;margin-top:20px;flex:1;display:flex;align-items:center;min-height:385px}
.edm-diagram{width:100%;height:auto;display:block;overflow:visible}
.edm-diagram path,.edm-diagram circle{vector-effect:non-scaling-stroke}
.edm-highlight{opacity:0;transition:opacity .25s ease;pointer-events:none}
.edm-lab[data-source=surface] .edm-highlight-surface,.edm-lab[data-source=physics] .edm-highlight-physics,.edm-lab[data-source=validation] .edm-highlight-validation{opacity:1}
.edm-model-label{--label-color:#547b5d;position:absolute;display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #dbe2e7;border-radius:7px;background:#fffffff2;color:#566370;font-size:12px;line-height:1.4;white-space:nowrap;transition:border-color .2s,color .2s;box-shadow:0 2px 8px #21374605}
.edm-model-label i{width:5px;height:5px;border-radius:50%;background:var(--label-color);flex:none}
.edm-label-surface{left:43%;top:7%}
.edm-label-physics{--label-color:#0071e3;left:0;top:66%}
.edm-label-validation{--label-color:#9c5c2a;right:0;top:45%}
.edm-lab[data-source=surface] .edm-label-surface,.edm-lab[data-source=physics] .edm-label-physics,.edm-lab[data-source=validation] .edm-label-validation{color:var(--label-color);border-color:var(--label-color);font-weight:500}
.edm-current{border-top:1px solid #dce3e9;padding-top:19px;margin-top:8px;min-height:122px}
.edm-current [hidden]{display:none}
.edm-current-name{font-size:13px;font-weight:600;color:#0071e3;margin-bottom:8px}
.edm-lab[data-source=surface] .edm-current-name{color:#547b5d}
.edm-lab[data-source=validation] .edm-current-name{color:#9c5c2a}
.edm-current-name+p{font-size:14px;line-height:1.85;color:#58636e;max-width:680px}
.edm-model-value{display:grid;grid-template-columns:1fr 1fr;gap:56px;padding-top:33px}
.edm-model-value h3{font-size:18px;line-height:1.5;letter-spacing:0}
.edm-model-value p{font-size:15px;line-height:1.85;color:#6e6e73;margin-top:10px}
.edm-note{font-size:12px;line-height:1.8;color:#7b7b83;margin-top:27px;max-width:1050px}
.edm-lab button:focus-visible{outline:3px solid #0071e3;outline-offset:3px}
@media(max-width:1020px){.edm-lab{grid-template-columns:300px minmax(0,1fr)}.edm-sources{padding:25px 20px}.edm-model-panel{padding:25px 20px 22px}.edm-model-heading{display:block}.edm-model-heading>span{display:block;margin-top:5px}.edm-model-scene{min-height:320px}.edm-source{padding:15px 13px}.edm-model-label{font-size:11px}.edm-label-surface{left:34%;top:17%}.edm-label-validation{top:46%}.edm-label-physics{top:66%}.edm-current{min-height:162px}.edm-workflow{gap:22px}.edm-workflow p{font-size:11px}}
@media(max-width:760px){
 .edm-section{padding:76px 0}.edm-heading{margin-bottom:30px}.edm-heading h2{font-size:38px}.edm-eyebrow{font-size:14px;margin-bottom:16px}.edm-heading>p:last-child{font-size:16px;margin-top:21px}
 .edm-workflow{grid-template-columns:1fr 1fr;gap:22px 25px;padding-bottom:27px}.edm-workflow li+li:before{display:none}.edm-workflow h3{font-size:15px}.edm-workflow p{font-size:12px;margin-top:1px}.edm-workflow li>span{width:24px;height:24px;font-size:11px}
 .edm-lab{grid-template-columns:1fr;border-radius:24px}.edm-sources{padding:24px;border-right:0;border-bottom:1px solid #e1e6ea}.edm-interaction-help{margin-bottom:17px}.edm-source-options{gap:10px}.edm-source{padding:15px 17px}.edm-source-input{margin-top:7px}.edm-source-use{margin-top:2px}.edm-model-panel{padding:24px}.edm-model-heading{display:flex}.edm-model-heading>span{margin-top:0}.edm-model-scene{min-height:0;margin-top:23px}.edm-label-surface{top:6%;left:45%}.edm-label-validation{top:43%}.edm-label-physics{top:65%}.edm-current{min-height:132px;margin-top:18px}.edm-current-name+p{font-size:14px}.edm-model-value{gap:26px;padding-top:27px}.edm-model-value h3{font-size:17px}.edm-model-value p{font-size:14px}
}
@media(max-width:460px){
 .edm-wrap{width:calc(100% - 40px)}.edm-section{padding:62px 0}.edm-heading h2{font-size:34px}.edm-heading>p:last-child{font-size:15px;line-height:1.85}.edm-workflow{gap:20px 14px}.edm-workflow li{gap:8px}.edm-workflow li>span{width:21px;height:21px;margin-top:3px}.edm-workflow p{font-size:11px}.edm-lab{border-radius:20px}.edm-sources{padding:22px 16px}.edm-source-heading strong{font-size:16px}.edm-source{padding:13px 14px}.edm-source-input,.edm-source-use{font-size:13px}.edm-panel-title{font-size:15px}.edm-model-panel{padding:22px 16px 20px}.edm-model-heading{display:block}.edm-model-heading>span{font-size:11px;margin-top:4px}.edm-model-scene{margin-top:24px;min-height:248px}.edm-model-label{font-size:12px;padding:5px 6px;gap:4px}.edm-label-surface{top:7%;left:36%}.edm-label-validation{top:40%;right:0}.edm-label-physics{top:71%;left:0}.edm-current{margin-top:6px;padding-top:16px;min-height:146px}.edm-current-name{font-size:12px}.edm-current-name+p{font-size:14px}.edm-model-value{grid-template-columns:1fr;gap:23px}.edm-model-value p{font-size:14px;margin-top:7px}.edm-note{font-size:12px;margin-top:21px}
}
@media(prefers-reduced-motion:reduce){.edm-section *,.edm-section *::before,.edm-section *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
