/* HUBMAT Visual — Ensino Médio · Bloco 300 */
.em3-controls{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}.em3-controls .btn{flex:1 1 96px}
.em3-readout{text-align:center;font-size:clamp(21px,4vw,34px);font-weight:850;margin:10px 0}
.em3-table{width:100%;max-width:680px;margin:auto;border-collapse:collapse;background:#fff}.em3-table th,.em3-table td{padding:8px;border:1px solid var(--line);text-align:center}
.em3-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.em3-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;text-align:center}.em3-card strong{display:block;font-size:25px}
.em3-plane svg,.em3-wave svg,.em3-shape svg{width:100%;height:auto;display:block;max-width:680px;margin:auto}.em3-axis{stroke:#607584;stroke-width:2}.em3-gridline{stroke:#d6e0d8;stroke-width:1}.em3-line-a{stroke:#235f9b;stroke-width:4}.em3-line-b{stroke:#a4481a;stroke-width:4}.em3-point{fill:#f2c257;stroke:#795811;stroke-width:2}
.em3-bars{display:flex;align-items:end;gap:8px;height:220px;padding:12px;border-left:2px solid #607584;border-bottom:2px solid #607584}.em3-bar{flex:1;text-align:center}.em3-bar b{display:block;background:#bcd6ed;border:2px solid #235f9b;border-bottom:0;border-radius:6px 6px 0 0;min-height:3px}.em3-bar span{font-size:11px}
.em3-tree{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.em3-chip{background:#fff;border:1px solid var(--line);border-radius:9px;padding:8px 11px;font-weight:750}.em3-chip.on{background:var(--gold);border-color:#8e671b}
.em3-flow{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.em3-flow span{background:#fff;border:1px solid var(--line);border-radius:9px;padding:8px 10px;font-weight:700}.em3-flow .current{background:var(--gold);border-color:#8e671b}
.em3-measure{height:18px;background:#eef3ed;border:1px solid #9eb0a2;position:relative;margin:48px 20px 20px}.em3-marker{position:absolute;top:-9px;width:3px;height:36px;background:#235f9b}
@media(max-width:600px){.em3-grid{grid-template-columns:1fr 1fr}.em3-controls .btn{flex-basis:42%}}
.em3-wave{max-width:720px;margin:0 auto 14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px}.em3-wave svg{width:100%;height:auto;display:block}.em3-wave-path{stroke:#235f9b;stroke-width:4;stroke-linecap:round}.em3-amplitude-line{stroke:#d7b35a;stroke-width:1.5;stroke-dasharray:6 6}.em3-phase-axis{stroke:#146348;stroke-dasharray:5 5}.em3-current-guide{stroke:#146348;stroke-width:2;stroke-dasharray:4 4}.em3-wave-label{font-size:12px;fill:#50665b}.em3-wave .em3-point{fill:#f2c257;stroke:#795811;stroke-width:3}

.em3-model-path{stroke:#235f9b;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.em3-target-line{stroke:#a4481a;stroke-width:2;stroke-dasharray:7 6}.em3-plane{max-width:720px;margin:0 auto 14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px}.em3-plane svg{width:100%;height:auto;display:block}

.em3-exp-dot{fill:#235f9b;stroke:#fff;stroke-width:1.5}.em3-log-scale{display:grid;grid-template-columns:repeat(13,minmax(42px,1fr));gap:6px;overflow-x:auto;padding:10px 4px 14px;margin:0 auto 14px;max-width:760px}.em3-log-scale span{min-width:42px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 5px;text-align:center}.em3-log-scale span.current{background:var(--gold);border-color:#8e671b;box-shadow:0 0 0 2px rgba(142,103,27,.12)}.em3-log-scale b,.em3-log-scale small{display:block}.em3-log-scale small{font-size:11px;color:#50665b;margin-top:3px}

.em3-shape{max-width:720px;margin:0 auto 14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px}.em3-shape svg{width:100%;height:auto;display:block}.em3-area-a{fill:#d9e8f5}.em3-area-b{fill:#f7dda0}.em3-shape-outline{stroke:#426251;stroke-width:3}.em3-cut-line{stroke:#146348;stroke-width:4;stroke-dasharray:6 5}.em3-shape-label{font-size:16px;font-weight:800;fill:#15324b}.em3-triangle-fill{fill:#e6efdf;stroke:#146348;stroke-width:4;stroke-linejoin:round}

.em3-solid-face{fill:#e6efdf;stroke:#426251;stroke-width:2}.em3-solid-top{fill:#d9e8f5;stroke:#235f9b;stroke-width:2}.em3-solid-edge{stroke:#146348;stroke-width:3;fill:none}.em3-prob-space{display:grid;grid-template-columns:repeat(var(--cols,6),minmax(42px,1fr));gap:6px;max-width:620px;margin:0 auto 14px}.em3-outcome{min-height:42px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);border-radius:9px;font-weight:750}.em3-outcome.candidate{box-shadow:inset 0 0 0 2px #b7c8bc}.em3-outcome.on{background:var(--gold);border-color:#8e671b;box-shadow:inset 0 0 0 2px #8e671b}

.em3-measure-view,.em3-stats-view{max-width:720px;margin:0 auto 14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px}.em3-measure-view svg,.em3-stats-view svg{width:100%;height:auto;display:block}.em3-true-marker{stroke:#146348;stroke-width:3}.em3-measured-marker{stroke:#a4481a;stroke-width:3;stroke-dasharray:5 4}.em3-measured-point{fill:#f7dda0;stroke:#a4481a;stroke-width:3}.em3-stat-point{fill:#bcd6ed;stroke:#235f9b;stroke-width:2}.em3-stat-point.edited{fill:var(--gold);stroke:#8e671b;stroke-width:3}.em3-mean-line{stroke:#146348;stroke-width:3}.em3-median-line{stroke:#a4481a;stroke-width:2;stroke-dasharray:6 5}

.em3-interest-simple{fill:none;stroke:#235f9b;stroke-width:4}.em3-interest-compound{fill:none;stroke:#a4481a;stroke-width:4}.em3-plot-label{font-size:14px;font-weight:800;fill:#50665b}.em3-prob-chain{display:flex;gap:8px;overflow-x:auto;max-width:760px;margin:10px auto;padding:6px}.em3-prob-step{min-width:110px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px;text-align:center}.em3-prob-step span,.em3-prob-step b,.em3-prob-step small{display:block}.em3-prob-step b{font-size:18px;margin:4px 0}.em3-derived-visual{display:flex;align-items:center;justify-content:center;gap:12px;max-width:720px;margin:10px auto;padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px;font-size:20px}.em3-derived-visual strong{font-size:26px}.em3-flow span{display:flex;gap:6px;align-items:center}.em3-flow span b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#eef3ed}.em3-flow i{font-style:normal;font-weight:900;color:#607584;align-self:center}

