.lab{--lab-gap:clamp(12px, 1.6vw, 20px);max-width:1600px;padding:var(--s-5) var(--gutter) var(--s-8);margin:0 auto}.lab-loading{min-height:50vh;color:var(--text-muted);place-items:center;display:grid}.lab-intro{padding-bottom:0}.lab-app{padding-top:0}.lab-bar{align-items:flex-end;gap:var(--s-3);margin:var(--s-5) 0 var(--s-4);flex-wrap:wrap;display:flex}.lab-bar .lab-tabs{flex:520px;min-width:0;margin:0}.lab-hero{justify-content:space-between;align-items:flex-end;gap:var(--s-5);padding:var(--s-6) clamp(16px, 3vw, 32px);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--glow), var(--surface-1);flex-wrap:wrap;display:flex;position:relative;overflow:hidden}.lab-hero:after{content:"";background:var(--aurora);opacity:.7;height:2px;position:absolute;inset:auto 0 0}.lab-hero-text{max-width:760px}.lab-title{margin:var(--s-2) 0;font-size:var(--fs-h2);letter-spacing:-.02em;line-height:1.1}.lab-lede{max-width:68ch;margin:0}.lab-model{min-width:min(320px,100%)}.lab-tabs{margin:var(--s-5) 0 var(--s-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);scrollbar-width:thin;gap:4px;padding:4px;display:flex;overflow-x:auto}.lab-tabs [role=tab]{border-radius:var(--r-sm);min-height:40px;color:var(--text-muted);font:inherit;font-size:var(--fs-small);cursor:pointer;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:0;flex:none;align-items:center;gap:8px;padding:0 16px;font-weight:500;display:inline-flex}.lab-tabs [role=tab]:hover{color:var(--text);background:var(--surface-2)}.lab-tabs [role=tab][aria-selected=true]{color:var(--accent-ink);background:var(--accent)}.lab-count{border-radius:var(--r-pill);background:var(--surface-3);min-width:20px;color:var(--text);font-size:var(--fs-micro);text-align:center;padding:0 6px}[aria-selected=true]>.lab-count{color:inherit;background:#0000002e}.lab-body{gap:var(--lab-gap);grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:start;display:grid}.lab-body.no-editor{grid-template-columns:minmax(0,1fr)}.lab-editor{top:calc(var(--header-h) + 12px);gap:var(--s-2);padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);flex-direction:column;display:flex;position:sticky}.lab-editor h2{font-size:var(--fs-body);margin:0}.lab-prompt{resize:vertical;height:46vh;min-height:320px}.lab-meter{font-size:var(--fs-micro);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.lab-panel{min-width:0;animation:lab-in var(--t-base) var(--ease)}.lab-panel-blurb{margin:0 0 var(--s-3);font-size:var(--fs-small)}@keyframes lab-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.lab-grid{gap:var(--lab-gap);align-items:start;display:grid}.lab-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-grid-3{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.lab-grid-3 .lab-span-wide{grid-column:1/-1}.lab-grid-side{grid-template-columns:minmax(280px,.8fr) minmax(0,1.6fr)}.lab-card{gap:var(--s-3);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-1);min-width:0;box-shadow:var(--shadow-1);flex-direction:column;padding:clamp(14px,2vw,22px);display:flex}.lab-card h3{font-size:var(--fs-body);margin:0}.lab-card-head{justify-content:space-between;align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.lab-subhead{margin:var(--s-2) 0 0;font-size:var(--fs-small)}.lab-help{font-size:var(--fs-small);margin:0}.lab-field{font-size:var(--fs-small);color:var(--text-muted);flex-direction:column;gap:6px;min-width:0;display:flex}.lab-field input,.lab-field select,.lab-field textarea,.lab-code{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);width:100%;min-height:40px;color:var(--text);font:inherit;font-size:var(--fs-small);transition:border-color var(--t-fast) var(--ease);padding:8px 12px}.lab-code{font-family:var(--font-mono);resize:vertical;font-size:.8rem;line-height:1.6}.lab-field input:hover,.lab-field select:hover,.lab-code:hover{border-color:var(--border-strong)}.lab-field [aria-invalid=true],.lab-code[aria-invalid=true]{border-color:var(--critical)}.lab-form-grid{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.lab-narrow{max-width:260px}.lab-grow{flex:220px}.lab-check{font-size:var(--fs-small);color:var(--text);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.lab-check input{width:16px;height:16px;accent-color:var(--accent)}.lab-row{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.lab-row-end{align-items:flex-end}.lab-file{position:relative;overflow:hidden}.lab-file input{opacity:0;cursor:pointer;position:absolute;inset:0}.lab-file:focus-within{outline:2px solid var(--accent);outline-offset:2px}.lab-error{color:var(--critical);font-size:var(--fs-small);margin:0}.lab-danger{--btn-fg:var(--critical)}.lab-seg{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:3px;display:inline-flex}.lab-seg button{min-height:30px;color:var(--text-muted);font:inherit;font-size:var(--fs-micro);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 12px}.lab-seg button[aria-pressed=true]{background:var(--surface-1);color:var(--text);box-shadow:var(--shadow-1)}.btn[aria-pressed=true]{--btn-bg:var(--accent-soft);--btn-fg:var(--accent);border-color:var(--accent)}.lab-stats{gap:var(--s-2);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;display:grid}.lab-stat{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);padding:12px 14px}.lab-stat dt{font-size:var(--fs-micro);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.lab-stat-value{font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:1.25rem;font-weight:600}.lab-stat-note{font-size:var(--fs-micro);color:var(--text-faint);margin:2px 0 0}.lab-stat.is-good{border-color:color-mix(in srgb, var(--success) 45%, var(--border))}.lab-stat.is-good .lab-stat-value{color:var(--success)}.lab-stat.is-warn{border-color:color-mix(in srgb, var(--warning) 45%, var(--border))}.lab-stat.is-warn .lab-stat-value{color:var(--warning)}.lab-stat.is-bad{border-color:color-mix(in srgb, var(--critical) 45%, var(--border))}.lab-stat.is-bad .lab-stat-value{color:var(--critical)}.lab-banner{border:1px solid var(--border);border-radius:var(--r-md);font-size:var(--fs-small);padding:12px 14px}.lab-banner p{margin:0}.lab-banner.good{background:var(--accent-soft);border-color:#0000}.lab-banner.warn{background:var(--warning-soft);border-color:#0000;gap:8px;display:grid}.lab-banner.bad{background:var(--critical-soft);border-color:#0000}.lab-banner.neutral{background:var(--surface-2)}.lab-empty{padding:var(--s-5);border:1px dashed var(--border-strong);border-radius:var(--r-md);text-align:center;font-size:var(--fs-small)}.lab-empty-title{color:var(--text);margin:0 0 4px;font-weight:600}.lab-list{font-size:var(--fs-small);gap:4px;margin:0;padding-left:1.1em;display:grid}.lab-list-warn{color:var(--warning)}.lab-notes{font-size:var(--fs-micro);gap:2px;margin:0;padding-left:1.1em;display:grid}.lab-details summary{cursor:pointer;font-size:var(--fs-small);color:var(--text-muted)}.lab-details[open] summary{margin-bottom:8px}.lab-bar{border-radius:var(--r-pill);background:var(--surface-3);flex:auto;min-width:40px;height:10px;display:block;overflow:hidden}.lab-bar-fill{border-radius:inherit;height:100%;transition:width var(--t-slow) var(--ease);display:block}.tone-accent{background:var(--accent)}.tone-accent-2{background:var(--accent-2)}.tone-warning{background:var(--warning)}.tone-critical{background:var(--critical)}.tone-muted{background:var(--border-strong)}.lab-chart{gap:8px;display:grid}.lab-chart-row{align-items:center;gap:var(--s-3);font-size:var(--fs-small);grid-template-columns:minmax(110px,200px) minmax(0,1fr) minmax(70px,auto);display:grid}.lab-chart-row.is-current .lab-chart-label{color:var(--text);font-weight:600}.lab-chart-label{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lab-chart-value{text-align:right;font-size:var(--fs-micro)}.lab-stack{border-radius:var(--r-pill);background:var(--surface-3);height:16px;display:flex;overflow:hidden}.lab-stack-seg{border-right:2px solid var(--surface-1);height:100%;transition:width var(--t-slow) var(--ease)}.lab-share{align-items:center;gap:8px;min-width:120px;display:flex}.lab-table-wrap{border:1px solid var(--border);border-radius:var(--r-md);overflow-x:auto}.lab-table{border-collapse:collapse;width:100%;font-size:var(--fs-small)}.lab-table th,.lab-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 10px}.lab-table thead th{font-size:var(--fs-micro);color:var(--text-muted);background:var(--bg-elev);white-space:nowrap;font-weight:500}.lab-table tbody tr:last-child>*{border-bottom:0}.lab-table tbody th{font-weight:500}.lab-table .chip{margin-left:6px}.lab-table tr.is-excluded>*{opacity:.55}.lab-versions{gap:8px;max-height:620px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.lab-versions li{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);transition:border-color var(--t-fast) var(--ease);gap:8px;padding:12px;display:grid}.lab-versions li.is-selected{border-color:var(--accent)}.lab-version-name{overflow-wrap:anywhere;margin:0;font-weight:600}.lab-version-meta{font-size:var(--fs-micro);flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 0;display:flex}.lab-version-note{font-size:var(--fs-small);margin:4px 0 0}.lab-tags{flex-wrap:wrap;gap:4px;margin:6px 0 0;display:flex}.lab-tags .is-keep{color:var(--accent)}.lab-version-actions{flex-wrap:wrap;gap:4px;display:flex}.lab-version-actions .btn{min-height:32px;padding:0 10px}.lab-diffview{gap:8px;display:grid}.lab-diff-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.lab-diff-counts{font-size:var(--fs-micro);font-family:var(--font-mono);margin:0}.lab-add-count{color:var(--diff-add-text)}.lab-remove-count{color:var(--diff-remove-text)}.lab-diff{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);font-family:var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;max-height:460px;margin:0;padding:14px;font-size:.8rem;line-height:1.65;overflow:auto}.lab-diff ins{background:var(--diff-add);color:var(--diff-add-text);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--diff-add-text) 50%, transparent);border-radius:3px}.lab-diff del{background:var(--diff-remove);color:var(--diff-remove-text);border-radius:3px}.lab-diff-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.lab-diff-split h4{font-size:var(--fs-micro);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0 0 6px;font-weight:500;overflow:hidden}.lab-toon{max-height:360px}.lab-cases{margin:var(--s-3) 0 0;gap:6px;padding:0;list-style:none;display:grid}.lab-cases summary{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);cursor:pointer;font-size:var(--fs-small);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.lab-cases details[open] summary{border-bottom-right-radius:0;border-bottom-left-radius:0}.lab-cases details>.lab-table{border:1px solid var(--border);border-top:0}.lab-case-name{font-weight:500}.lab-models{border:0;gap:6px;margin:0;padding:0;display:grid}.lab-models legend{font-size:var(--fs-small);margin-bottom:6px;font-weight:600}.lab-models details{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev)}.lab-models summary{cursor:pointer;font-size:var(--fs-small);padding:8px 12px}.lab-models ul{gap:6px;max-height:260px;margin:0;padding:0 12px 10px;list-style:none;display:grid;overflow:auto}.lab-toast{z-index:50;pointer-events:none;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.lab-toast span{border:1px solid var(--border-strong);border-radius:var(--r-pill);background:var(--surface-2);color:var(--text);font-size:var(--fs-small);box-shadow:var(--shadow-2);animation:lab-in var(--t-base) var(--ease);padding:10px 16px;display:inline-block}.lab-copy.is-done{--btn-fg:var(--success);border-color:var(--success)}@media (width<=1200px){.lab-grid-3,.lab-grid-side{grid-template-columns:minmax(0,1fr)}}@media (width<=960px){.lab-body{grid-template-columns:minmax(0,1fr)}.lab-editor{position:static}.lab-prompt{height:auto;min-height:200px}.lab-grid-2{grid-template-columns:minmax(0,1fr)}}@media (width<=560px){.lab{padding-top:var(--s-3)}.lab-hero{padding:var(--s-4)}.lab-diff-split{grid-template-columns:minmax(0,1fr)}.lab-chart-row{grid-template-columns:minmax(0,1fr) auto}.lab-chart-row .lab-bar{grid-area:2/1/auto/-1}}@media (prefers-reduced-motion:reduce){.lab-panel,.lab-toast span{animation:none}}
