.tester-shell[data-v-2ba312ed]{--tester-height:clamp(360px,52vw,560px);display:flex;flex-direction:column;scroll-margin-top:5rem}@media (min-width:1024px){.tester-shell[data-v-2ba312ed]{display:grid;grid-template-areas:"header header" "modes modes" "stats stats" "canvas details";grid-template-columns:minmax(0,1fr) 270px}.tester-header[data-v-2ba312ed]{grid-area:header}.tester-modes[data-v-2ba312ed]{grid-area:modes}.tester-stats[data-v-2ba312ed]{border-bottom:1px solid hsl(var(--border));border-top:0;grid-area:stats}.tester-canvas[data-v-2ba312ed]{grid-area:canvas}.tester-details[data-v-2ba312ed]{border-left:1px solid hsl(var(--border));border-top:0;grid-area:details}}.tool-button[data-v-2ba312ed]{align-items:center;background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:8px;color:hsl(var(--foreground));display:inline-flex;font-size:.8125rem;font-weight:500;gap:.5rem;justify-content:center;min-height:36px;padding:.5rem .875rem;transition:background-color .15s ease,border-color .15s ease}.tool-button[data-v-2ba312ed]:hover{background:hsl(var(--muted))}.tool-button-primary[data-v-2ba312ed]{background:hsl(var(--accent));border-color:transparent;color:hsl(var(--on-accent))}.tool-button-primary[data-v-2ba312ed]:hover{background:hsl(var(--accent-hover))}.mode-tab[data-v-2ba312ed]{align-items:center;border-radius:6px;color:hsl(var(--muted-foreground));display:flex;font-size:.75rem;font-weight:500;gap:.45rem;justify-content:center;min-height:40px;min-width:0;padding:.5rem .35rem;transition:background-color .12s ease,color .12s ease;white-space:nowrap}.mode-tab.active[data-v-2ba312ed]{background:hsl(var(--card));border:1px solid hsl(var(--border));box-shadow:none;color:hsl(var(--foreground))}.stat-cell[data-v-2ba312ed]{background:hsl(var(--background));border-right:1px solid hsl(var(--border));display:flex;flex-direction:column;gap:.2rem;justify-content:center;min-height:64px;min-width:0;padding:.55rem .75rem}.stat-cell[data-v-2ba312ed]:last-child{border-right:0}.stat-cell span[data-v-2ba312ed]{color:hsl(var(--muted-foreground));font-size:.65rem;line-height:1rem;white-space:normal}.stat-cell strong[data-v-2ba312ed]{font-size:1.05rem;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-.3px;min-width:4ch}.test-surface[data-v-2ba312ed]{cursor:crosshair;height:var(--tester-height);min-height:360px;overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.coverage-grid[data-v-2ba312ed]{background:hsl(var(--border));display:grid;gap:1px;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr))}.coverage-cell[data-v-2ba312ed]{background:hsl(var(--card));transition:background-color .1s ease}.coverage-cell.covered[data-v-2ba312ed]{background:#27a644}.edge-target[data-v-2ba312ed]{background:hsl(var(--card)/.94);border:1px dashed hsl(var(--border));border-radius:8px;color:hsl(var(--muted-foreground));display:grid;font-size:.65rem;font-weight:600;line-height:1.1;place-items:center;position:absolute;text-align:center}.edge-target.complete[data-v-2ba312ed]{background:#27a644;border-color:#27a644;border-style:solid;color:#fff}.edge-corner[data-v-2ba312ed]{height:72px;padding:.4rem;width:72px}.edge-horizontal[data-v-2ba312ed]{height:54px;width:112px}.edge-vertical[data-v-2ba312ed]{height:112px;padding:.35rem;width:64px}.pointer-marker[data-v-2ba312ed]{background:hsl(var(--foreground)/.08);border:2px solid;border-radius:9999px;box-shadow:0 0 0 1px hsl(var(--background)/.6);height:28px;pointer-events:none;position:absolute;transform:translate(-50%,-50%);width:28px}.detail-row[data-v-2ba312ed]{align-items:center;display:flex;gap:1rem;justify-content:space-between;min-height:42px}.detail-row dt[data-v-2ba312ed]{color:hsl(var(--muted-foreground))}.detail-row dd[data-v-2ba312ed]{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.75rem;font-variant-numeric:tabular-nums;margin:0;max-width:55%;overflow:hidden;text-align:right;text-overflow:ellipsis}.tester-shell[data-v-2ba312ed]:-webkit-full-screen,.tester-shell[data-v-2ba312ed]:fullscreen{background:hsl(var(--card));border:0;border-radius:0;height:100%;max-height:100%;overflow:hidden;position:relative;width:100%}.viewport-fallback[data-v-2ba312ed]{background:hsl(var(--card));border:0!important;border-radius:0!important;box-sizing:border-box;height:100%;height:100dvh;top:0;right:0;bottom:0;left:0;max-height:100dvh;overflow:hidden;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);position:fixed!important;width:100%;width:100dvw;z-index:2147483000}.tester-shell.is-immersive[data-v-2ba312ed]{display:block!important;grid-template-areas:none;grid-template-columns:none}.tester-shell.is-immersive .tester-canvas[data-v-2ba312ed],.tester-shell.is-immersive .tester-details[data-v-2ba312ed],.tester-shell.is-immersive .tester-header[data-v-2ba312ed],.tester-shell.is-immersive .tester-modes[data-v-2ba312ed],.tester-shell.is-immersive .tester-stats[data-v-2ba312ed]{grid-area:auto}.tester-shell.is-immersive .tester-canvas[data-v-2ba312ed]{display:flex;flex-direction:column;top:0;right:0;bottom:0;left:0;min-height:0;padding:0;position:absolute;z-index:0}.tester-shell.is-immersive .test-surface[data-v-2ba312ed]{border:0;border-radius:0;flex:1 1 auto;height:100%!important;min-height:0!important;width:100%}.tester-shell.is-immersive .canvas-meta[data-v-2ba312ed]{display:none}.tester-shell.is-immersive .tester-header[data-v-2ba312ed]{align-items:center;background:transparent;border:0;flex-direction:row;gap:.4rem;justify-content:flex-end;max-width:none;padding:0;pointer-events:none;position:absolute;right:.55rem;top:.55rem;width:auto;z-index:6}.tester-shell.is-immersive .tester-title-block[data-v-2ba312ed]{display:none}.tester-shell.is-immersive .tester-actions[data-v-2ba312ed]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsl(var(--card)/.9);border:1px solid hsl(var(--border)/.85);border-radius:10px;box-shadow:0 8px 24px #0000002e;justify-content:flex-end;padding:.2rem;pointer-events:auto}.tester-shell.is-immersive .tool-button-label[data-v-2ba312ed]{display:none!important}.tester-shell.is-immersive .tester-modes[data-v-2ba312ed]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsl(var(--card)/.9);border:1px solid hsl(var(--border)/.85);border-radius:10px;box-shadow:0 8px 24px #0000002e;left:.55rem;max-width:calc(100% - 6.5rem);padding:.2rem;position:absolute;right:5.75rem;top:.55rem;width:auto;z-index:6}.tester-shell.is-immersive .mode-hint[data-v-2ba312ed]{display:none!important}.tester-shell.is-immersive .mode-tab[data-v-2ba312ed]{font-size:.7rem;gap:.3rem;min-height:34px;padding:.3rem .2rem}.tester-shell.is-immersive .tester-stats[data-v-2ba312ed]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsl(var(--card)/.88);border:1px solid hsl(var(--border)/.85);border-radius:10px;bottom:.55rem;box-shadow:0 8px 24px #0000002e;left:.55rem;overflow:hidden;position:absolute;right:.55rem;z-index:6}.tester-shell.is-immersive .stat-cell[data-v-2ba312ed]{background:transparent;min-height:42px;padding:.3rem .45rem}.tester-shell.is-immersive .stat-cell strong[data-v-2ba312ed]{font-size:.95rem}.tester-shell.is-immersive .tester-details[data-v-2ba312ed]{display:none}.tester-shell.is-immersive .tool-button[data-v-2ba312ed]{min-height:34px;padding:.4rem .65rem}@media (max-width:639px){.tester-shell[data-v-2ba312ed]{--tester-height:clamp(390px,112vw,500px)}.mode-tab[data-v-2ba312ed]{white-space:normal}.stat-cell[data-v-2ba312ed]:nth-child(3){border-right:0}.tester-shell.is-immersive .mode-tab-label[data-v-2ba312ed]{display:none}.tester-shell.is-immersive .tester-modes .grid[data-v-2ba312ed]{grid-template-columns:repeat(4,minmax(0,1fr))}.tester-shell.is-immersive .mode-tab[data-v-2ba312ed]{min-height:40px}.tester-shell.is-immersive .stat-cell span[data-v-2ba312ed]{font-size:.58rem}}@media (orientation:landscape) and (max-height:620px){.tester-shell[data-v-2ba312ed]{--tester-height:clamp(300px,66vh,410px)}.test-surface[data-v-2ba312ed]{min-height:300px}.tester-shell.is-immersive .mode-tab-label[data-v-2ba312ed],.tester-shell.is-immersive .tester-stats[data-v-2ba312ed]{display:none}.tester-shell.is-immersive .tester-modes[data-v-2ba312ed]{max-width:calc(100% - 6.5rem);right:5.75rem}.tester-shell.is-immersive .tester-modes .grid[data-v-2ba312ed]{grid-template-columns:repeat(4,minmax(0,1fr))}}
