.engineering-visual{position:relative;min-height:240px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,rgba(125,211,252,.08),rgba(96,165,250,.02)),var(--panel-2);border:1px solid var(--border);border-radius:16px;margin-top:16px;padding:18px}
.engineering-visual svg{width:100%;max-width:560px;height:auto;overflow:visible}
.engineering-visual text{fill:var(--text);font:600 12px var(--sans)}
.engineering-visual .muted-line{stroke:var(--muted);stroke-width:2;fill:none}
.engineering-visual .accent-line{stroke:var(--accent);stroke-width:4;fill:none;stroke-linecap:round;stroke-linejoin:round}
.engineering-visual .component{fill:var(--panel);stroke:var(--accent-2);stroke-width:2}
.trace-demo{width:min(88%,480px);height:var(--trace-width,12px);border-radius:999px;background:linear-gradient(180deg,#ffd166,#b7791f);box-shadow:0 0 0 1px rgba(255,209,102,.35),0 10px 24px rgba(0,0,0,.2);transition:height .25s ease}
.trace-board{width:100%;padding:70px 22px 54px;border-radius:14px;background:#123c2e;display:grid;place-items:center;position:relative}
.trace-board::before,.trace-board::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#d9e2ec;border:5px solid #b7791f;top:24px}
.trace-board::before{left:28px}.trace-board::after{right:28px}
.trace-label{position:absolute;bottom:16px;color:var(--text);font-weight:700}
.thermal-stack{width:min(90%,420px);display:grid;gap:5px;align-items:end}
.thermal-stack div{border-radius:10px;padding:14px;text-align:center;font-weight:700;border:1px solid var(--border)}
.thermal-stack__junction{background:linear-gradient(90deg,var(--accent) var(--thermal-level,35%),rgba(251,113,133,.55) var(--thermal-level,35%))}
.thermal-stack__case{background:var(--panel)}.thermal-stack__sink{background:repeating-linear-gradient(90deg,var(--panel-2) 0 12px,var(--border) 12px 17px)}
.wire-demo{width:var(--wire-size,16px);height:var(--wire-size,16px);min-width:5px;min-height:5px;max-width:44px;max-height:44px;border-radius:50%;background:#d98d45;box-shadow:inset 0 0 0 3px #ffc982,0 0 0 12px rgba(125,211,252,.12);transition:width .25s ease,height .25s ease}
.wire-wrap{display:grid;place-items:center;gap:30px;min-height:180px}.wire-wrap strong{font-size:1.1rem}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}
.detail-grid .card{box-shadow:none}.detail-list{margin:12px 0 0;padding-left:1.3rem;color:var(--muted);line-height:1.65}.detail-list li+li{margin-top:8px}
.source-list{display:grid;gap:9px;margin-top:12px}.source-list a{width:fit-content}
.review-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:.9rem}.review-meta time{color:var(--text);font-weight:650}
.hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}
.hub-card{display:grid;gap:10px;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--panel-2);color:var(--text);text-decoration:none;min-height:150px;transition:transform .18s ease,border-color .18s ease}
.hub-card:hover{transform:translateY(-2px);border-color:var(--accent);text-decoration:none}.hub-card span{color:var(--muted);line-height:1.55}.hub-card strong{font-size:1.2rem}.hub-card__icon{font-family:var(--mono);color:var(--accent);font-size:.82rem;letter-spacing:.08em}
.hub-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.hub-tool{border:1px solid var(--border);border-radius:14px;background:var(--panel-2);padding:16px;text-decoration:none}.hub-tool:hover{border-color:var(--accent);text-decoration:none}.hub-tool strong{display:block;color:var(--text);margin-bottom:6px}.hub-tool span{color:var(--muted);line-height:1.5}
@media(max-width:900px){.detail-grid{grid-template-columns:1fr}.hub-grid,.hub-tools{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.trace-demo,.wire-demo,.hub-card{transition:none}}
