.ct-comparison{padding:28px 0 30px;border-top:1px solid #334762;margin:20px 0 30px}
.ct-comparison h3{font-size:27px;line-height:1.6;margin-bottom:24px}
.ct-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}
.ct-comparison-grid h4{font-size:21px;font-weight:normal;margin-bottom:10px}
.ct-comparison svg{width:100%;height:auto;display:block}
.ct-comparison svg text{font-family:'Times New Roman','Yu Mincho',serif;font-size:17px;fill:#c1d2e6}
.ct-xray{stroke:#26cdd9;stroke-width:1;fill:none;opacity:.65}
.ct-visible{stroke:#c3a7ea;stroke-width:1;fill:none}
.ct-specimen{fill:#0091fc20;stroke:#9cb5d0;stroke-width:1}
.ct-fzp{stroke:#26cdd9;fill:none;stroke-width:1}
.ct-screen{fill:#7bebdd44;stroke:#7bebdd}
.ct-camera{fill:#b8a2e433;stroke:#b8a2e4}
.ct-optical{fill:none;stroke:#b8a2e4}
.ct-comparison p{font-size:18px;line-height:1.9}
.ct-context{margin-top:23px}

.mft-explorer{margin:24px 0 35px;scroll-margin-top:35px}
.mft-example{font-size:17px;line-height:1.8;margin-bottom:21px;color:#b8cddd}
.mft-method-purpose{max-width:960px;margin:26px 0 30px}
.mft-method-purpose h4{font-size:24px;line-height:1.6;margin-bottom:12px}
.mft-method-purpose p{font-size:18px;line-height:1.9;color:#bacbde}
.mft-step-controls{display:flex;flex-wrap:wrap;gap:9px 20px;align-items:center;margin-bottom:23px}
.mft-step-controls button{background:none;color:inherit;border:0;border-bottom:1px solid transparent;padding:8px 0;font-size:17px;line-height:1.6}
.mft-step-controls button[aria-pressed=true]:not(.mft-play){border-color:#55e4d2;color:#7bebdd}
.mft-step-controls button span:first-child{font-size:14px;opacity:.65}
.mft-step-controls .mft-play{margin-left:auto;font-size:16px}
.mft-view-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.mft-panel{min-width:0;border-top:1px solid #354966;padding-top:16px;background:#0d1625}
.mft-panel h4{font-size:21px;font-weight:500;padding:0 16px;line-height:1.7}
.mft-view{display:block;width:100%;height:auto;overflow:visible}
.mft-result-viewport{position:relative}
.mft-inline{position:absolute;inset:10px 16px;display:none;flex-direction:column;justify-content:center}
.mft-inline-list{display:grid;gap:13px}
.mft-inline-list .mft-node-values{display:grid;grid-template-columns:35px 1fr;gap:8px;align-items:center;padding:8px 10px;font-size:17px}
.mft-inline-list .mft-node-values strong{margin:0;font-size:16px}
.mft-inline-list .mft-node-values>span{gap:5px}
.mft-d-title,.mft-b-title,.mft-product-title,.mft-calc-caption{display:none}
.mft-explorer:is([data-step="2"],[data-step="3"],[data-step="4"]) .mft-view-map{visibility:hidden}
.mft-explorer:is([data-step="2"],[data-step="3"],[data-step="4"]) :is(.mft-map-title,.mft-map-caption){display:none}
.mft-explorer:is([data-step="2"],[data-step="3"],[data-step="4"]) .mft-calc-caption{display:inline}
.mft-explorer[data-step="2"] .mft-d-title,.mft-explorer[data-step="3"] .mft-b-title,.mft-explorer[data-step="4"] .mft-product-title{display:block}
.mft-explorer[data-step="2"] .mft-inline-d,.mft-explorer[data-step="3"] .mft-inline-b,.mft-explorer[data-step="4"] .mft-inline-product{display:flex}
.mft-inline-running{text-align:center;font-variant-numeric:tabular-nums;font-size:19px;line-height:1.9}
.mft-inline-running>strong{font-size:24px;color:#a8dfed}
.mft-inline-running p{margin-top:14px;font-size:18px;line-height:1.8}
.mft-inline-result{display:none;flex-direction:column;gap:16px;text-align:center;line-height:1.6;font-size:18px}
.mft-inline-result>strong{font-family:'Cambria Math','Times New Roman',serif;font-size:43px;font-weight:400;color:#7bebdd}
.mft-explorer[data-term="4"] .mft-inline-running{display:none}
.mft-explorer[data-term="4"] .mft-inline-result{display:flex}
.mft-explorer[data-step="4"]:not([data-term="4"]) :is([data-mft-sum],.mft-strain-vector){visibility:hidden}
.mft-panel figcaption{font-size:15px;line-height:1.8;padding:0 15px 18px;color:#a8bbd0}
.mft-volume-box{fill:#0091fc08;stroke:#7085a0;stroke-width:.7}
.mft-particle{fill:var(--particle-colour);fill-opacity:.17;stroke:var(--particle-colour);stroke-width:1}
.mft-centroid{fill:var(--particle-colour)}
.mft-particle-id{fill:var(--particle-colour);font-size:18px}
.mft-reference-dot{fill:none;stroke:#a0b1c8;stroke-width:1}
.mft-displacement{fill:none;stroke:#dcd8f1;stroke-width:1}
.mft-reference-dot,.mft-displacement{opacity:0}
.mft-selected-tetra{fill:none;stroke:#7bebdd;stroke-width:1;opacity:0}
.mft-explorer:is([data-step="2"],[data-step="3"],[data-step="4"],[data-step="5"]) :is(.mft-reference-dot,.mft-displacement){opacity:1}
.mft-explorer:is([data-step="3"],[data-step="4"],[data-step="5"]) .mft-selected-tetra{opacity:.8}
.mft-prediction{stroke:#b8a2e4;fill:none;stroke-dasharray:3 3;stroke-width:1.2}
.mft-prediction-line{stroke:#b8a2e4;stroke-dasharray:2 3;fill:none}
.mft-prediction,.mft-prediction-line{display:none}
.mft-explorer[data-step="1"] :is(.mft-prediction,.mft-prediction-line){display:block}
.mft-explorer[data-step="1"] .mft-plot-marker:not([data-id=P8]){opacity:.3}
.mft-strain-cell{stroke:#b5c8dd;stroke-opacity:.3;stroke-width:.5;opacity:.2;fill-opacity:0;transition:fill-opacity .55s ease,opacity .55s ease;transition-delay:var(--cell-delay)}
.mft-explorer[data-step="5"] .mft-strain-cell{opacity:.94;fill-opacity:1}
.mft-explorer[data-step="5"] .mft-selected-cell{stroke:#edfff9;stroke-width:2.1;stroke-opacity:1}
.mft-map-probe{fill:#eafff7;opacity:0}
.mft-explorer[data-step="5"] .mft-map-probe{opacity:1}
.mft-loading-axis{stroke:#bfd0df;stroke-width:.9;fill:none}
.mft-axis-label{font-size:18px;fill:#b7c7dc}
.mft-scale{display:flex;align-items:center;justify-content:flex-end;gap:12px;font-size:16px;line-height:1.6;margin:16px 0 23px;opacity:.4}
.mft-scale i{display:block;width:150px;height:7px;background:linear-gradient(90deg,#134591,#7bebdd)}
.mft-explorer[data-step="5"] .mft-scale{opacity:1}
.mft-phase-copies{display:grid;min-height:90px}
.mft-phase-copy{grid-area:1/1;font-size:18px;line-height:1.9!important;margin:0!important}
.mft-ready .mft-phase-copy:not(.is-active){visibility:hidden;pointer-events:none}
.mft-matched-pair{font-size:17px;color:#bdd1df;line-height:1.8;margin:16px 0}
.mft-calculation{margin:28px 0;padding:24px 0;border-top:1px solid #526a8559;border-bottom:1px solid #526a8559}
.mft-ready[data-step="0"] .mft-calculation,.mft-ready[data-step="1"] .mft-calculation{display:none}
.mft-calculation h4{font-size:22px;line-height:1.6;margin:0 0 7px}
.mft-column-key{font-size:17px;line-height:1.7;color:#b8cadf;margin:8px 0 14px}
.mft-node-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 20px}
.mft-node-values{border-left:2px solid var(--particle-colour);padding:7px 11px;min-width:0;font-size:18px;font-variant-numeric:tabular-nums}
.mft-node-values strong{display:block;font-size:17px;font-weight:500;color:var(--particle-colour);margin-bottom:7px}
.mft-node-values>span{display:flex;justify-content:space-between;gap:7px;white-space:nowrap}
.mft-b-block{margin-top:24px}
.mft-ready[data-step="2"] .mft-b-block{display:none}
.mft-w{color:#e5f9f7}
.mft-product-block{margin-top:24px}
.mft-ready:is([data-step="2"],[data-step="3"]) .mft-product-block{display:none}
.mft-product-heading{display:flex;align-items:center;gap:20px;font-size:17px;color:#c3d9e4}
.mft-product-heading math{font-size:28px;color:#e0fff4}
.mft-products{font-family:'Cambria Math','Times New Roman',serif;font-size:21px;line-height:2.1;margin:14px 0;overflow-wrap:anywhere}
.mft-product-term{color:var(--particle-colour);opacity:.45;transition:opacity .25s}
.mft-explorer[data-term="0"] [data-node="0"],.mft-explorer[data-term="1"] [data-node="1"],.mft-explorer[data-term="2"] [data-node="2"],.mft-explorer[data-term="3"] [data-node="3"],.mft-explorer[data-term="4"] .mft-product-term{opacity:1}
.mft-explorer[data-step="4"][data-term="0"] .mft-node-values[data-node="0"],.mft-explorer[data-step="4"][data-term="1"] .mft-node-values[data-node="1"],.mft-explorer[data-step="4"][data-term="2"] .mft-node-values[data-node="2"],.mft-explorer[data-step="4"][data-term="3"] .mft-node-values[data-node="3"]{background:#7bebdd13}
.mft-strain-vector{display:flex;flex-wrap:wrap;gap:8px 24px;color:#b8cbdc;font-size:17px;font-variant-numeric:tabular-nums;line-height:1.8}
.mft-vector-axial{color:#7bebdd}
.mft-map-link{font-size:18px;line-height:1.8;margin:18px 0 0;color:#d3ebe7}
.mft-map-link strong{color:#7bebdd}
.mft-ready:not([data-step="5"]) .mft-map-link{display:none}
.mft-meaning{border-left:2px solid #26cdd9;padding:4px 0 4px 23px;margin:28px 0;max-width:62em}
.mft-meaning h4{font-size:23px;font-weight:500;margin:0 0 12px;line-height:1.6}
.mft-meaning p{font-size:18px;line-height:1.95;margin-bottom:17px}
.mft-meaning a{font-size:18px;text-decoration:underline;text-underline-offset:5px}
.mft-mathematics{border-top:1px solid #8095ae40;border-bottom:1px solid #8095ae40;margin:28px 0;padding:18px 0}
.mft-mathematics summary{font-size:18px;cursor:pointer;color:#8cdddd;line-height:1.7}
.mft-math-content{padding:24px 0 8px;max-width:1000px}
.mft-math-content h4{font-size:23px;margin:25px 0 16px;line-height:1.6}
.mft-math-content h4:first-child{margin-top:0}
.mft-math-content p{font-size:18px;line-height:1.9;margin:16px 0;color:#bacbde}
.mft-map-equation math{font-size:28px}
@media(max-width:800px){.mft-view-grid{grid-template-columns:1fr 1fr;gap:14px}.mft-panel-map{grid-column:1/-1;max-width:440px;width:100%;justify-self:center}.mft-scale{justify-content:center;flex-wrap:wrap}.mft-node-grid{grid-template-columns:1fr 1fr;gap:14px}.ct-comparison-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:600px){.mft-panel h4{font-size:18px;padding:0 10px}.mft-panel figcaption{font-size:14px;padding:0 10px 13px}.mft-particle-id{font-size:22px}.mft-step-controls{gap:6px 16px}.mft-step-controls button{font-size:17px}.mft-step-controls .mft-play{margin-left:0}.mft-node-values{font-size:16px;padding-left:8px;padding-right:7px}.mft-node-values>span{gap:3px}.mft-node-grid{gap:14px 8px}.mft-products{font-size:20px}.mft-meaning{padding-left:16px}.mft-scale{font-size:15px}.mft-scale i{width:100px}}
@media(prefers-reduced-motion:reduce){.mft-strain-cell,.mft-product-term{transition:none}.mft-play{display:none}}
@media(max-width:480px){.mft-view-grid,.mft-node-grid{grid-template-columns:1fr}.mft-panel-map{grid-column:auto}.mft-node-values{font-size:18px}.mft-products [data-mft-terms]{display:flex;flex-direction:column;gap:3px}.mft-product-term{display:block}.mft-inline-list .mft-node-values{font-size:17px}}
