html, body { margin: 0; width: 100%; height: 100%; overflow: hidden; font: var(--openidea-font-size, 13px) var(--openidea-font-ui, system-ui, sans-serif); color: var(--openidea-fg); background: var(--openidea-bg, transparent); } .toolbar { position: absolute; top: 8px; right: 8px; z-index: 1; display: flex; align-items: center; gap: 2px; padding: 2px; border: 1px solid var(--openidea-border); border-radius: 6px; background: var(--openidea-bg-elevated, var(--openidea-bg)); } .toolbar button, .toolbar select { height: 24px; min-width: 24px; padding: 0 6px; font: inherit; font-size: 12px; color: var(--openidea-fg); background: transparent; border: 1px solid transparent; border-radius: 4px; cursor: pointer; } .toolbar select { border-color: var(--openidea-border); background: var(--openidea-bg-input, transparent); } .toolbar button:hover { background: var(--openidea-bg-hover); } .toolbar .sep { width: 1px; height: 16px; margin: 0 2px; background: var(--openidea-border); } #zoom-label { display: inline-block; min-width: 36px; font-variant-numeric: tabular-nums; } .stage { position: absolute; inset: 0; overflow: auto; cursor: grab; } .stage.panning { cursor: grabbing; } .canvas { display: inline-block; padding: 16px; user-select: none; } .canvas svg { display: block; } .canvas.stale { opacity: 0.35; } .banner { position: absolute; left: 8px; right: 8px; bottom: 8px; z-index: 1; padding: 6px 8px; white-space: pre-wrap; font-family: var(--openidea-font-mono, ui-monospace, monospace); font-size: 12px; color: var(--openidea-danger); border: 1px solid color-mix(in srgb, var(--openidea-danger) 40%, transparent); border-radius: 6px; background: var(--openidea-bg-elevated, var(--openidea-bg)); }