.emt-source-first-look {
  box-sizing: border-box;
  display: grid;
  gap: 9px;
  min-width: 0;
  padding: clamp(11px, 1.6vw, 16px);
  border: 1px solid #7baab4;
  border-radius: 11px;
  color: #eaf7f5;
  background: linear-gradient(145deg, #173c4a, #102b39);
}
.emt-source-first-look * { box-sizing: border-box; min-width: 0; }
.emt-source-first-look :is(h4, p, figure) { margin: 0; }
.emt-source-kicker { color: #b6e8d6; font: 850 .66rem/1.3 system-ui, sans-serif; letter-spacing: .085em; }
.emt-source-first-look h4 { color: #fff; font: 800 clamp(1.08rem, 1.7vw, 1.28rem)/1.24 system-ui, sans-serif; }
.emt-source-layout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(255px, .8fr); gap: 12px; align-items: start; }
.emt-source-evidence, .emt-source-task { display: grid; align-content: start; gap: 8px; }
.emt-source-evidence { padding: 10px; border: 1px solid #608694; border-radius: 8px; background: #0c2938; }
.emt-source-task { padding: 10px; border: 1px solid #5a8791; border-radius: 8px; background: #1b4651; }
.emt-source-question { color: #fff0c5; font: 800 .84rem/1.3 system-ui, sans-serif; }
.emt-source-tabs, .emt-source-choices { display: flex; flex-wrap: wrap; gap: 6px; }
.emt-source-first-look :is(.emt-source-control, .emt-source-check, .emt-source-reset) {
  min-height: 42px;
  padding: 7px 9px;
  border: 1px solid #8aafb2;
  border-radius: 6px;
  color: #f4fcf9;
  background: #285867;
  font: 750 .73rem/1.25 system-ui, sans-serif;
  text-align: left;
  white-space: normal;
  cursor: pointer;
}
.emt-source-tabs .emt-source-control { flex: 1 1 110px; }
.emt-source-choices .emt-source-control { flex: 1 1 145px; }
.emt-source-first-look button[aria-pressed="true"] { border-color: #ffe1a0; color: #18313d; background: #ffe1a0; }
.emt-source-first-look .emt-source-check { border-color: #87dccc; background: #09645e; }
.emt-source-first-look .emt-source-reset { background: #325765; }
.emt-source-first-look button:focus-visible { outline: 3px solid #ffe5a0; outline-offset: 2px; }
.emt-source-fact, .emt-source-readout {
  padding: 7px 9px;
  border-left: 3px solid #8dd1c2;
  border-radius: 4px;
  color: #e4f5f2;
  background: #1d4955;
  font: 500 .76rem/1.38 system-ui, sans-serif;
}
.emt-source-fact strong { color: #fff2c5; }
.emt-source-progress { color: #bcefd8; font: 800 .73rem/1.3 system-ui, sans-serif; }
.emt-source-feedback { min-height: 2em; color: #d3f5df; font: 700 .75rem/1.38 system-ui, sans-serif; }
.emt-source-boundary { padding-top: 7px; border-top: 1px solid #62858c; color: #d0e4e2; font: 500 .72rem/1.42 system-ui, sans-serif; }
.emt-source-photo { position: relative; display: grid; gap: 5px; overflow: hidden; }
.emt-source-photo img { display: block; width: 100%; max-height: 250px; aspect-ratio: 16 / 7; object-fit: cover; border: 1px solid #90adac; border-radius: 6px; }
.emt-source-photo figcaption { color: #bed8d6; font: 500 .69rem/1.34 system-ui, sans-serif; }
.emt-source-scene-photo img { object-position: center 54%; }
.emt-source-chest-photo img { object-position: center 35%; }
.emt-source-marker {
  position: absolute;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0;
  transform: translate(-50%, -50%);
  border: 2px solid #fff;
  border-radius: 50%;
  color: #fff;
  background: #075f74e8;
  box-shadow: 0 2px 8px #05202c;
  font: 850 .88rem/1 system-ui, sans-serif;
  cursor: pointer;
}
.emt-source-strip { display: grid; gap: 4px; padding: 7px; border: 1px solid #63808b; border-radius: 6px; background: #101d28; }
.emt-source-strip-label { color: #ddf6ec; font: 800 .68rem/1.25 system-ui, sans-serif; }
.emt-source-strip svg { display: block; width: 100%; height: 68px; background: repeating-linear-gradient(0deg, transparent, transparent 12px, #284453 13px), repeating-linear-gradient(90deg, transparent, transparent 12px, #284453 13px); }
.emt-source-wave { fill: none; stroke: #92f2d3; stroke-width: 1.8; vector-effect: non-scaling-stroke; }
.emt-source-noise { fill: none; stroke: #f6bd82; stroke-width: 1.2; vector-effect: non-scaling-stroke; }
.emt-source-chest-rise { position: relative; display: flex; justify-content: space-between; gap: 6px; overflow: hidden; min-height: 46px; padding: 7px 9px; border: 1px solid #63808b; border-radius: 6px; color: #f3f8e8; background: #142c39; font: 750 .7rem/1.3 system-ui, sans-serif; }
.emt-source-chest-rise span { z-index: 1; }
.emt-source-chest-rise i { position: absolute; left: 0; bottom: 0; height: 6px; background: #a2dbc5; transition: width .2s ease; }
@media (max-width: 850px) { .emt-source-layout { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 350px) { .emt-source-tabs .emt-source-control, .emt-source-choices .emt-source-control { flex-basis: 100%; } }
