.test-overlay{position:absolute;inset:0;pointer-events:none}.test-overlay__svg{position:absolute;overflow:visible;pointer-events:none}.test-overlay__svg--live{pointer-events:auto;touch-action:none;cursor:crosshair}.test-overlay__field{fill:transparent}.test-mark{fill:none;stroke:var(--label-ink);stroke-width:1.5}.test-mark--off{stroke:var(--reject)}.test-corners{fill:none;stroke:var(--label-ink);stroke-width:1.5;stroke-dasharray:6 5}.test-corners--off{stroke:var(--reject)}.test-measure{stroke:var(--tax-wedge);stroke-width:1.5;stroke-dasharray:5 3;fill:none}.test-measure__tick{stroke:var(--tax-wedge);stroke-width:1.5}.test-measure__label{font-family:var(--font-sans);font-size:13px;font-weight:600;fill:var(--label-ink)}.test-note{position:absolute;max-width:200px;background:var(--surface);border:1px solid var(--rule);padding:6px 8px;font-family:var(--font-sans);font-size:12px;line-height:1.35;color:var(--ink);pointer-events:none}.test-close__list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px;text-align:left}.test-close__note{display:block;font-size:14px;line-height:1.4}.test-close__door{margin-top:4px;padding:0;border:0;background:none;color:var(--accent);font:inherit;font-size:13px;text-decoration:underline;cursor:pointer}.test-close__door:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.test-cover__choices{display:grid;gap:8px;margin-top:4px}.test-cover__choice{appearance:none;font:inherit;color:var(--ink);text-align:left;display:grid;gap:2px;padding:10px 12px;border:1px solid var(--ink);border-radius:2px;background:var(--surface);cursor:pointer;touch-action:manipulation}.test-cover__choice:hover,.test-cover__choice:focus-visible{background:var(--accent);color:#fff;outline:none}.test-cover__choice-name{font-weight:600;font-size:15px}.test-cover__choice-line{font-size:12px;line-height:1.35;opacity:.85}.test-options{position:absolute;left:0;right:0;bottom:0;z-index:12;display:grid;gap:6px;padding:26px 12px 12px;background:linear-gradient(to bottom,transparent,var(--surface) 22px);pointer-events:auto}.test-option{appearance:none;font:inherit;color:var(--ink);text-align:left;display:grid;grid-template-columns:22px 1fr;column-gap:8px;align-items:start;padding:8px 10px;border:1px solid var(--rule);border-radius:2px;background:var(--surface);font-size:13px;line-height:1.35;cursor:pointer;touch-action:manipulation}.test-option:disabled{cursor:default}.test-option:not(:disabled):hover,.test-option:focus-visible{border-color:var(--ink);outline:none}.test-option--chosen{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.test-option--key{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.test-option--off{border-color:var(--reject);box-shadow:inset 0 0 0 1px var(--reject)}.test-option__letter{font-family:var(--font-display);font-weight:600;font-size:12px;letter-spacing:.06em;color:var(--muted);padding-top:1px}.test-option--key .test-option__letter{color:var(--accent)}.test-option--off .test-option__letter{color:var(--reject)}.test-option__note{grid-column:2;margin-top:6px;padding-top:6px;border-top:1px solid var(--rule);font-size:12px;line-height:1.35}@media(min-width:560px){.test-options{grid-template-columns:1fr 1fr;padding-inline:16px}}.test-stage .guided-callout{z-index:14}.test-chain{max-height:58%;overflow-y:auto}.test-chain__built,.test-chain__true{grid-column:1 / -1;list-style:none;margin:0;padding:0;display:grid;gap:4px}.test-chain__chip,.test-chain__row{display:grid;grid-template-columns:22px 1fr auto;column-gap:8px;align-items:start;padding:6px 10px;border:1px solid var(--ink);border-radius:2px;background:var(--surface);font-size:13px;line-height:1.35}.test-chain__row{grid-template-columns:22px 1fr}.test-chain__row--hit{border-color:var(--accent)}.test-chain__row--order,.test-chain__row--stray{border-color:var(--reject)}.test-chain__row--missing{border-style:dashed;color:var(--muted)}.test-chain__row--note{grid-template-columns:1fr;border-color:var(--rule)}.test-chain__row--note .test-option__note{grid-column:1;margin-top:0;padding-top:0;border-top:0}.test-chain__undo{font:inherit;font-size:12px;padding:0;border:0;background:none;color:var(--accent);text-decoration:underline;cursor:pointer}.test-chain__card{border-style:dashed}.test-define{grid-template-columns:1fr;max-height:58%;overflow-y:auto}.test-define__field{display:grid;gap:6px}.test-define__term{font-family:var(--font-display);font-size:15px;font-weight:600}.test-define__box{font:inherit;font-size:14px;line-height:1.4;padding:8px 10px;border:1px solid var(--ink);border-radius:2px;background:var(--surface);color:var(--ink);resize:vertical;min-height:64px}.test-define__box:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.test-define__yours{display:grid;gap:4px;margin:0;padding:8px 10px;border:1px solid var(--rule);border-radius:2px;background:var(--surface);font-size:13px;line-height:1.4}.test-define__text{font-style:italic}.test-define__ladder{list-style:none;margin:0;padding:0;display:grid;gap:4px}.test-define__element{display:grid;grid-template-columns:1fr auto;column-gap:8px;padding:6px 10px;border:1px solid var(--rule);border-radius:2px;background:var(--surface);font-size:13px;line-height:1.35}.test-define__element--found{border-color:var(--accent)}.test-define__element--missing{border-color:var(--reject)}.test-define__element--said{border-color:var(--ink)}.test-define__state{font-size:12px;color:var(--muted);white-space:nowrap}.test-define__element--found .test-define__state{color:var(--accent)}.test-define__element--missing .test-define__state{color:var(--reject)}.test-define__element .test-option__note{grid-column:1 / -1}.test-define__anyway{grid-column:1 / -1;justify-self:start;font:inherit;font-size:12px;padding:0;border:0;background:none;color:var(--accent);text-decoration:underline;cursor:pointer}.test-plan{max-height:60%;overflow-y:auto}.test-plan__title{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin:0;font-size:13px}.test-plan__count{font-size:12px;color:var(--muted)}.test-plan__card--unpicked{opacity:.55}.test-plan__role{grid-column:2;margin-top:4px;font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.test-option--key .test-plan__role{color:var(--accent)}.test-option--off .test-plan__role{color:var(--reject)}.test-stage--split{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,46%)}.test-stage__frame{position:relative;display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.test-stage__sheet{min-height:0;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid var(--rule);background:var(--surface);padding:12px 14px 18px;animation:test-sheet-in .36s cubic-bezier(.22,1,.36,1) both}@media(min-width:900px){.test-stage--split{grid-template-columns:minmax(0,1fr) 420px;grid-template-rows:minmax(0,1fr)}.test-stage__sheet{border-top:0;border-left:1px solid var(--rule);padding:20px 20px 24px;animation-name:test-sheet-in-side}}@keyframes test-sheet-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes test-sheet-in-side{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:none}}.test-sheet{display:grid;gap:10px}.test-sheet__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin:0}.test-sheet__title{font-family:var(--font-display);font-size:16px;font-weight:600;line-height:1.25}.test-sheet__count{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.test-sheet__list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.test-sheet__note{margin:0;padding:10px 0 0;border-top:1px solid var(--rule);font-size:13px;line-height:1.4;color:var(--ink);animation:test-card-in .28s ease both}.test-sheet__field{display:grid;gap:8px}.test-sheet__box{font:inherit;font-size:15px;line-height:1.45;padding:10px 12px;border:1px solid var(--ink);border-radius:2px;background:var(--surface);color:var(--ink);resize:vertical;min-height:92px}.test-sheet__box:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.test-sheet__yours{margin:0;padding:0 0 10px;border-bottom:1px solid var(--rule);font-size:14px;line-height:1.45;font-style:italic;color:var(--ink)}.test-card{appearance:none;font:inherit;color:var(--ink);text-align:left;display:grid;grid-template-columns:22px minmax(0,1fr) auto;column-gap:10px;row-gap:6px;align-items:start;width:100%;padding:10px 12px;border:1px solid var(--rule);border-radius:2px;background:var(--surface);font-size:14px;line-height:1.4;animation:test-card-in .28s ease both;animation-delay:calc(var(--i, 0) * 45ms)}@keyframes test-card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.test-card--pick{cursor:pointer;touch-action:manipulation}.test-card--pick:hover,.test-card--pick:focus-visible{border-color:var(--ink);outline:none}.test-card--pick:disabled{cursor:default;opacity:.6}.test-card--placed{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.test-card--key{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.test-card--off{border-color:var(--reject);box-shadow:inset 0 0 0 1px var(--reject)}.test-card--dim{border-style:dashed;color:var(--muted)}.test-card__slot{font-family:var(--font-display);font-weight:600;font-size:13px;line-height:1.4;letter-spacing:.04em;color:var(--muted);text-align:center}.test-card--placed .test-card__slot{color:var(--ink)}.test-card--key .test-card__slot{color:var(--accent)}.test-card--off .test-card__slot{color:var(--reject)}.test-card__text{grid-column:2;display:grid;gap:2px}.test-card__state{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.test-card--key .test-card__state{color:var(--accent)}.test-card--off .test-card__state{color:var(--reject)}.test-card__role{grid-column:2;font-family:var(--font-display);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);animation:test-card-in .24s ease both}.test-card--key .test-card__role{color:var(--accent)}.test-card--off .test-card__role{color:var(--reject)}.test-card__note{grid-column:2 / -1;padding-top:6px;border-top:1px solid var(--rule);font-size:13px;line-height:1.4;color:var(--ink);animation:test-card-in .24s ease both}.test-card__action{grid-column:3;align-self:start;font:inherit;font-size:12px;padding:0;border:0;background:none;color:var(--accent);text-decoration:underline;cursor:pointer;white-space:nowrap}.test-card__note+.test-card__action{grid-column:2 / -1;justify-self:start}.test-cover__choices{display:grid;gap:0;margin-top:6px;border-top:1px solid var(--hairline)}.test-cover__choice{appearance:none;font:inherit;color:var(--ink);text-align:left;display:grid;grid-template-columns:1fr auto;column-gap:12px;row-gap:2px;align-items:center;width:100%;padding:10px 2px;border:0;border-bottom:1px solid var(--hairline);border-radius:0;background:none;cursor:pointer;touch-action:manipulation}.test-cover__choice:after{content:"›";grid-column:2;grid-row:1 / span 2;font-size:18px;color:var(--muted)}.test-cover__choice:hover,.test-cover__choice:focus-visible{background:none;color:var(--accent);outline:none}.test-cover__choice:hover:after,.test-cover__choice:focus-visible:after{color:var(--accent)}.test-cover__choice-name{font-family:var(--font-display);font-weight:600;font-size:16px}.test-cover__choice-line{grid-column:1;font-size:12px;line-height:1.35;color:var(--muted)}@media(prefers-reduced-motion:reduce){.test-stage__sheet,.test-card,.test-card__note,.test-card__role,.test-sheet__note{animation:none}}.test-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding-top:4px;animation:test-card-in .28s ease both}.test-chips__ask{flex-basis:100%;margin:0;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.test-chip{appearance:none;font:inherit;font-size:13px;line-height:1.2;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:2px;padding:7px 10px;min-height:36px;cursor:pointer;transition:border-color .14s ease,background .14s ease,scale var(--ease-quick) var(--ease-house)}.test-chip:hover:not(:disabled){border-color:var(--ink)}.test-chip:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.test-chip:disabled{opacity:.4;cursor:default}.test-card--now{border-left:2px solid var(--accent);padding-left:10px}@media(prefers-reduced-motion:reduce){.test-chip{transition:none}}
