@keyframes run-log-settle{0%{opacity:0;transform:scale(.5)}}@keyframes run-log-burst{0%{opacity:0;transform:scale(.5);box-shadow:0 0 0 0 color-mix(in srgb,var(--color-fg-error) 60%,transparent)}45%{opacity:1;transform:scale(1.25)}to{transform:scale(1);box-shadow:0 0 0 9px transparent}}.rv-strip-seg{display:block;height:100%;transition:width .6s cubic-bezier(.2,.7,.2,1)}.rv-strip-live{background:linear-gradient(90deg,color-mix(in srgb,var(--color-fg-info) 22%,transparent) 0,color-mix(in srgb,var(--color-fg-info) 48%,transparent) 50%,color-mix(in srgb,var(--color-fg-info) 22%,transparent) 100%);background-size:200% 100%;animation:rv-shimmer 1.8s linear infinite}@keyframes rv-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.rv-strip-num{font:500 13px IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums}.rv-strip-num.rv-strip-time{font-weight:400;font-size:12.5px}.rv-stage-root{--rv-fail:var(--color-fg-error);--rv-fail-soft:var(--color-bg-error);--rv-pass:var(--color-fg-success);--rv-pass-soft:var(--color-bg-success);--rv-cap-bg:rgba(12,15,18,0.86);--rv-cap-fg:#f2f4f5;display:flex;flex-direction:column;background:var(--color-bg-deep)}.rv-chrome{position:relative;flex:none;display:flex;align-items:center;gap:10px;height:34px;padding:0 10px 0 12px;background:var(--color-bg-lifted);border-bottom:1px solid var(--color-border-default);color:var(--color-fg-secondary);font-size:12px}.rv-dots{display:inline-flex;gap:5px;flex:none}.rv-dots i{width:7px;height:7px;border-radius:50%;background:var(--color-border-elevated)}.rv-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--color-fg-default)}.rv-count{flex:none;font-size:12px;font-variant-numeric:tabular-nums;color:var(--color-fg-secondary)}.rv-loadbar{position:absolute;left:0;bottom:-1px;height:2px;background:var(--color-fg-info);animation:rv-load .7s ease-out both}@keyframes rv-load{0%{width:0;opacity:1}70%{width:85%;opacity:1}to{width:100%;opacity:0}}.rv-stage{position:relative;flex:1;min-height:0;overflow:hidden}.rv-page{position:absolute;inset:0;overflow:hidden;background:#fff;animation:rv-page-in .3s ease-out both}@keyframes rv-page-in{0%{opacity:0}}.rv-page iframe{border:0;transform-origin:0 0;pointer-events:none;display:block;background:#fff}.rv-box{z-index:2;pointer-events:none;border-radius:4px}.rv-box,.rv-c{position:absolute}.rv-c{width:9px;height:9px;border-color:var(--rv-pass);border-style:solid;border-width:0;filter:drop-shadow(0 0 1px #fff);animation:rv-bracket .36s ease-out both}.rv-fail .rv-c{border-color:var(--rv-fail)}.rv-tl{left:-2px;top:-2px;border-left-width:2px;border-top-width:2px}.rv-tr{right:-2px;top:-2px;border-right-width:2px;border-top-width:2px}.rv-br{right:-2px;bottom:-2px;border-right-width:2px;border-bottom-width:2px}.rv-bl{left:-2px;bottom:-2px;border-left-width:2px;border-bottom-width:2px}@keyframes rv-bracket{0%{opacity:0;transform:scale(1.8)}}.rv-verdict{position:absolute;right:-11px;top:-11px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:var(--rv-pass);background:#fff;box-shadow:0 0 0 2px #fff;animation:rv-pop .35s cubic-bezier(.2,.9,.3,1.4) both}.rv-fail .rv-verdict{color:var(--rv-fail)}.rv-verdict svg{width:22px;height:22px}.rv-verdict:after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid;opacity:0;animation:rv-halo .7s ease-out .1s}@keyframes rv-pop{0%{transform:scale(.3);opacity:0}}@keyframes rv-halo{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(2.2)}}.rv-cap{position:absolute;left:14px;bottom:14px;z-index:5;display:flex;align-items:baseline;gap:8px;max-width:calc(100% - 28px);padding:7px 12px;border-radius:8px;background:var(--rv-cap-bg);color:var(--rv-cap-fg);font-size:13px;line-height:18px;white-space:nowrap;box-shadow:0 6px 22px rgba(0,0,0,.28);animation:rv-cap-in .28s cubic-bezier(.2,.8,.2,1) both}.rv-cap b{font:500 12px IBM Plex Mono,ui-monospace,monospace;color:rgba(242,244,245,.62)}@keyframes rv-cap-in{0%{opacity:0;transform:translateY(6px)}}.ts-marketing .rv-hairline .hairline-stage{--hairline-plate:var(--color-bg-elevated)}.rv-arrive{animation:rv-arrive .42s cubic-bezier(.16,1,.3,1) both}@keyframes rv-arrive{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.rv-strip-seg{transition:none}.rv-arrive,.rv-c,.rv-cap,.rv-loadbar,.rv-page,.rv-strip-live,.rv-verdict,.rv-verdict:after{animation:none}}