.table-floorplan{width:100%}.table-floorplan__viewport{border-radius:var(--radius-xl,.75rem);border:1px solid var(--border);background:var(--card);touch-action:none;width:100%;position:relative;overflow:hidden}.table-floorplan__viewport--panning{cursor:grabbing}.table-floorplan__svg{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;width:100%;height:auto;display:block}.table-floorplan__viewport--panning .table-floorplan__svg{cursor:grabbing}.table-floorplan__backdrop{fill:var(--muted)}.table-floorplan__bg-image{pointer-events:none}.table-floorplan__controls{z-index:2;flex-direction:column;gap:.35rem;display:flex;position:absolute}.table-floorplan__controls--left{top:.6rem;left:.6rem}.table-floorplan__controls--fullscreen{z-index:2;position:absolute;top:.6rem;right:.6rem}.table-floorplan__ctrl-btn{border:1px solid var(--border);background:var(--background);width:2rem;height:2rem;color:var(--foreground);cursor:pointer;border-radius:.5rem;place-items:center;font-size:1.1rem;line-height:1;display:grid;box-shadow:0 1px 2px #00000014}.table-floorplan__ctrl-btn:hover:not(:disabled){background:var(--muted)}.table-floorplan__ctrl-btn:disabled{opacity:.4;cursor:default}.table-floorplan__ctrl-btn svg{width:1rem;height:1rem}.table-floorplan__rect{fill:var(--card);stroke:var(--border);stroke-width:1.5px;transition:fill .15s,stroke .15s}.table-floorplan__table--available .table-floorplan__rect{fill:var(--card);stroke:var(--primary)}.table-floorplan__table--selected .table-floorplan__rect{fill:var(--primary);stroke:var(--primary)}.table-floorplan__table--taken .table-floorplan__rect{fill:var(--secondary);stroke:var(--secondary)}.table-floorplan__table[role=button]{cursor:pointer}.table-floorplan__table[role=button]:focus-visible .table-floorplan__rect{outline:2px solid var(--ring);outline-offset:1px}.table-floorplan__label{font-family:var(--font-display,inherit);text-anchor:middle;dominant-baseline:middle;fill:var(--foreground);pointer-events:none;font-size:6px}.table-floorplan__table--selected .table-floorplan__label,.table-floorplan__table--taken .table-floorplan__label{fill:var(--primary-foreground)}.table-floorplan__number-tag{text-anchor:end;fill:var(--primary-foreground);pointer-events:none;font-size:4.5px}.table-floorplan__vendor-name{text-anchor:middle;dominant-baseline:middle;fill:var(--secondary-foreground);pointer-events:none;font-size:5px;font-weight:700}.table-floorplan__avatar-ring{fill:none;stroke:var(--background);stroke-width:1px}.table-floorplan__table-image{pointer-events:none}
