/* test-lab tool styles: only extends the shared tokens from styles.css */
.tl-source { margin-top: clamp(40px, 5vw, 72px); padding: 22px 26px; border-radius: var(--r-md); background: var(--surface); max-width: 72ch; }
.tl-source h2 { font-size: 1.0625rem; font-weight: 800; color: var(--yellow); margin-bottom: 10px; }
.tl-source p { color: var(--ink-soft); font-size: 1rem; line-height: 1.55; margin-top: 8px; }
.tl-source a, .dw-copy a, .dw-note a { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; font-weight: 700; }
.tl-row { display: grid; gap: clamp(12px, 1.5vw, 20px); grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); margin-top: 32px; }
.tl-row .fact { min-height: 200px; }
.tl-row .fact:hover { transform: none; }
.tl-row .fact-num { font-size: clamp(3.25rem, 2.4rem + 3.4vw, 6rem); overflow-wrap: anywhere; }
.tl-sub { font-size: .9375rem; font-weight: 700; opacity: .8; }
.tl-btns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.tl-btn { font: 800 1rem var(--body); padding: 12px 20px; border-radius: 999px; border: 2px solid var(--yellow); background: transparent; color: var(--yellow); cursor: pointer; min-height: 44px; }
.tl-btn:hover, .tl-btn:focus-visible { background: var(--yellow); color: var(--on-light); }
.tl-btn[aria-pressed="true"] { background: var(--yellow); color: var(--on-light); }

.i-mapwrap { background: var(--surface); border-radius: var(--r-lg); padding: clamp(8px, 1.5vw, 20px); }
.i-mapwrap svg { display: block; width: 100%; height: auto; }
.i-mapwrap .grid { stroke: var(--line); stroke-width: 1; }
.i-mapwrap .axis { stroke: #555; stroke-width: 1.5; }
.i-mapwrap text { fill: var(--muted); font: 600 10px var(--body); }
.i-mapwrap .lbl { fill: var(--ink); font-size: 12px; font-weight: 800; }
.i-mapwrap .trace { fill: none; stroke: var(--yellow); stroke-opacity: .55; stroke-width: 2; stroke-dasharray: 2 4; }
.i-mapwrap .ktm { fill: var(--ink); stroke: var(--bg); stroke-width: 2; }
.i-mapwrap .iss { fill: var(--yellow); stroke: var(--bg); stroke-width: 2; }
.i-mapwrap .ring { fill: none; stroke: var(--yellow); stroke-width: 2; opacity: .6; }
