.lb-widget-root {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  font-family: var(--lb-font, system-ui, sans-serif);
  color: var(--lb-text, #111);
  background: var(--lb-canvas-bg, #f4f0e6);
}

.lb-widget-root *,
.lb-widget-root *::before,
.lb-widget-root *::after {
  box-sizing: border-box;
}

.lb-widget-root.lb-widget-root--transparent {
  background: transparent !important;
}

.lb-block {
  position: absolute;
  padding: 10px 12px;
  border: var(--lb-border-w, 2px) solid var(--lb-border, #2b2118);
  border-radius: var(--lb-radius, 0);
  background: var(--lb-panel-bg, rgba(255, 255, 255, 0.55));
  color: var(--lb-text, #111);
  overflow: hidden;
}

.lb-block--stat {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
}

.lb-stat__val {
  font-size: var(--lb-stat-size, 1.6rem);
  font-weight: 800;
  line-height: 1.05;
  color: var(--lb-accent, #c45c00);
  font-variant-numeric: tabular-nums;
}

.lb-stat__lbl {
  font-size: var(--lb-label-size, 0.72rem);
  color: var(--lb-muted, #6b5c4a);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.lb-block--status {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: var(--lb-text-size, 0.85rem);
  font-weight: 600;
}

.lb-status__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 2px solid var(--lb-border, #2b2118);
  background: #9ca3af;
  flex-shrink: 0;
}

.lb-status__dot--on {
  background: #22c55e;
  box-shadow: 0 0 8px rgba(34, 197, 94, 0.6);
}

.lb-block--ticker {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--lb-text-size, 1.2rem);
  font-weight: 700;
  color: var(--lb-accent, #c45c00);
  letter-spacing: 0.03em;
}

.lb-block--label {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--lb-text-size, 0.95rem);
  color: var(--lb-text, #111);
  text-align: center;
}

.lb-block--divider {
  border: none;
  background: transparent;
  padding: 0;
  display: flex;
  align-items: center;
}

.lb-block--divider::after {
  content: "";
  width: 100%;
  height: 2px;
  background: var(--lb-border, #2b2118);
  opacity: 0.7;
}

.lb-block--lastEvent {
  font-family: var(--lb-mono, monospace);
  font-size: var(--lb-text-size, 0.78rem);
  line-height: 1.4;
  display: flex;
  gap: 6px;
  align-items: center;
}

.lb-block--eventLog {
  padding: 8px 10px;
}

.lb-log {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-family: var(--lb-mono, monospace);
  font-size: var(--lb-text-size, 0.74rem);
  line-height: 1.35;
  overflow: auto;
  height: 100%;
}

.lb-log__row {
  display: flex;
  gap: 6px;
  opacity: 0.96;
  white-space: nowrap;
}

.lb-log__tag {
  color: var(--lb-accent, #c45c00);
  font-weight: 600;
  flex-shrink: 0;
}

.lb-log__body {
  color: var(--lb-text, #111);
  overflow: hidden;
  text-overflow: ellipsis;
}
