/* V2 workspace: one canvas, one active editing section, touch-size controls. */
.tool-version,.lab-version{display:inline-flex;align-items:center;border:1px solid #819cff66;border-radius:6px;padding:5px 8px;color:#b8c8ff;background:#819cff12;font:600 11px/1 "DM Mono",monospace;letter-spacing:0;vertical-align:middle}
.lab-version{margin-left:12px}
dialog.lab-v2{inset:0!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;border:0!important;border-radius:0!important;padding:0!important;background:#111318;color:#eef0f7;overflow:hidden!important;font:14px/1.5 Manrope,Arial,sans-serif}
dialog.lab-v2 :is(.experimental-lab,.bitmap-app){display:flex!important;flex-direction:column!important;width:100%;height:100%!important;max-height:none!important;overflow:hidden!important}
dialog.lab-v2 :is(.lab-topbar,.bitmap-topbar){position:relative!important;display:flex!important;align-items:center;gap:16px;flex:0 0 64px!important;min-height:64px!important;padding:10px 24px!important;border-bottom:1px solid #ffffff12;background:#17191f}
dialog.lab-v2 :is(.lab-brand,.bitmap-brand){font-size:11px!important;min-width:0}
dialog.lab-v2 .lab-app-switch{position:static!important;transform:none!important;margin:auto!important;display:flex!important;gap:4px;max-width:none!important;overflow:auto;flex-shrink:1}
dialog.lab-v2 .lab-app-switch button{min-height:38px!important;padding:8px 16px!important;font-size:12px!important;white-space:nowrap}
dialog.lab-v2 .bitmap-close{position:static!important;width:40px!important;height:40px!important;flex:0 0 40px!important;font-size:24px!important;margin:0!important}
dialog.lab-v2 :is(.lab-heading,.bitmap-heading){position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between;flex:0 0 72px!important;min-height:72px!important;height:72px!important;padding:10px 24px!important;background:#111318;border-bottom:1px solid #ffffff10;gap:12px}
dialog.lab-v2 :is(.lab-heading,.bitmap-heading) h2{font:600 26px/1.2 "Space Grotesk",Manrope,sans-serif!important;letter-spacing:-1px!important;margin:0!important;display:flex;align-items:center}
dialog.lab-v2 :is(.lab-heading,.bitmap-heading) p{font:400 12px/1.5 Manrope,sans-serif!important;margin:4px 0 0!important;max-width:none!important;color:#a0a7b8}
dialog.lab-v2 :is(.bitmap-kicker,.lab-heading-count,.bitmap-heading-index){display:none!important}
dialog.lab-v2 :is(.lab-presets,.bitmap-quick-presets){display:none!important;flex:0 0 auto!important;height:auto!important;min-height:0!important;max-height:120px;overflow:auto;padding:12px 24px!important;background:#1b1e27;gap:10px}
dialog.lab-v2.recipes-open :is(.lab-presets,.bitmap-quick-presets){display:flex!important}
dialog.lab-v2 :is(.lab-presets,.bitmap-quick-presets) button{min-height:40px!important;padding:10px 14px!important;font-size:12px!important;white-space:nowrap}
dialog.lab-v2 .lab-recipes-toggle{min-height:40px;padding:8px 16px;border:1px solid #819cff66;border-radius:9px;color:#c1cfff;background:#819cff18;white-space:nowrap;cursor:pointer}
dialog.lab-v2 :is(.lab-layout,.bitmap-layout){flex:1 1 0!important;min-height:0!important;display:grid!important;grid-template-columns:380px minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;overflow:hidden!important;gap:0!important}
dialog.lab-v2 :is(.lab-controls,.bitmap-controls){position:relative!important;display:block!important;height:auto!important;max-height:none!important;min-height:0!important;padding:0 20px 24px!important;overflow:auto!important;background:#191c23;border-right:1px solid #ffffff12;overscroll-behavior:contain}
dialog.lab-v2 .lab-section-tabs{position:sticky;top:0;z-index:6;display:flex;overflow:auto;gap:6px;margin:0 -20px 20px;padding:12px;background:#191c23;border-bottom:1px solid #ffffff16;scrollbar-width:thin}
dialog.lab-v2 .lab-section-tabs button{flex:0 0 auto;min-height:40px;padding:8px 12px;border:1px solid transparent;border-radius:8px;color:#a9b0c1;background:transparent;font:600 12px Manrope,sans-serif;white-space:nowrap;cursor:pointer}
dialog.lab-v2 .lab-section-tabs button[aria-pressed=true]{border-color:#819cff55;color:#d8e1ff;background:#819cff22}
dialog.lab-v2 :is(.lab-group,.bitmap-control-group){padding:0!important;margin:0 0 24px!important;border:0!important;background:transparent!important}
dialog.lab-v2 :is(.lab-group,.bitmap-control-group)[hidden]{display:none!important}
dialog.lab-v2 :is(.lab-group h3,.bitmap-group-heading h3){font-size:17px!important;line-height:1.4!important;letter-spacing:-.3px!important;color:#f1f2f9;margin:0 0 18px!important}
dialog.lab-v2 .lab-group h3>span{font:11px "DM Mono",monospace;color:#92abff;margin-right:8px}
dialog.lab-v2 :is(.lab-field,.bitmap-field,.lab-slider,.bitmap-range){display:block;padding:12px!important;margin:0 0 12px!important;border:1px solid #ffffff10!important;border-radius:10px!important;background:#ffffff03!important}
dialog.lab-v2 :is(.lab-field>span,.bitmap-field>span,.lab-slider>span,.bitmap-range>span){display:flex!important;align-items:center;justify-content:space-between;gap:8px;color:#d5d9e5;font:500 13px/1.4 Manrope,sans-serif!important;margin:0 0 10px!important}
dialog.lab-v2 :is(.lab-slider b,.bitmap-range span){font-size:13px!important;font-weight:500!important}
dialog.lab-v2 :is(select,textarea,input[type=number]){box-sizing:border-box;min-height:42px!important;font-size:14px!important;line-height:1.5!important;color:#ebedf8!important;background:#222630!important;border:1px solid #ffffff20!important;border-radius:7px!important;padding:8px 10px!important;max-width:100%}
dialog.lab-v2 select{width:100%}dialog.lab-v2 textarea{width:100%;min-height:110px!important;resize:vertical}
dialog.lab-v2 :is(.lab-slider output,.bitmap-range output){color:#a8bcff;font:500 12px "DM Mono",monospace!important}
dialog.lab-v2 .lab-number{width:80px!important;min-height:30px!important;font-size:12px!important;margin-top:4px}
dialog.lab-v2 input[type=range]{height:30px!important;width:100%;margin:0!important;accent-color:#9bb1ff;touch-action:pan-y}
dialog.lab-v2 input[type=range]::-webkit-slider-runnable-track{height:5px!important;border-radius:8px}
dialog.lab-v2 input[type=range]::-webkit-slider-thumb{width:19px!important;height:19px!important;margin-top:-7px!important;border-radius:50%!important;border:3px solid #d4ddff!important;background:#849eff!important;box-shadow:0 0 0 3px #819cff15!important}
dialog.lab-v2 :is(.lab-check,.bitmap-check,.bitmap-transparent-option){font-size:13px!important;min-height:42px!important;gap:10px}
dialog.lab-v2 input[type=checkbox]{width:18px!important;height:18px!important;accent-color:#9bb1ff}
dialog.lab-v2 :is(.lab-color-row,.bitmap-color-row){display:flex!important;gap:8px;margin-block:14px}
dialog.lab-v2 :is(.lab-color,.bitmap-color-field){flex:1;min-width:0;min-height:72px!important;padding:10px!important;border:1px solid #ffffff20;border-radius:9px;font-size:12px!important}
dialog.lab-v2 input[type=color]{width:36px!important;height:30px!important;padding:0;border:0}
dialog.lab-v2 :is(.lab-drop-control,.bitmap-dropzone){min-height:132px!important;padding:20px!important;font-size:14px!important;border:1px dashed #849eff88!important;border-radius:12px!important;background:#819cff08!important}
dialog.lab-v2 :is(.lab-drop-control small,.bitmap-dropzone small,.lab-file-name,.bitmap-file-name,.lab-v2-note){font-size:12px!important;line-height:1.6!important;color:#929bad;overflow-wrap:anywhere}
dialog.lab-v2 :is(.lab-stage,.bitmap-stage){position:relative!important;display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:hidden!important;background:#0d0f13;padding:0!important}
dialog.lab-v2 :is(.lab-stage-top,.bitmap-stage-top){display:flex!important;align-items:center!important;gap:12px;flex:0 0 52px!important;min-height:52px!important;padding:8px 18px!important;border-bottom:1px solid #ffffff10}
dialog.lab-v2 :is(.lab-stage-top,.bitmap-stage-top) span{font-size:11px!important}
dialog.lab-v2 .lab-focus-toggle{margin-left:auto;min-height:34px;padding:6px 10px;border:1px solid #ffffff25;border-radius:7px;background:#ffffff05;color:#bdc7e0;font-size:11px;white-space:nowrap;cursor:pointer}
dialog.lab-v2 :is(.lab-preview,.bitmap-canvas-area){position:relative!important;flex:1 1 0!important;min-height:0!important;height:auto!important;max-height:none!important;padding:24px!important;overflow:auto!important;touch-action:none!important;overscroll-behavior:contain}
dialog.lab-v2 :is(.lab-stage-bottom,.bitmap-stage-bottom){display:flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:flex-end!important;gap:12px;padding:10px 18px!important;min-height:64px!important;background:#171a21;border-top:1px solid #ffffff14;overflow:auto!important}
dialog.lab-v2 :is(.lab-stage-bottom>small,.bitmap-local-note,.lab-hint,.lab-preview-stamp){display:none!important}
dialog.lab-v2 :is(.lab-stage-bottom,.bitmap-stage-bottom) button{min-height:42px!important;font:600 12px/1.3 Manrope,sans-serif!important;padding:10px 16px!important;border-radius:8px!important;white-space:nowrap}
dialog.lab-v2 .lab-stage-bottom>div{display:flex;gap:8px}
dialog.lab-v2 :is(.lab-view-zoom,.bitmap-zoom-dock){position:absolute!important;inset:auto 18px 82px auto!important;transform:none!important;width:auto!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important;z-index:5}
dialog.lab-v2 :is(.lab-view-zoom,.bitmap-zoom-dock)>:not([data-lab-zoom-fit]):not([data-bitmap-zoom-fit]){display:none!important}
dialog.lab-v2 :is([data-lab-zoom-fit],[data-bitmap-zoom-fit]){min-height:36px!important;padding:8px 14px!important;font-size:12px!important;background:#202633!important;color:#e0e7ff!important;border:1px solid #ffffff30!important;border-radius:8px!important;position:static!important}
dialog.lab-v2 .lab-composition-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 16px}
dialog.lab-v2 .lab-composition-picker button{display:grid;gap:8px;min-height:90px;padding:12px;border:1px solid #ffffff16;border-radius:10px;background:linear-gradient(135deg,#252c3d,#1a1f2a);color:#a7b3d4;text-align:left;cursor:pointer}
dialog.lab-v2 .lab-composition-picker button[aria-pressed=true]{border-color:#9bb1ff;background:#819cff22;color:#eff3ff}
dialog.lab-v2 .lab-composition-picker b{font:32px/1 "Space Grotesk",sans-serif;color:#9ab1ff}.lab-composition-picker span{font-size:12px}
dialog.lab-v2 :is(.lab-motion-effect,.lab-layer){padding:10px!important;gap:8px;border-radius:9px!important;margin-bottom:8px}
dialog.lab-v2 .lab-motion-effect button,dialog.lab-v2 .lab-layer button{min-width:30px;min-height:34px;font-size:14px!important}
dialog.lab-v2 .lab-layer-main b{font-size:13px!important}dialog.lab-v2 .lab-layer-main small{font-size:11px!important}
dialog.lab-v2 :is(.lab-motion-add,.lab-save,.bitmap-save,.lab-audio-upload){min-height:44px!important;font-size:13px!important;border-radius:8px!important}
dialog.lab-v2 .lab-audio-player{height:42px}dialog.lab-v2 .lab-audio-band>b{font-size:11px}dialog.lab-v2 .lab-audio-band>span{height:12px}
dialog.lab-v2 .lab-audio-feedback small{font-size:11px!important}
dialog.lab-v2 .lab-transport{display:flex;align-items:center;gap:8px;min-width:0}dialog.lab-v2 .lab-transport button{min-height:34px;font-size:12px!important}dialog.lab-v2 .lab-transport input{width:100px}
dialog.lab-v2.preview-focus :is(.lab-controls,.bitmap-controls){display:none!important}dialog.lab-v2.preview-focus :is(.lab-layout,.bitmap-layout){grid-template-columns:1fr!important}
dialog.lab-v2 button:focus-visible,dialog.lab-v2 select:focus-visible{outline:2px solid #adc0ff!important;outline-offset:3px}
@media(max-width:900px){dialog.lab-v2 :is(.lab-layout,.bitmap-layout){grid-template-columns:330px minmax(0,1fr)!important}dialog.lab-v2 :is(.lab-brand,.bitmap-brand)>span:not(.bitmap-mark){display:none}}
@media(max-width:760px){
 dialog.lab-v2 :is(.lab-topbar,.bitmap-topbar){display:grid!important;grid-template-columns:1fr 40px!important;grid-template-rows:32px 40px!important;gap:4px 8px!important;flex:0 0 92px!important;min-height:92px!important;padding:8px 14px!important}
 dialog.lab-v2 :is(.lab-brand,.bitmap-brand){grid-column:1;grid-row:1;font-size:10px!important;overflow:hidden;white-space:nowrap}
 dialog.lab-v2 :is(.lab-brand,.bitmap-brand)>strong{font-size:11px!important}
 dialog.lab-v2 .bitmap-close{grid-column:2;grid-row:1;width:34px!important;height:34px!important;min-height:34px!important;align-self:center}
 dialog.lab-v2 .lab-app-switch{grid-row:2;grid-column:1/-1;width:100%;justify-content:space-between;gap:4px;margin:0!important}
 dialog.lab-v2 .lab-app-switch button{flex:1;min-height:36px!important;padding:6px 8px!important;font-size:11px!important}
 dialog.lab-v2 :is(.lab-heading,.bitmap-heading){flex:0 0 48px!important;min-height:48px!important;height:48px!important;padding:6px 14px!important}
 dialog.lab-v2 :is(.lab-heading,.bitmap-heading) h2{font-size:20px!important;letter-spacing:-.7px!important}
 dialog.lab-v2 :is(.lab-heading,.bitmap-heading) p{display:none!important}.lab-version{font-size:10px;margin-left:8px}
 dialog.lab-v2 .lab-recipes-toggle{min-height:32px;font-size:12px;padding:5px 12px}
 dialog.lab-v2.recipes-open :is(.lab-presets,.bitmap-quick-presets){position:absolute;top:140px;left:0;right:0;z-index:20;max-height:140px;box-shadow:0 16px 30px #0008;padding:12px!important}
 dialog.lab-v2 :is(.lab-layout,.bitmap-layout){display:flex!important;flex-direction:column!important;overflow:hidden!important}
 dialog.lab-v2 :is(.lab-stage,.bitmap-stage){order:-1!important;flex:0 0 39%!important;min-height:205px!important;height:39%!important;border-bottom:1px solid #819cff44}
 dialog.lab-v2 :is(.lab-controls,.bitmap-controls){flex:1 1 0!important;min-height:0!important;overflow:auto!important;border:0!important;padding:0 16px 32px!important;padding-bottom:max(32px,env(safe-area-inset-bottom))!important}
 dialog.lab-v2 .lab-section-tabs{margin:0 -16px 16px;padding:8px 12px;gap:4px}
 dialog.lab-v2 .lab-section-tabs button{min-height:40px;font-size:12px}
 dialog.lab-v2 :is(.lab-stage-top,.bitmap-stage-top){flex:0 0 36px!important;min-height:36px!important;padding:3px 12px!important;gap:6px}
 dialog.lab-v2 :is(.lab-stage-top,.bitmap-stage-top)>span{display:none!important}
 dialog.lab-v2 .bitmap-preview-label{display:none!important}
 dialog.lab-v2 .lab-focus-toggle{font-size:10px;min-height:28px;padding:4px 8px}
 dialog.lab-v2 .lab-transport button{font-size:11px!important;min-height:28px}dialog.lab-v2 .lab-transport input{width:72px}
 dialog.lab-v2 :is(.lab-preview,.bitmap-canvas-area){padding:12px!important}
 dialog.lab-v2 :is(.lab-stage-bottom,.bitmap-stage-bottom){flex:0 0 auto!important;min-height:48px!important;padding:5px 10px!important;gap:6px;justify-content:flex-start!important;white-space:nowrap}
 dialog.lab-v2 :is(.lab-stage-bottom,.bitmap-stage-bottom) button{font-size:11px!important;min-height:34px!important;padding:7px 12px!important}
 dialog.lab-v2 :is(.lab-stage-bottom,.bitmap-stage-bottom) select{min-height:32px!important;font-size:11px!important;padding:4px!important}
 dialog.lab-v2 .bitmap-transparent-option{display:none!important}
 dialog.lab-v2 :is(.lab-view-zoom,.bitmap-zoom-dock){inset:auto 12px 58px auto!important}
 dialog.lab-v2 :is([data-lab-zoom-fit],[data-bitmap-zoom-fit]){min-height:28px!important;font-size:10px!important;padding:5px 9px!important}
 dialog.lab-v2 .lab-compare{min-height:30px;font-size:10px;padding:0 12px}dialog.lab-v2 .lab-compare>span{font-size:9px}
 dialog.lab-v2 .lab-composition-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 dialog.lab-v2 .lab-composition-picker button{padding:8px;min-height:80px}dialog.lab-v2 .lab-composition-picker span{font-size:10px;overflow-wrap:anywhere}
 dialog.lab-v2.preview-focus :is(.lab-stage,.bitmap-stage){flex:1 1 100%!important;height:100%!important}
 dialog.lab-v2 .lab-empty{padding:10px!important}dialog.lab-v2 .lab-empty strong{font-size:15px!important}dialog.lab-v2 .lab-empty span{font-size:11px!important}
}
@media(max-height:680px) and (max-width:760px){dialog.lab-v2 :is(.lab-topbar,.bitmap-topbar){flex-basis:84px!important;min-height:84px!important}dialog.lab-v2 :is(.lab-stage,.bitmap-stage){min-height:170px!important}dialog.lab-v2 .lab-heading{flex-basis:42px!important;min-height:42px!important}}

/* Respect algorithm availability and native hidden states. */
dialog.lab-v2 [hidden]{display:none!important}
dialog.lab-v2 input:disabled,dialog.lab-v2 select:disabled{opacity:.35;cursor:not-allowed}
/* V2.1: fit stays in the preview toolbar, never over export. */
dialog.lab-v2 :is(.lab-view-zoom,.bitmap-zoom-dock){display:none!important}
dialog.lab-v2 .lab-fit-top{position:static!important;inset:auto!important;transform:none!important;flex:0 0 auto!important;min-height:34px!important;padding:6px 12px!important;border-radius:7px!important;box-shadow:none!important;font-size:11px!important}
dialog.lab-v2 .lab-compare-tools{display:flex;align-items:center;gap:8px;min-width:0}
dialog.lab-v2 .lab-compare-tools button{min-height:34px;padding:6px 12px;border:1px solid #ffffff30;border-radius:7px;color:#c6d3f6;background:#ffffff05;font:600 12px Manrope,sans-serif;cursor:pointer}
dialog.lab-v2 .lab-compare-tools button[aria-pressed=true]{background:#819cff24;border-color:#9bb1ff;color:#eff3ff}
dialog.lab-v2 .lab-compare-tools button:disabled{opacity:.35;cursor:not-allowed}
dialog.lab-v2 .lab-compare-tools input[type=range]{width:90px!important;flex:0 1 90px}
dialog.lab-v2[data-tool-kind=texture] .lab-transport{display:none!important}
dialog.lab-v2 .lab-compare-divider{width:20px!important;margin-left:-10px;background:linear-gradient(90deg,transparent 9px,#fff 9px,#fff 11px,transparent 11px)!important;pointer-events:auto!important;cursor:ew-resize;touch-action:none;box-shadow:none}
dialog.lab-v2 .lab-compare-divider::after{width:30px;height:30px;font-size:13px;box-shadow:0 3px 12px #0008;pointer-events:none}
dialog.lab-v2 .lab-canvas-frame:not(.is-comparing) .lab-original-canvas,dialog.lab-v2 .lab-canvas-frame:not(.is-comparing) .lab-compare-divider{display:none!important}
dialog.lab-v2 .lab-split-labels{position:absolute;inset:12px 12px auto;z-index:4;display:none;justify-content:space-between;pointer-events:none}
dialog.lab-v2 .is-comparing .lab-split-labels{display:flex}
dialog.lab-v2 .lab-split-labels span{font:11px Manrope,sans-serif;background:#111a;color:white;padding:5px 9px;border-radius:5px}
dialog.lab-v2 .lab-layer:has(.lab-layer-editor){display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;border:1px solid #819cff66!important;background:#819cff0a}
dialog.lab-v2 .lab-layer-editor{grid-column:1/-1;display:block;padding-top:14px;margin-top:6px;border-top:1px solid #819cff33}
dialog.lab-v2 .lab-layer-editor :is(.lab-slider,.lab-field){padding:9px!important;margin-bottom:8px!important}
dialog.lab-v2 .lab-layer-editor .lab-slider>span{margin-bottom:4px!important}
dialog.lab-v2 .lab-layer-editor .lab-number{min-height:27px!important;padding:3px 8px!important}
dialog.lab-v2 .lab-layer-editor input[type=range]{height:25px!important}
dialog.lab-v2 :is(.lab-presets,.bitmap-quick-presets){max-height:180px!important;align-items:stretch!important}
dialog.lab-v2 :is(.lab-presets,.bitmap-quick-presets)>div{display:flex;gap:10px;overflow:auto;align-items:stretch}
dialog.lab-v2 :is(.lab-presets,.bitmap-quick-presets) .lab-recipe-card{display:grid!important;grid-template-columns:32px 1fr;grid-template-rows:auto auto;align-content:center;align-items:center;gap:4px 10px;flex:0 0 210px;min-width:210px;min-height:88px!important;padding:12px!important;text-align:left;white-space:normal!important;background:#ffffff04;border:1px solid #ffffff20;border-radius:10px}
dialog.lab-v2 .lab-recipe-card b{font:600 12px/1.3 Manrope,sans-serif;color:#eff2fb}
dialog.lab-v2 .lab-recipe-card small{font:11px/1.4 Manrope,sans-serif;color:#a2abc2;grid-column:2}
dialog.lab-v2 .lab-recipe-card:hover,dialog.lab-v2 .lab-recipe-card.is-active{border-color:#9bb1ff!important;background:#819cff1b!important}
dialog.lab-v2 .lab-recipe-card .recipe-swatch{grid-row:1/3;width:32px;height:42px;border-radius:4px;border:1px solid #ffffff25;background:radial-gradient(#111 35%,transparent 36%) 0 0/6px 6px,#f5eee2}
dialog.lab-v2 .recipe-swatch.recipe-swatch-1{background:repeating-conic-gradient(#e95138 0 25%,#ffe5ce 0 50%) 0 0/7px 7px}
dialog.lab-v2 .recipe-swatch.recipe-swatch-2{background:repeating-conic-gradient(#162c7e 0 25%,#e3eaff 0 50%) 0 0/11px 11px}
dialog.lab-v2 .recipe-swatch.recipe-swatch-3{background:radial-gradient(#e7487c88 30%,transparent 31%) 0 0/7px 7px,radial-gradient(#3ba5b799 30%,transparent 31%) 3px 3px/7px 7px,#e9db8c}
dialog.lab-v2 .recipe-swatch.recipe-swatch-4{background:repeating-conic-gradient(#171717 0 25%,#f7f0e1 0 50%) 0 0/3px 5px}
dialog.lab-v2 .recipe-swatch.recipe-swatch-5{background:repeating-linear-gradient(0deg,transparent 0 4px,#14242a 4px 6px) 0 0/5px 7px,#d9efb9}
dialog.lab-v2 .recipe-swatch.recipe-swatch-6{background:repeating-linear-gradient(120deg,#282118 0 1px,#eee4cf 1px 4px)}
@media(max-width:760px){
 dialog.lab-v2 :is(.lab-stage-top,.bitmap-stage-top){gap:6px!important;flex-wrap:wrap;min-height:38px!important;height:auto!important}
 dialog.lab-v2 .lab-fit-top{min-height:28px!important;font-size:10px!important;padding:4px 8px!important}
 dialog.lab-v2 .lab-compare-tools{gap:5px}
 dialog.lab-v2 .lab-compare-tools button{min-height:28px;font-size:10px;padding:4px 7px}
 dialog.lab-v2 .lab-compare-tools input[type=range]{width:60px!important;flex-basis:60px}
 dialog.lab-v2 :is(.lab-presets,.bitmap-quick-presets) .lab-recipe-card{flex-basis:190px;min-width:190px}
 dialog.lab-v2 .lab-layer-editor .lab-slider>span{font-size:12px!important}
 dialog.lab-v2 .lab-split-labels{inset:6px 6px auto}dialog.lab-v2 .lab-split-labels span{font-size:10px;padding:3px 6px}
}
/* Keep the comparison frame free to zoom along with both images. */
dialog.lab-v2 .lab-canvas-frame{max-width:none!important;max-height:none!important;flex-shrink:0}
/* V2.3: a dedicated library replaces the clipped horizontal recipe strip. */
dialog.lab-v2 .lab-recipe-library{position:absolute;inset:0;z-index:100;isolation:isolate;color:#eef1fa}
dialog.lab-v2 .lab-recipe-library[hidden]{display:none!important}
dialog.lab-v2 .lab-recipe-backdrop{position:absolute;inset:0;background:#080a10aa;backdrop-filter:blur(5px)}
dialog.lab-v2 .lab-recipe-panel{position:absolute;top:0;right:0;bottom:0;display:flex;flex-direction:column;width:min(820px,85%);height:100%;min-width:0;min-height:0;padding:0;border-left:1px solid #9bb1ff40;background:#181c25;box-shadow:-24px 0 100px #0008;overflow:hidden;animation:recipeLibraryEnter .23s ease-out}
dialog.lab-v2 .lab-recipe-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:0 0 auto;padding:24px 24px 18px;border-bottom:1px solid #ffffff12}
dialog.lab-v2 .lab-recipe-header>div{min-width:0}
dialog.lab-v2 .lab-recipe-header>div>span{font:500 10px/1.5 'DM Mono',monospace;letter-spacing:.12em;color:#94aaf3}
dialog.lab-v2 .lab-recipe-header h3{margin:6px 0 0;color:#eff3ff;font:600 26px/1.15 'Space Grotesk',Manrope,sans-serif;letter-spacing:-.8px;overflow-wrap:anywhere}
dialog.lab-v2 .lab-recipe-close{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;min-height:42px;padding:0;border:1px solid #ffffff30;border-radius:50%;background:#ffffff06;color:#e0e8ff;font:26px/1 Manrope,sans-serif;cursor:pointer}
dialog.lab-v2 .lab-recipe-close:hover{background:#819cff24;border-color:#a6bcff}
dialog.lab-v2 .lab-recipe-search-row{display:flex;align-items:flex-end;gap:12px;flex:0 0 auto;padding:18px 24px 10px}
dialog.lab-v2 .lab-recipe-search-row label{display:grid;gap:8px;flex:1;min-width:0}
dialog.lab-v2 .lab-recipe-search-row label>span{font:500 12px/1.4 Manrope,sans-serif;color:#c0c9df}
dialog.lab-v2 .lab-recipe-search-row input{box-sizing:border-box;width:100%;min-width:0;height:46px;min-height:46px;margin:0;padding:10px 14px;border:1px solid #ffffff26;border-radius:9px;background:#10141d;color:#f0f3fc;font:400 16px/1.5 Manrope,sans-serif;outline-offset:2px}
dialog.lab-v2 .lab-recipe-search-row input::placeholder{color:#76829d}
dialog.lab-v2 .lab-recipe-search-row input:focus{outline:2px solid #9bb1ff}
dialog.lab-v2 .lab-recipe-clear{height:46px;padding:8px 12px;border:1px solid #ffffff20;border-radius:8px;background:transparent;color:#bcc9eb;font:500 12px Manrope,sans-serif;cursor:pointer}
dialog.lab-v2 .lab-recipe-meta{flex:0 0 auto;padding:0 24px 12px;color:#8e9ab6;font:11px/1.5 'DM Mono',monospace}
dialog.lab-v2 .lab-recipe-scroll{flex:1 1 0;min-width:0;min-height:0;padding:0 24px 24px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#6c7da2 #151923;scrollbar-gutter:stable}
dialog.lab-v2 .lab-recipe-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(128px,auto);gap:12px;width:100%;min-width:0;overflow:visible!important}
dialog.lab-v2 .lab-recipe-library .lab-recipe-card{position:relative;display:grid!important;grid-template-columns:32px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;align-content:center;gap:7px 11px;box-sizing:border-box;min-width:0!important;max-width:100%!important;width:100%!important;height:auto!important;min-height:128px!important;flex:none!important;padding:16px 12px!important;border:1px solid #ffffff20;border-radius:11px;background:linear-gradient(145deg,#252c3d,#1d2330);color:#e6ecff;text-align:left;white-space:normal!important;overflow:visible!important;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
dialog.lab-v2 .lab-recipe-library .lab-recipe-card b{min-width:0;max-width:none;font:600 13px/1.4 Manrope,sans-serif;color:#f0f3fc;white-space:normal;overflow-wrap:anywhere}
dialog.lab-v2 .lab-recipe-library .lab-recipe-card small{grid-column:1/-1;min-width:0;font:400 12px/1.5 Manrope,sans-serif;color:#a4afc9;white-space:normal;overflow-wrap:anywhere}
dialog.lab-v2 .lab-recipe-library .lab-recipe-card .recipe-swatch{grid-row:1;display:block;flex:none;width:32px;height:38px;min-width:0;margin:0}
dialog.lab-v2 .lab-recipe-library .lab-recipe-card:hover{border-color:#9bb1ff;box-shadow:inset 0 0 0 1px #9bb1ff33}
dialog.lab-v2 .lab-recipe-library .lab-recipe-card.is-selected{border-color:#a8bdff;background:linear-gradient(145deg,#344369,#242d42);box-shadow:inset 0 0 0 1px #9bb1ff44}
dialog.lab-v2 .lab-recipe-library .lab-recipe-card[hidden]{display:none!important}
dialog.lab-v2 .lab-recipe-empty{margin:28px 0;padding:24px;border:1px dashed #9bb1ff40;border-radius:10px;color:#acb8d7;font:14px/1.6 Manrope,sans-serif;text-align:center}
dialog.lab-v2 .lab-recipe-panel>footer{position:static;flex:0 0 auto;padding:14px 24px;border-top:1px solid #ffffff15;background:#151923;color:#9aa8c8;font:12px/1.5 Manrope,sans-serif}
dialog.lab-v2.recipe-library-open .lab-recipes-toggle{background:#819cff30;border-color:#adc1ff}
@keyframes recipeLibraryEnter{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:1000px){dialog.lab-v2 .lab-recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}dialog.lab-v2 .lab-recipe-panel{width:min(660px,88%)}}
@media(max-width:760px){
 dialog.lab-v2 .lab-recipe-panel{inset:auto 0 0;width:100%;height:88%;max-height:100%;border:1px solid #9bb1ff33;border-bottom:0;border-radius:18px 18px 0 0;animation:recipeLibraryRise .23s ease-out}
 dialog.lab-v2 .lab-recipe-header{padding:18px 16px 14px;gap:10px}
 dialog.lab-v2 .lab-recipe-header h3{font-size:22px}
 dialog.lab-v2 .lab-recipe-header>div>span{font-size:9px}
 dialog.lab-v2 .lab-recipe-search-row{padding:12px 16px 8px;gap:8px}
 dialog.lab-v2 .lab-recipe-search-row label>span{font-size:11px}
 dialog.lab-v2 .lab-recipe-meta{padding:0 16px 10px}
 dialog.lab-v2 .lab-recipe-scroll{padding:0 16px 20px}
 dialog.lab-v2 .lab-recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 dialog.lab-v2 .lab-recipe-library .lab-recipe-card{padding:13px 10px!important;min-height:132px!important;gap:8px}
 dialog.lab-v2 .lab-recipe-library .lab-recipe-card b{font-size:12px}
 dialog.lab-v2 .lab-recipe-library .lab-recipe-card small{font-size:11px}
 dialog.lab-v2 .lab-recipe-panel>footer{padding:12px 16px max(12px,env(safe-area-inset-bottom));font-size:11px}
}
@media(max-width:340px){dialog.lab-v2 .lab-recipe-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-height:520px){dialog.lab-v2 .lab-recipe-panel{height:100%;max-height:100%;top:0;border-radius:0}dialog.lab-v2 .lab-recipe-header{padding:10px 16px}dialog.lab-v2 .lab-recipe-search-row{padding-top:8px}dialog.lab-v2 .lab-recipe-panel>footer{display:none}}
@media(prefers-reduced-motion:reduce){dialog.lab-v2 .lab-recipe-panel{animation:none}}
