.trafficking-lab{margin:24px 0;border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden;scroll-margin-top:80px}.trafficking-lab[hidden]{display:none}.tf-head{padding:25px;display:flex;align-items:start;justify-content:space-between;gap:20px}.tf-head h2{font:31px var(--serif);margin-top:8px}.trafficking-lab button,.trafficking-lab select{font:11px system-ui;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:9px;cursor:pointer}.trafficking-lab button[aria-pressed=true]{border-color:var(--mint);box-shadow:inset 0 -2px var(--mint)}.trafficking-lab button:disabled{opacity:.4;cursor:default}.tf-tools{padding:13px 25px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-block:1px solid var(--line)}.tf-tools label{font-size:11px;display:flex;gap:7px;align-items:center}.tf-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr)}.tf-view{position:relative;min-width:0;background:color-mix(in srgb,var(--panel) 96%,var(--mint))}.tf-view canvas{display:block;width:100%;height:520px;touch-action:none}.tf-view>div{position:absolute;inset:0;pointer-events:none}.tf-view>p{position:absolute;bottom:12px;left:20px;right:20px;font-size:10px;color:var(--soft);line-height:1.6;pointer-events:none}.tf-layout aside{padding:24px;border-left:1px solid var(--line)}.tf-layout h3{font:25px var(--serif);line-height:1.25;margin:10px 0 16px}.tf-layout aside>p{font-size:12px;line-height:1.8}.tf-layout dl{margin-top:18px;font-size:11px;line-height:1.8}.tf-layout dt{font-size:10px;color:var(--soft);letter-spacing:.05em;margin-top:13px}.tf-layout dd{margin:5px 0 0}.tf-picked{border-top:1px solid var(--line);padding-top:16px;margin-top:20px;color:var(--soft)}.tf-key{display:flex;flex-wrap:wrap;gap:9px 14px;margin-top:16px;font-size:10px;color:var(--soft)}.tf-key i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.tf-stages{padding:17px 25px;display:flex;gap:7px;flex-wrap:wrap;border-block:1px solid var(--line)}.tf-stages button{font-size:10px}.tf-ledger{padding:22px 25px}.tf-ledger p:not(.eyebrow){font-size:12px;line-height:1.85;margin-top:11px}.tf-ledger [data-limit]{font-size:11px!important;color:var(--soft)}.trafficking-lab details{padding:17px 25px;border-top:1px solid var(--line);font-size:11px;line-height:1.85}.trafficking-lab details p{margin:12px 0}.trafficking-lab details a{display:inline-block;margin:5px 0}.trafficking-lab button:focus-visible,.tf-view canvas:focus-visible{outline:2px solid var(--mint);outline-offset:3px}@media(max-width:850px){.tf-layout{grid-template-columns:1fr}.tf-layout aside{border-left:0;border-top:1px solid var(--line)}.tf-view canvas{height:440px}.tf-head{display:block}.tf-head>button{margin-top:17px}}@media(max-width:500px){.tf-view canvas{height:360px}.tf-head,.tf-tools,.tf-stages,.tf-ledger,.tf-layout aside,.trafficking-lab details{padding-inline:18px}}

.tf-phase input{width:90px;accent-color:var(--mint)}.tf-phase output{font:10px monospace;min-width:33px;text-align:right}
