.lab-hero{position:relative;border-bottom:var(--line) solid var(--rule);display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,400px);grid-template-rows:auto minmax(420px,1fr) auto;column-gap:clamp(24px,3vw,48px);min-height:calc(100svh - 56px)}.lab-hero__head{grid-column:1;grid-row:1;position:relative;z-index:2;padding-block:clamp(20px,3vh,32px) 0;padding-right:0}.lab-title{font-size:var(--fs-2xl);line-height:1.05;margin-top:10px}.lab-sentence{font-family:var(--serif);font-weight:900;font-size:var(--fs-xl);margin-top:8px;min-height:1.3em}.lab-sentence b,.lab-caret{color:var(--accent)}.lab-hero__stage{grid-column:1;grid-row:2;position:relative;min-height:0}.lab-hero__stage .stage{height:100%}.lab-hero__stage .stage__viewport{height:100%;min-height:0;background:transparent}.lab-strip-wrap{grid-column:1;grid-row:3;padding:4px 0 24px var(--gutter)}.lab-strip__h{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;font-size:var(--fs-sm);color:var(--ink-2);margin-bottom:8px}.lab-strip{display:flex;height:54px;border:var(--line) solid var(--ink);overflow:hidden}.lab-strip__seg{position:relative;display:grid;align-content:center;justify-items:center;min-width:0;overflow:hidden;border-right:1px solid var(--paper);background:var(--ink);color:var(--paper);transition:flex-basis .32s var(--ease-out),background-color .2s}.lab-strip__seg:nth-child(2n){background:color-mix(in srgb,var(--ink) 78%,var(--accent))}.lab-strip__seg.is-hit{background:var(--accent);color:var(--on-accent)}.lab-strip__seg.is-cut{background:repeating-linear-gradient(45deg,transparent 0 4px,color-mix(in srgb,var(--ink) 30%,transparent) 4px 5px);color:var(--ink-3)}.lab-strip__legend{margin-top:6px;font-size:var(--fs-xs);color:var(--ink-2);min-height:1.4em}.lab-strip__seg b{font-family:var(--serif);font-weight:900;font-size:16px;line-height:1.1;white-space:nowrap}.lab-strip__seg i{font-style:normal;font-family:var(--mono);font-size:11px;white-space:nowrap}.lab-controls{grid-column:2;grid-row:1 / 4;position:relative;z-index:2;display:grid;gap:18px;align-content:start;padding-block:clamp(28px,4vh,44px) 28px;padding-left:0}.lab-prompts{display:grid;border:var(--line) solid var(--ink)}.lab-prompt{min-height:42px;padding:0 14px;text-align:left;font-family:var(--serif);font-weight:900;font-size:var(--fs-md);transition:background-color .16s,color .16s}.lab-prompt+.lab-prompt{border-top:var(--hair) solid color-mix(in srgb,var(--ink) 35%,transparent)}.lab-prompt:hover{background:var(--paper-2)}.lab-prompt[aria-pressed=true]{background:var(--ink);color:var(--paper)}.lab-buttons{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.lab-buttons .btn{padding:0 10px}.lab-out{min-height:1.5em}.lab-tally,.lab-hint{font-size:var(--fs-sm);color:var(--ink-2)}@media(max-width:960px),(orientation:portrait){.lab-hero{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(52vh,auto) auto auto;min-height:auto}.lab-hero__head{padding-inline:var(--gutter)}.lab-hero__stage{grid-row:2;min-height:380px;height:min(54vh,62vw)}.lab-strip-wrap{grid-row:3;padding-right:var(--gutter)}.lab-controls{grid-column:1;grid-row:4;padding-inline:var(--gutter)}}.lab-tools{padding-block:clamp(64px,9vw,120px)}.lab-list{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(48px,7vw,88px);margin-top:clamp(32px,5vw,56px)}.lab-list>li{min-width:0}.lab-tool__head{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;grid-template-areas:"no title from" "no note from";gap:2px 16px;margin-bottom:16px;align-items:baseline}.lab-tool__no{grid-area:no;color:var(--accent-text);font-size:var(--fs-sm)}.lab-tool__title{grid-area:title;font-size:var(--fs-xl)}.lab-tool__note{grid-area:note;color:var(--ink-2)}.lab-tool__from{grid-area:from;font-size:var(--fs-sm);text-decoration:none;border-bottom:var(--line) solid var(--ink);white-space:nowrap;align-self:end}.lab-tool__from:hover{border-color:var(--accent)}@media(max-width:720px){.lab-tool__head{grid-template-columns:2.4rem minmax(0,1fr);grid-template-areas:"no title" "no note" "no from"}.lab-tool__from{justify-self:start;margin-top:6px}}
