/* 라벨기 탭 (label.js). 디자인 레이어(theme.css) 규칙: 라임은 '눌러야 하는 것'에만, 끝난 것은 흐리게. */
.lb{--lb-warn:#B54708;max-width:760px}
.lb [hidden],#lbFocus [hidden],.lb-undo[hidden]{display:none!important}
.lb .lb-note{background:var(--bb-warn-bg);color:var(--bb-warn);border-radius:var(--bb-r-ctl);padding:12px 14px;font-size:13px;font-weight:600;margin-bottom:14px}
.lb .lb-seg{display:flex;gap:4px;background:var(--bb-white);border:1px solid var(--bb-line);border-radius:var(--bb-r-pill);padding:4px;margin-bottom:16px}
.lb .lb-seg button{flex:1;border:0!important;background:transparent!important;border-radius:var(--bb-r-pill)!important;padding:10px 8px;color:var(--bb-muted)!important}
.lb .lb-seg button.on{background:var(--bb-ink)!important;color:var(--bb-white)!important}
.lb .lb-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.lb .lb-card{background:var(--bb-white);border:1px solid var(--bb-line);border-radius:var(--bb-r-card);padding:14px}
.lb .lb-t{font-size:12px;color:var(--bb-muted);font-weight:700;margin-bottom:4px}
.lb .lb-main{font-weight:800;font-size:15px;display:flex;align-items:center;gap:8px;min-width:0}
.lb .lb-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb .lb-sub{font-size:12px;color:var(--bb-muted);margin-top:3px;min-height:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb .lb-err{font-size:12px;color:var(--bb-red);margin-top:3px}
.lb .lb-card button{margin-top:8px;padding:6px 12px;font-size:12px}
.lb .dot{width:10px;height:10px;border-radius:50%;flex:none;background:var(--bb-field)}
.lb .dot.ok{background:var(--bb-lime-text)}.lb .dot.warn{background:var(--lb-warn)}.lb .dot.err{background:var(--bb-red)}.lb .dot.busy{background:var(--bb-ink)}
.lb .lb-quick{background:var(--bb-white);border:1px solid var(--bb-line);border-radius:var(--bb-r-card);padding:4px 14px;margin-bottom:12px}
.lb .lb-qrow{display:flex;align-items:center;gap:10px;padding:10px 0}
.lb .lb-qrow+.lb-qrow,.lb .lb-qedit+.lb-qrow{border-top:1px solid var(--bb-line-soft)}
.lb .lb-qk{font-size:13px;color:var(--bb-muted);font-weight:700;width:44px;flex:none}
.lb .lb-qv{flex:1;min-width:0;font-weight:700;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb .lb-qrow button{font-size:12px;padding:6px 10px;white-space:nowrap}
.lb .lb-qedit{padding:0 0 12px}
.lb .lb-btns{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}
.lb .lb-mode{display:flex;gap:4px;background:var(--bb-white);border:1px solid var(--bb-line);border-radius:var(--bb-r-ctl);padding:4px;margin-bottom:10px}
.lb .lb-mode button{flex:1;border:0!important;background:transparent!important;padding:11px}
.lb .lb-mode button.on{background:var(--bb-panel)!important;font-weight:800}
.lb .lb-mode.off{opacity:.5;pointer-events:none}
.lb .lb-run{width:100%;padding:18px!important;font-size:18px;border-radius:var(--bb-r-card)!important;background:var(--bb-ink)!important;color:var(--bb-white)!important;border:0!important}
.lb .lb-run.stop{background:var(--bb-red)!important}
.lb .lb-info{text-align:center;font-size:13px;color:var(--bb-muted);margin:8px 0 14px;min-height:19px}
.lb .lb-zoom{width:100%;padding:13px!important;margin-bottom:12px;font-size:15px;border:2px solid var(--bb-ink)!important}
.lb .lb-lh{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:4px 2px 8px}
.lb .lb-lh small{display:block;font-size:12px}
.lb .lb-tools{display:flex;gap:6px}.lb .lb-tools button{font-size:12px;padding:6px 9px;white-space:nowrap}
.lb .lb-tools .danger{color:var(--bb-red)!important}
.lb-sw{position:relative;margin-bottom:8px;touch-action:pan-y;border-radius:var(--bb-r-card)}
.lb-sw>.lb-item,.lb-sw>.lb-fb{margin-bottom:0!important;position:relative;z-index:1;will-change:transform}
.lb-swbg{position:absolute;inset:0;border-radius:inherit;background:#D92D2055;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 18px;font-weight:900;opacity:0}
.lb-sw.moving .lb-swbg{opacity:1}.lb-sw.armed .lb-swbg{background:var(--bb-red)}
.lb .lb-item{width:100%;text-align:left;display:flex;gap:10px;align-items:center;background:var(--bb-white)!important;border:2px solid var(--bb-ink)!important;border-radius:var(--bb-r-card)!important;padding:12px 14px!important;margin-bottom:8px;cursor:pointer;color:var(--bb-ink)!important}
.lb .lb-item.queued,.lb .lb-item.printing{border-color:var(--lb-warn)!important}
.lb .lb-item.failed{border-color:var(--bb-red)!important}
.lb .lb-item.printed,.lb .lb-item.checked{border-color:var(--bb-line)!important;opacity:.55}
.lb .lb-item.k-cancel{border-style:dashed!important;border-color:var(--bb-red)!important}
.lb .lb-body{flex:1;min-width:0}
.lb .lb-nm{font-size:17px;font-weight:800;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.lb .lb-msg{font-size:12px;color:var(--bb-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb .lb-inf{font-size:13px;margin-top:2px}
.lb .lb-tap{font-size:12px;font-weight:800;white-space:nowrap;background:var(--bb-lime);color:var(--bb-ink);border-radius:var(--bb-r-pill);padding:6px 10px}
.lb .lb-item.printed .lb-tap,.lb .lb-item.checked .lb-tap{background:transparent;color:var(--bb-muted);border:1px solid var(--bb-line)}
.lb .lb-item.failed .lb-tap,.lb .lb-item.k-cancel .lb-tap{background:var(--bb-red);color:#fff}
.lb .lb-item.queued .lb-tap,.lb .lb-item.printing .lb-tap{background:var(--bb-warn-bg);color:var(--bb-warn)}
.lb-num{background:var(--bb-ink);color:var(--bb-white);border-radius:6px;padding:0 7px;font-size:14px;font-weight:800}
.lb-opt{border:2px solid var(--bb-ink);border-radius:6px;padding:0 6px;font-size:13px;font-weight:700}
.lb-rep{font-size:11px;background:var(--bb-panel);color:var(--bb-muted);border-radius:var(--bb-r-pill);padding:1px 7px;font-weight:700}
.lb-kb{font-size:12px;font-weight:900;border-radius:6px;padding:1px 7px;color:#fff}
.lb-kb.cancel{background:var(--bb-red)}.lb-kb.edit{background:var(--lb-warn,#B54708)}
.lb-prev{font-size:12px;color:var(--bb-muted);font-weight:600}
.lb details.lb-done summary{cursor:pointer;list-style:none;padding:11px 14px;border-radius:var(--bb-r-ctl);background:var(--bb-panel);font-size:14px;font-weight:800;color:var(--bb-muted);display:flex;justify-content:space-between;margin-bottom:8px}
.lb details.lb-done summary::-webkit-details-marker{display:none}
.lb .lb-empty{text-align:center;color:var(--bb-muted);padding:28px 10px;font-size:14px}
.lb details.lb-feed{background:var(--bb-white);border:1px solid var(--bb-line);border-radius:var(--bb-r-card);padding:8px 12px;margin-top:12px}
.lb details.lb-feed summary{cursor:pointer;color:var(--bb-muted);font-size:13px;padding:4px 0}
.lb .lb-fl{font-size:13px;padding:5px 8px;border-radius:8px;display:flex;gap:6px}
.lb .lb-fl b{white-space:nowrap}.lb .lb-fl span{color:var(--bb-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb .lb-fl.matched{background:var(--bb-lime-wash)}
.lb-alert{background:var(--bb-red);color:#fff;border-radius:var(--bb-r-card);padding:12px 14px;margin-bottom:12px;display:flex;align-items:center;gap:10px}
.lb-alert.warn{background:var(--bb-warn-bg);color:var(--bb-warn)}
.lb-alert .lb-at{flex:1;min-width:0;font-weight:800;font-size:15px;line-height:1.3}
.lb-alert .lb-at small{display:block;font-weight:600;font-size:12px;opacity:.9;color:inherit}
.lb-alert button{background:#fff!important;color:var(--bb-red)!important;border:0!important;font-weight:900;padding:12px 14px;white-space:nowrap}
.lb-alert.warn button{color:var(--bb-warn)!important}
.lb .lb-form .field{margin:12px 0 0}
.lb .lb-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-top:1px solid var(--bb-line-soft)}
.lb .lb-row:first-child{border-top:0}
.lb .lb-row small{display:block;font-size:12px}
.lb .lb-row input[type=checkbox]{width:22px;height:22px;flex:none;accent-color:var(--bb-ink)}
.lb .lb-kh{font-weight:800;font-size:14px;margin:16px 0 2px;padding-top:12px;border-top:1px dashed var(--bb-line)}
.lb .lb-kh small{font-weight:600;font-size:12px;margin-left:4px}
.lb .lb-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lb .lb-preview{background:#fff;border:1px solid var(--bb-line);border-radius:12px;padding:8px;text-align:center;margin-top:12px}
.lb .lb-preview img{max-width:100%;image-rendering:pixelated}
.lb .lb-hist{cursor:pointer}
.lb .lb-hist b{display:block}
.lb table{width:100%;border-collapse:collapse;font-size:13px;margin-top:8px}
.lb td,.lb th{padding:6px 4px;border-bottom:1px solid var(--bb-line);text-align:left;vertical-align:top}
.lb-undo{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:9999;background:var(--bb-ink);color:#fff;border-radius:var(--bb-r-ctl);padding:6px 6px 6px 16px;display:flex;align-items:center;gap:12px;font-size:15px;max-width:calc(100% - 32px)}
.lb-undo span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb-undo button{background:var(--bb-lime)!important;color:var(--bb-ink)!important;border:0!important;padding:10px 14px;white-space:nowrap}
/* 크게 보기 (멀리서 보는 대기열) */
#lbFocus{position:fixed;inset:0;z-index:9000;background:var(--bb-paper);display:flex;flex-direction:column;--fz:1}
#lbFocus .lb-fh{display:flex;align-items:center;gap:8px;padding:calc(10px + env(safe-area-inset-top)) 12px 10px;border-bottom:1px solid var(--bb-line);background:var(--bb-white)}
#lbFocus .lb-ft{flex:1;min-width:0}
#lbFocus .lb-ft b{font-size:18px}
#lbFocus .lb-ft div{font-size:13px;color:var(--bb-muted);display:flex;gap:10px;align-items:center;white-space:nowrap;overflow:hidden}
#lbFocus .lb-fh button{min-width:48px;height:48px;font-size:18px;padding:0 10px}
#lbFocus .lb-fh .x{background:var(--bb-ink)!important;color:#fff!important;border:0!important}
#lbFocus .lb-alert{margin:10px 12px 0}
#lbFList{flex:1;overflow-y:auto;padding:12px 12px calc(24px + env(safe-area-inset-bottom))}
#lbFList .lb-sw{margin-bottom:12px}
.lb-fb{width:100%;display:block;text-align:left;background:var(--bb-white)!important;color:var(--bb-ink)!important;border:3px solid var(--bb-ink)!important;border-radius:var(--bb-r-card)!important;padding:calc(16px * var(--fz)) 16px!important;cursor:pointer}
.lb-fb.next{border-width:5px!important;box-shadow:0 0 0 4px var(--bb-lime)}
.lb-fb .fname{display:block;font-size:calc(44px * var(--fz));font-weight:900;line-height:1.15;white-space:nowrap;overflow:hidden}
.lb-fb .frow{display:flex;align-items:center;gap:10px;margin-top:8px}
.lb-fb .fsub{flex:1;min-width:0;display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:calc(18px * var(--fz));font-weight:700}
.lb-fb .fsub .lb-num{font-size:calc(22px * var(--fz));padding:0 10px}
.lb-fb .fsub .lb-kb{font-size:calc(18px * var(--fz));padding:2px 10px}
.lb-fb .fseq{color:var(--bb-muted);font-weight:800}
.lb-fb .finfo{color:var(--bb-muted);font-weight:600}
.lb-fb .fact{flex:none;font-size:calc(17px * var(--fz));font-weight:900;background:var(--bb-lime);color:var(--bb-ink);border-radius:14px;padding:calc(12px * var(--fz)) calc(20px * var(--fz));min-width:84px;text-align:center}
.lb-fb.queued,.lb-fb.printing{border-color:var(--lb-warn,#B54708)!important}.lb-fb.queued .fact,.lb-fb.printing .fact{background:var(--bb-warn-bg);color:var(--bb-warn)}
.lb-fb.failed{border-color:var(--bb-red)!important}.lb-fb.failed .fact{background:var(--bb-red);color:#fff}
.lb-fb.k-cancel{border-style:dashed!important;border-color:var(--bb-red)!important}.lb-fb.k-cancel .fact{background:var(--bb-red);color:#fff}
.lb-fb.printed,.lb-fb.checked{border-color:var(--bb-line)!important;opacity:.5}.lb-fb.printed .fact,.lb-fb.checked .fact{background:var(--bb-panel);color:var(--bb-muted)}
.lb-fdone{text-align:center;color:var(--bb-muted);font-weight:800;font-size:calc(17px * var(--fz));padding:10px}
.lb-fempty{text-align:center;color:var(--bb-muted);font-size:calc(22px * var(--fz));padding:60px 10px;font-weight:700}
@media(max-width:620px){.lb .lb-grid{gap:8px}.lb .lb-card{padding:12px}}

#lbRoot .lb-grid .lb-card { display: flex; flex-direction: column; align-items: stretch; gap: 8px; }
#lbRoot .lb-grid .lb-t { font-size: 18px; font-weight: 700; }
#lbRoot .lb-grid .lb-main { font-size: 17px; margin: 0; }
#lbRoot .lb-grid button { min-height: 48px; font-size: 16px; margin-top: auto; white-space: normal; }
#lbRoot .lb-connect-help { margin: 0; font-size: 15px; line-height: 1.5; color: var(--bb-muted); }
#lbRoot .lb-grid .lb-err:empty,
#lbRoot .lb-grid .lb-sub:empty { display: none; }
@media(max-width:620px) { #lbRoot .lb-grid { grid-template-columns: 1fr; } }

/* Seller workspace controls share the neutral selection treatment. */
#lbRoot { max-width: 960px; }
#lbRoot .lb-seg { border-radius: 14px; gap: 6px; }
#lbRoot .lb-seg button,
#lbRoot .lb-mode button { min-height: 48px; font-size: 17px; border-radius: 10px !important; }
#lbRoot .lb-seg button.on,
#lbRoot .lb-mode button.on { background: var(--bb-panel) !important; color: var(--bb-ink) !important; font-weight: 750; }
#lbRoot .lb-card,
#lbRoot .lb-quick { border-radius: 18px; }
#lbRoot .lb-card { padding: 18px; }
#lbRoot .lb-grid .lb-sub,
#lbRoot .lb-grid .lb-err { font-size: 15px; line-height: 1.5; white-space: normal; overflow-wrap: anywhere; }
#lbRoot .lb-qk { font-size: 16px; }
#lbRoot .lb-qv { font-size: 16px; line-height: 1.5; overflow-wrap: anywhere; }
#lbRoot .lb-qrow button { min-height: 44px; font-size: 16px; }
#lbRoot .lb-mode { border-radius: 14px; }
#lbRoot .lb-tap { background: var(--bb-panel); color: var(--bb-ink); }
#lbRoot .lb-fl.matched { background: var(--bb-panel); }
#lbRoot .lb-lh { flex-wrap: wrap; gap: 12px; }
#lbRoot .lb-tools { display: flex; flex-wrap: wrap; gap: 8px; }
#lbRoot .lb-tools button { min-height: 44px; font-size: 15px; }
.lb-header-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: flex-end; }
#main .lb-header-actions button { min-height: 48px; font-size: 16px; padding: 10px 14px; white-space: nowrap; }
@media(max-width:620px) {
  .lb-header-actions { width: 100%; justify-content: stretch; }
  #main .lb-header-actions button { flex: 1; padding-inline: 8px; font-size: 16px; }
}
#main .heading > .lb-header-actions { display: flex !important; }
#lbRunInfo:empty { display: none; }
#main .lb-header-actions button:is([data-connection="connected"], [data-connection="printing"]) {
  background: var(--bb-lime-wash);
  color: var(--bb-lime-text);
  border-color: var(--bb-lime-text);
}
#main .lb-header-actions button[data-connection="error"] { border-color: var(--bb-red); color: var(--bb-red); }
.lb-run-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-block: 12px; }
#lbRoot .lb-run-actions button {
  width: 100%;
  min-height: 52px;
  margin: 0;
  padding: 12px !important;
  font-size: 17px;
  line-height: 1.4;
  border-radius: 12px !important;
}
#lbRoot .lb-run-actions .lb-zoom { border: 1px solid var(--bb-line) !important; background: var(--bb-white); color: var(--bb-ink); }

#lbRoot { max-width: none; }
#lbRoot .lb-run-actions { grid-template-columns: 1fr; margin-bottom: 16px; }
.lb-monitor-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 16px; align-items: start; }
.lb-monitor-panel { min-width: 0; padding: 18px; border-radius: 18px; background: var(--bb-white); border: 1px solid var(--bb-line); }
.lb-monitor-panel h2 { margin: 0; font-size: 20px; }
#lbRoot .lb-monitor-panel .lb-lh { margin: 0 0 12px; align-items: start; }
#lbRoot .lb-monitor-panel .lb-zoom { display: block; width: auto; min-height: 44px; margin: 0; padding: 10px 12px !important; font-size: 16px; border: 1px solid var(--bb-line) !important; border-radius: 10px; }
#lbRoot .lb-monitor-panel .lb-tools { margin-bottom: 12px; }
#lbRoot .lb-monitor-panel .lb-feed { margin: 0; padding: 0; }
#lbRoot :is(#lbFeed, #lbList) { max-height: 65dvh; overflow-y: auto; }
@media(max-width:760px) {
  .lb-monitor-grid { grid-template-columns: minmax(0,1fr); }
  #lbRoot #lbFeed { max-height: 32dvh; }
}

#lbFocus { height: 100dvh; overflow: hidden; display: flex; flex-direction: column; }
#lbFocus .lb-fh { flex: 0 0 auto; }
.lb-focus-columns { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 16px; flex: 1; min-height: 0; padding: 16px; overflow: hidden; }
.lb-focus-panel { display: flex; flex-direction: column; min-height: 0; min-width: 0; border: 1px solid var(--bb-line); border-radius: 16px; padding: 16px; overflow: hidden; background: var(--bb-white); }
.lb-focus-panel h2 { font-size: 20px; margin: 0 0 12px; flex-shrink: 0; }
#lbFocus :is(#lbFFeed,#lbFList) { flex: 1; min-height: 0; overflow-y: auto; padding: 0; overscroll-behavior: contain; }
.lb-focus-chat { padding: 12px 0; border-bottom: 1px solid var(--bb-line); overflow-wrap: anywhere; font-size: calc(18px * var(--fz,1)); line-height: 1.5; }
.lb-focus-chat b { color: var(--bb-muted); }
.lb-focus-chat p { margin: 4px 0 0; }
@media(max-width:760px) {
  .lb-focus-columns { grid-template-columns: minmax(0,1fr); grid-template-rows: minmax(0,1fr) minmax(0,1fr); gap: 8px; padding: 8px; }
  .lb-focus-panel { padding: 12px; }
}

#lbRoot .lb-monitor-grid { align-items: stretch; height: min(65dvh, 720px); }
#lbRoot .lb-monitor-panel { display: flex; flex-direction: column; min-height: 0; height: 100%; }
#lbRoot .lb-monitor-panel > :is(.lb-lh,h2,.lb-tools) { flex: 0 0 auto; }
#lbRoot .lb-monitor-panel > :is(#lbFeedBox,#lbList) { flex: 1; min-height: 0; overflow: auto; }
#lbRoot #lbFeed { max-height: none; overflow: visible; }
#lbRoot .lb-fl { font-size: 16px; line-height: 1.6; padding-block: 10px; align-items: start; }
#lbRoot .lb-fl b { font-size: 15px; line-height: 1.6; }
#lbRoot .lb-empty { font-size: 16px; line-height: 1.5; }
@media(max-width:760px) {
  #lbRoot .lb-monitor-grid { height: auto; }
  #lbRoot .lb-monitor-panel { height: 45dvh; min-height: 280px; }
  #lbRoot #lbFeed { max-height: none; }
}
#lbFocus #lbFRun { white-space: nowrap; font-size: 16px; font-weight: 750; background: var(--bb-ink); color: white; border: 1px solid var(--bb-ink); border-radius: 12px; }
#lbFocus #lbFRun.is-collecting { background: #eaf6d0; color: #355b0b; border-color: #d4e9b2; }
@media(max-width:760px) {
  #lbFocus .lb-fh { flex-wrap: wrap; }
  #lbFocus .lb-ft { flex-basis: calc(100% - 60px); order: 0; }
  #lbFocus #lbFClose { order: 1; }
  #lbFocus #lbFRun, #lbFocus #lbFSmaller, #lbFocus #lbFBigger { order: 2; flex: 1; font-size: 15px; padding-inline: 8px; }
}
#lbRoot .lb-fl { display: grid; grid-template-columns: minmax(65px,.3fr) minmax(0,1fr) auto; gap: 12px; align-items: start; }
#lbRoot .lb-fl b, #lbRoot .lb-fl span { white-space: normal; overflow-wrap: anywhere; }
#lbFocus .lb-focus-chat { display: flex; gap: 12px; align-items: start; }
#lbFocus .lb-focus-chat > div { flex: 1; min-width: 0; }
:is(#lbRoot,#lbFocus) [data-print-chat] { width: auto; min-width: 64px; min-height: 44px; padding: 8px 12px; font-size: 16px; font-weight: 700; border-radius: 10px; white-space: nowrap; flex-shrink: 0; }
#lbFocus .lb-live-toggle { display: flex; align-items: center; gap: 8px; font-size: 16px; white-space: nowrap; }
#lbFocus .lb-live-toggle input { width: 20px; height: 20px; margin: 0; accent-color: var(--bb-ink); }
#lbFocus .lb-focus-video { flex: 0 0 40dvh; height: 40dvh; min-height: 0; background: #111; }
#lbFocus .lb-focus-video[hidden] { display: none; }
#lbFocus .lb-focus-video iframe { display: block; width: 100%; height: 100%; border: 0; }
#lbFocus .lb-focus-video > p { color: white; padding: 20px; font-size: 16px; }
@media(max-width:760px){ #lbFocus .lb-live-toggle { order: 2; flex-basis: 100%; min-height: 36px; } }
#lbRoot .lb-run-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; }
#lbRoot .lb-live-toggle { display: flex; align-items: center; gap: 8px; font-size: 16px; }
#lbRoot .lb-live-toggle input { width: 20px; height: 20px; margin: 0; }
#lbRoot .lb-inline-video { height: 40dvh; background: #111; border-radius: 16px; overflow: hidden; margin-bottom: 16px; }
#lbRoot .lb-inline-video[hidden] { display: none; }
#lbRoot .lb-inline-video iframe { display: block; width: 100%; height: 100%; border: 0; }
#lbRoot .lb-inline-video p { color: white; padding: 20px; }
:is(#lbRoot,#lbFocus) :is(.lb-item,.lb-fb):is(.lb-tapped,.queued,.printing) { opacity: .5; transition: opacity .15s ease; }
:is(#lbRoot,#lbFocus) :is(.lb-item,.lb-fb).failed { opacity: 1; }
@media(prefers-reduced-motion:reduce){ :is(#lbRoot,#lbFocus) :is(.lb-item,.lb-fb) { transition: none; } }

/* Keep video and collection/type controls together at every width. */
#lbFocus .lb-focus-toolbar{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;min-width:0;overflow-x:auto;padding-bottom:2px}
#lbFocus .lb-focus-toolbar .lb-live-toggle{flex:0 0 auto!important;order:0!important;min-height:48px;white-space:nowrap;margin:0}
#lbFocus .lb-focus-toolbar button{flex:0 0 auto!important;order:0!important;min-width:44px;height:48px;padding:0 12px;font-size:16px;white-space:nowrap}
#lbRoot .lb-run-actions{flex-wrap:nowrap;overflow-x:auto}
#lbListCount,#lbFCount{display:none}
@media(max-width:760px){#lbFocus .lb-fh{flex-wrap:wrap}#lbFocus .lb-ft{flex:1 0 100%!important}#lbFocus .lb-focus-toolbar{width:100%;flex:0 0 100%}#lbFocus .lb-focus-toolbar .lb-live-toggle{font-size:16px}#lbFocus .lb-focus-toolbar #lbFSmaller,#lbFocus .lb-focus-toolbar #lbFBigger{font-size:16px}}

/* Print feedback stays visible from the click through the printer response. */
:is(#lbRoot,#lbFocus) :is(.lb-item,.lb-fb):is(.lb-tapped,.queued,.printing),
:is(#lbRoot,#lbFocus) [data-print-state]:is([data-print-state="pending"],[data-print-state="queued"],[data-print-state="printing"]) {opacity:1;background:var(--bb-ink,#20251f)!important;color:var(--bb-paper,#fff)!important;border-color:var(--bb-ink,#20251f)!important;}
:is(#lbRoot,#lbFocus) :is(.lb-tapped,.queued,.printing) :is(.lb-tap,.fact),
:is(#lbRoot,#lbFocus) [data-print-state]:is([data-print-state="pending"],[data-print-state="queued"],[data-print-state="printing"]) button {background:#fff!important;color:var(--bb-ink,#20251f)!important;opacity:1;font-weight:800;}
:is(#lbRoot,#lbFocus) [data-print-state="printed"] {background:var(--bb-green-bg,#e7f0e8);color:var(--bb-ink,#20251f);}
:is(#lbRoot,#lbFocus) [data-print-state="failed"] {background:var(--bb-warn-bg,#fff1e5);color:var(--bb-red,#a52b23);}
:is(#lbRoot,#lbFocus) [data-print-chat-row] {transition:background-color .15s ease,color .15s ease;}
:is(#lbRoot,#lbFocus) [data-print-chat-row]:focus-visible {outline:2px solid var(--bb-ink,#20251f);outline-offset:2px;}
@media(prefers-reduced-motion:reduce){:is(#lbRoot,#lbFocus) [data-print-chat-row]{transition:none;}}

:is(#lbRoot,#lbFocus) [data-print-state]:is([data-print-state="pending"],[data-print-state="queued"],[data-print-state="printing"]) :is(b,p,span),
:is(#lbRoot,#lbFocus) :is(.lb-item,.lb-fb):is(.lb-tapped,.queued,.printing) :is(.lb-inf,.lb-msg,.finfo,.fsub) {color:#fff!important;}

/* The live workspace: quiet connection controls, one primary action. */
#lbRoot .lb-connections{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:0 0 16px}
#lbRoot .lb-connections button{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 12px;border:1px solid var(--bb-line);border-radius:10px;background:var(--bb-white);color:var(--bb-ink);font-size:13px;font-weight:650;white-space:nowrap}
#lbRoot .lb-connections button::before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:var(--bb-muted)}
#lbRoot .lb-connections button[data-connection=connected]::before{background:#456f0c}
#lbRoot .lb-connections button[data-connection=error]::before{background:var(--bb-red)}
#lbRoot .lb-connection-error{margin:0 0 16px;font-size:14px;line-height:1.5;color:var(--bb-red)}
#lbRoot .lb-seg{display:flex;gap:24px;padding:0;margin:0 0 20px;border:0;border-bottom:1px solid var(--bb-line);border-radius:0;background:transparent;box-shadow:none}
#lbRoot .lb-seg[hidden]{display:none}
#lbRoot .lb-seg button{flex:none;min-height:44px;padding:10px 0;margin:0 0 -1px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent!important;color:var(--bb-muted);font-size:15px;font-weight:650}
#lbRoot .lb-seg button.on{border-bottom-color:var(--bb-ink);color:var(--bb-ink);background:transparent!important}
#lbRoot .lb-seg button[hidden]{display:none}
#lbRoot .lb-grid[hidden]{display:none!important}
#lbRoot .lb-operation-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 0 20px}
#lbRoot .lb-mode{display:flex;gap:2px;min-width:0;padding:3px;margin:0;border:0;border-radius:10px;background:var(--bb-panel)}
#lbRoot .lb-mode button{flex:1;min-width:0;min-height:38px;padding:8px 10px;border:0;border-radius:8px;font-size:13px;white-space:nowrap;background:transparent;color:var(--bb-muted)}
#lbRoot .lb-mode button.on{background:var(--bb-white)!important;color:var(--bb-ink)!important}
#lbRoot #lbRunBtn{width:auto;min-height:44px;padding:10px 16px!important;margin:0;border:0;border-radius:10px!important;background:var(--bb-ink)!important;color:var(--bb-white)!important;font-size:14px;font-weight:700;white-space:nowrap}
#lbRoot .lb-run-actions{grid-column:1/-1;display:flex;justify-content:flex-end;margin:0;overflow:visible}
#lbRoot .lb-live-toggle{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--bb-muted)}
#lbRoot .lb-live-toggle input{width:16px;height:16px;accent-color:var(--bb-ink)}
#lbRoot .lb-monitor-panel{padding:0;border:0;border-radius:0;background:transparent}
#lbRoot .lb-monitor-panel h2{font-size:17px;font-weight:750;margin:0 0 12px}
#lbRoot .lb-monitor-grid{gap:28px}
#lbRoot .lb-empty{padding:28px 12px;border:1px dashed var(--bb-line);border-radius:12px;font-size:14px;color:var(--bb-muted);text-align:center}
#lbRoot .lb-fl{padding:12px;border-radius:10px;background:var(--bb-white);margin:0 0 8px}
#lbRoot .lb-tools button{min-height:36px;padding:6px 10px;font-size:13px;background:transparent}
#lbRoot .lb-settings-back{min-height:44px;margin:0 0 8px;padding:8px 0;border:0;background:transparent;font-size:14px;text-decoration:underline;text-underline-offset:4px}
#lbRoot .lb-maintenance{padding:16px 0;border-top:1px solid var(--bb-line)}
#lbRoot .lb-maintenance button{min-height:44px;padding:10px 16px;font-size:14px}
.lb-settings-link{min-height:40px;padding:8px 12px;border:1px solid var(--bb-line);border-radius:10px;font-size:14px}

#lbRoot .lb-seg .lb-run-actions{margin-left:auto;align-self:center}

/* Normal workspace: shared 16px/48px controls, with 8–12px group spacing. */
#main #lbRoot .lb-connections { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;margin:0 0 12px; }
#main #lbRoot .lb-connections button { justify-content:center;min-width:0;height:var(--bb-ui-height,48px);min-height:var(--bb-ui-height,48px);padding:10px 12px;border-radius:var(--bb-ui-radius,12px);font-size:var(--bb-ui-font,16px);font-weight:700;line-height:1.25; }
#main #lbRoot .lb-connection-error { padding:10px 12px;margin:0 0 12px;border-radius:var(--bb-ui-radius,12px);background:#fff0ec;color:#a4271b;font-size:var(--bb-ui-detail,14px);line-height:1.5; }
#main #lbRoot .lb-seg { gap:16px;align-items:center;margin:0 0 12px; }
#main #lbRoot .lb-seg>button { height:var(--bb-ui-height,48px);min-height:var(--bb-ui-height,48px);padding:10px 0;font-size:var(--bb-ui-font,16px);font-weight:700;line-height:1.25; }
#main #lbRoot .lb-seg .lb-run-actions { margin:0 0 0 auto;gap:8px; }
#main #lbRoot .lb-live-toggle { min-height:48px;font-size:var(--bb-ui-detail,14px);line-height:1.25;white-space:nowrap; }
#main #lbRoot .lb-live-toggle input { width:20px;height:20px; }
#main #lbRoot .lb-operation-toolbar { gap:8px;margin:0 0 12px; }
#main #lbRoot .lb-mode { gap:4px;padding:4px;border-radius:var(--bb-ui-radius,12px); }
#main #lbRoot .lb-mode button { height:40px;min-height:40px;padding:8px!important;border-radius:8px!important;font-size:var(--bb-ui-font,16px);font-weight:700;line-height:1.25; }
#main #lbRoot #lbRunBtn { height:48px;min-height:48px;padding:10px 16px!important;border-radius:var(--bb-ui-radius,12px)!important;font-size:var(--bb-ui-font,16px);font-weight:700;line-height:1.25; }
#main #lbRoot .lb-info { margin:4px 0 8px;min-height:0;font-size:var(--bb-ui-detail,14px);line-height:1.5; }
#main #lbRoot .lb-info:empty { display:none; }
#main #lbRoot .lb-monitor-grid { gap:16px; }
#main #lbRoot .lb-monitor-panel h2 { margin:0 0 8px;font-size:20px;line-height:1.3; }
#main #lbRoot .lb-seg>button { border-radius:var(--bb-ui-radius,12px)!important; }

/* 출력 모드: 실행 중에도 현재 선택이 선명하게 보이도록 유지 */
#main #lbRoot .lb-mode button.on{background:var(--bb-ink)!important;color:var(--bb-white)!important;font-weight:800}
#main #lbRoot .lb-mode button.on::after{content:"선택됨";display:inline-block;margin-left:6px;font-size:11px;font-weight:650}
#main #lbRoot .lb-mode button:not(.on){background:transparent!important;color:var(--bb-muted)!important}
#main #lbRoot .lb-mode button:focus-visible{outline:2px solid var(--bb-ink);outline-offset:2px}
