.pos-floor-canvas{background:var(--color-surface-subtle,#eceae4);flex:1;width:100%;min-height:560px;position:relative;overflow:auto}.dark .pos-floor-canvas{background:#1f2937}.pos-floor-canvas::-webkit-scrollbar{-webkit-appearance:none;width:14px;height:14px}.pos-floor-canvas::-webkit-scrollbar-track{background:#0000001a}.pos-floor-canvas::-webkit-scrollbar-thumb{background:#fff3 padding-box padding-box;border:2px solid #0000;border-radius:7px}.pos-floor-canvas::-webkit-scrollbar-thumb:hover{background:#ffffff4d padding-box padding-box}.pos-floor-canvas::-webkit-scrollbar-corner{background:#0000001a}.pos-floor-canvas.is-editing{cursor:default}.pos-floor-canvas.is-editing.is-dragging{cursor:grabbing}.pos-floor-canvas.is-fitted{min-height:0}.pos-floor-canvas.is-drop-target{outline-offset:-3px;outline:3px dashed #10b9818c}.pos-floor-room{background:#f5f5f4}.pos-floor-plan{touch-action:manipulation}.pos-floor-plan-grid{background-image:linear-gradient(90deg,#0f172a12 1px,#0000 1px),linear-gradient(#0f172a12 1px,#0000 1px);background-size:20px 20px}.pos-snap-guide{z-index:5;pointer-events:none;background:#ec4899;position:absolute}.pos-table{border-radius:var(--radius-md,10px);padding:var(--space-3,12px);justify-content:start;align-items:center;gap:var(--space-1,4px);color:var(--color-text-contrast,#0f172a);cursor:pointer;text-align:center;border:1px solid #0f172a59;flex-direction:column;font-weight:600;transition:opacity .12s;display:flex;position:relative}.pos-floor-canvas.is-editing .pos-table{cursor:grab;touch-action:none}.pos-floor-canvas.is-editing.is-dragging .pos-table{cursor:grabbing}.pos-table:focus-visible{outline:2px solid var(--color-accent,#2563eb);outline-offset:2px}.pos-table-absolute{z-index:1;position:absolute}.pos-table-rect{color:#f3f7ef;background:radial-gradient(circle at 30% 30%,#ffffff0f,#0000 45%),radial-gradient(circle at 70% 70%,#ffffff0d,#0000 55%),linear-gradient(135deg,#0f2f0f 0%,#1f4d1f 100%);border:none;border-radius:12px;position:relative;box-shadow:inset 0 0 0 2px #0b1f0b,inset 0 0 0 8px #b16a5e}.pos-table-rect.is-powered{background:radial-gradient(circle at 30% 30%,#ffffff17,#0000 45%),radial-gradient(circle at 70% 70%,#ffffff14,#0000 55%),linear-gradient(135deg,#1e6a21 0%,#2f9b3d 100%);border:none}.pos-table-rect .pos-table-name,.pos-table-rect .pos-table-note,.pos-table-rect .pos-table-kind,.pos-table-rect .pos-table-status,.pos-table-rect .pos-table-start{color:#f3f7ef}.pos-table-rect:before,.pos-table-rect:after{content:"";pointer-events:none;z-index:2;border-radius:10px;position:absolute;inset:0}.pos-table-rect:before{background:radial-gradient(circle,#0a0a0a 45%,#0000 55%) 2px 2px/18px 18px no-repeat,radial-gradient(circle,#0a0a0a 45%,#0000 55%) 100% 2px/18px 18px no-repeat,radial-gradient(circle,#0a0a0a 45%,#0000 55%) 2px 100%/18px 18px no-repeat,radial-gradient(circle,#0a0a0a 45%,#0000 55%) 100% 100%/18px 18px no-repeat,radial-gradient(circle,#0a0a0a 45%,#0000 55%) 0/18px 18px no-repeat,radial-gradient(circle,#0a0a0a 45%,#0000 55%) 100%/18px 18px no-repeat}.pos-table-rect[data-orientation=horizontal]:before{background-position:2px 2px,100% 2px,2px 100%,100% 100%,50% 100%,50% 0}.pos-table,.pos-table:hover{opacity:.8}.pos-table.is-powered{opacity:1}.pos-table.is-selected{opacity:1;outline-offset:4px;outline:3px solid #4da3ff}.pos-table.is-blinking{opacity:.2!important}.pos-table-rect.is-blinking{background:radial-gradient(circle at 30% 30%,#ffffff08,#0000 45%),radial-gradient(circle at 70% 70%,#ffffff05,#0000 55%),linear-gradient(135deg,#0a1a0a 0%,#152d15 100%)!important}.pos-table-name{margin-top:var(--space-4,16px);font-size:18px;font-family:var(--font-display,inherit)}.pos-table-kind{color:#0f172ab8;font-size:13px}.pos-table-status{text-transform:uppercase;letter-spacing:.06em;color:#0f172ab3;font-size:12px}.pos-table-timer{color:#f8fafc;letter-spacing:.04em;background:#00000047;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-weight:700;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff14}.pos-table-start{color:#0f172aa6;font-size:12px}.pos-table-rotate{color:#f8fafc;cursor:pointer;z-index:3;backdrop-filter:blur(3px);pointer-events:auto;background:#00000047;border:1px solid #ffffff47;border-radius:8px;place-items:center;width:28px;height:28px;font-size:14px;display:grid;position:absolute;top:6px;left:6px}.pos-table-rotate:hover{background:#00000061}.pos-table.is-bookable{opacity:1;cursor:pointer;transition:filter .12s,box-shadow .12s;box-shadow:0 4px 10px #00000040}.pos-table-rect.is-bookable{box-shadow:0 4px 10px #00000040,inset 0 0 0 2px #0b1f0b,inset 0 0 0 8px #b16a5e}.pos-table.is-bookable:hover,.pos-table.is-bookable:focus-visible{opacity:1;filter:brightness(1.15);box-shadow:0 8px 18px #00000059}.pos-table-rect.is-bookable:hover,.pos-table-rect.is-bookable:focus-visible{box-shadow:0 8px 18px #00000059,inset 0 0 0 2px #0b1f0b,inset 0 0 0 8px #b16a5e}.pos-table.is-occupied{opacity:.55;filter:grayscale(.85);cursor:not-allowed}.pos-table.is-unavailable{opacity:.65;filter:grayscale();cursor:default}.pos-table-note{overflow-wrap:anywhere;max-width:100%;font-size:12px;font-weight:500;line-height:1.2}.pos-table-live{--tile-scale:1;--tile-gap:calc(6px * var(--tile-scale));--tile-gap-tight:calc(2px * var(--tile-scale));--tile-row-label:calc(18px * var(--tile-scale));--tile-row-hero:calc(24px * var(--tile-scale));gap:0;padding:10px 14px}.pos-table-live:not(.pos-table-zone) .pos-table-name{margin-top:calc(10px * var(--tile-scale));font-size:calc(16px * var(--tile-scale));letter-spacing:.06em;text-transform:uppercase;opacity:.75;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-weight:500;line-height:1.1;overflow:hidden}.pos-table-live.is-idle{container-type:inline-size}.pos-table-live.is-idle:not(.pos-table-zone):not(.pos-table-darts) .pos-table-name{font-size:clamp(calc(13px * var(--tile-scale)), 12cqw, var(--tile-row-hero));letter-spacing:.02em;white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;line-height:1.05;display:-webkit-box}.pos-table-live.is-idle:not(.pos-table-zone):not(.pos-table-darts) .pos-table-name.is-short{font-size:clamp(calc(18px * var(--tile-scale)), 22cqw, calc(38px * var(--tile-scale)));letter-spacing:0;font-variant-numeric:tabular-nums;-webkit-line-clamp:1;font-weight:700}.pos-table-live.is-idle.pos-table-darts .pos-table-name{font-size:calc(17px * var(--tile-scale));letter-spacing:.02em;opacity:.85;font-weight:600}.pos-table-live .pos-table-note{margin-top:var(--tile-gap);max-width:100%;line-height:1.15}.pos-table-live.pos-table-darts .pos-table-hero,.pos-table-live.pos-table-darts .pos-table-chip,.pos-table-live.pos-table-darts .pos-table-meta{margin-top:var(--tile-gap)}.pos-table-live.pos-table-darts .pos-table-meta+.pos-table-meta{margin-top:var(--tile-gap-tight)}.pos-table-live.pos-table-darts .pos-table-note>:first-child{margin-top:0}.pos-table-live:not(.pos-table-darts) .pos-table-note{grid-template-rows:var(--tile-row-hero) var(--tile-gap) var(--tile-row-label);place-items:center;display:grid}.pos-table-slot-hero{grid-row:1}.pos-table-slot-label{grid-row:3}.pos-table-live .pos-table-chip{max-width:100%;padding:calc(3px * var(--tile-scale)) calc(6px * var(--tile-scale));font-size:calc(12px * var(--tile-scale));letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;background:#00000042;border-radius:999px;font-weight:600;line-height:1;display:block;overflow:hidden}.pos-table-live .pos-table-chip.is-alert{color:#f8fafc;opacity:1;background:#ef4444}.pos-table-live .pos-table-hero{font-size:var(--tile-row-hero);letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600;line-height:1;display:block}.pos-table-live .pos-table-hero.is-quiet{font-size:calc(var(--tile-row-hero) * .83);opacity:.85;font-weight:600}.pos-table-live .pos-table-meta{max-width:100%;font-size:calc(12px * var(--tile-scale));font-variant-numeric:tabular-nums;opacity:.65;white-space:nowrap;text-overflow:ellipsis;font-weight:500;line-height:1.15;display:block;overflow:hidden}.pos-table-live .pos-table-meta.is-strong{font-size:calc(13px * var(--tile-scale));opacity:.8;font-weight:600}.pos-table-live.is-wide{--tile-row-hero:calc(38px * var(--tile-scale));padding:10px 12px}.pos-table-live.is-wide .pos-table-note{grid-template-columns:minmax(0,1fr);grid-template-rows:var(--tile-row-hero) var(--tile-gap) var(--tile-row-label);align-items:center}.pos-table-live.is-wide .pos-table-foot{justify-content:center;align-items:center;gap:calc(8px * var(--tile-scale));grid-row:3;max-width:100%;display:flex}.pos-table-live.is-wide .pos-table-foot>*{min-width:0}.pos-table-rect.is-powered .pos-table-meta{opacity:.82}.pos-table.is-light-on{opacity:1;cursor:pointer;box-shadow:0 4px 10px #00000040}.pos-table-rect.is-light-on{background:radial-gradient(circle at 30% 30%,#ffffff17,#0000 45%),radial-gradient(circle at 70% 70%,#ffffff14,#0000 55%),linear-gradient(135deg,#1e6a21 0%,#2f9b3d 100%);border:none;box-shadow:0 4px 10px #00000040,inset 0 0 0 2px #0b1f0b,inset 0 0 0 8px #b16a5e}.pos-table.is-light-off{opacity:.55;filter:grayscale(.85);cursor:pointer}.pos-table.is-light-unknown{opacity:.65;filter:grayscale();cursor:pointer}.pos-table.is-light-pending{pointer-events:none;animation:1s ease-in-out infinite pos-light-pulse}@keyframes pos-light-pulse{0%,to{opacity:.85}50%{opacity:.55}}.pos-table.is-light-disabled{pointer-events:none;cursor:default}.pos-fixture{z-index:0;position:absolute}.pos-fixture-shape{transform-origin:50%;background:#b8a894;border-radius:8px;position:absolute;top:50%;left:50%;box-shadow:inset 0 0 0 1px #0000002e}.dark .pos-fixture-shape{background:#6b5f52}.pos-fixture-table{background:#a8845c;border-radius:50%}.dark .pos-fixture-table{background:#6b5540}.pos-fixture-armchair:before,.pos-fixture-sofa:before{content:"";background:#00000038;border-radius:8px 8px 4px 4px;height:26%;position:absolute;top:0;left:0;right:0}.pos-fixture-seat{background:#ffffff38;border-radius:5px;position:absolute;inset:32% 16% 10%}.pos-fixture-sofa .pos-fixture-seat:after{content:"";background:#0000002e;width:2px;position:absolute;top:8%;bottom:8%;left:50%;transform:translate(-50%)}.pos-fixture-screen{background:#3f3f46;border-radius:3px}.dark .pos-fixture-screen{background:#27272a}.pos-fixture-screen:before{content:"";background:linear-gradient(#8fb6d9 0%,#5b7f9e 100%);border-radius:2px;height:52%;position:absolute;bottom:8%;left:3%;right:3%;box-shadow:inset 0 0 0 1px #00000040}.pos-fixture.is-decorative{opacity:.5}.pos-floor-canvas.is-editing .pos-fixture{touch-action:none;cursor:grab}.pos-floor-canvas.is-editing.is-dragging .pos-fixture{cursor:grabbing}.pos-fixture.is-selected .pos-fixture-shape{box-shadow:inset 0 0 0 1px #0000002e,0 0 0 3px #4da3ff}.pos-fixture-handles{z-index:4;gap:4px;display:flex;position:absolute;top:-12px;right:-12px}.pos-fixture-handle{color:#f8fafc;cursor:pointer;backdrop-filter:blur(3px);pointer-events:auto;background:#0000008c;border:1px solid #ffffff47;border-radius:6px;place-items:center;width:24px;height:24px;font-size:13px;line-height:1;display:grid}.pos-fixture-handle:hover{background:#000000bf}.pos-table.pos-table-darts{--darts-inset:7px;--darts-board:56px;--darts-gap:8px;box-sizing:border-box;color:#1f2937;padding:6px 10px 6px calc(var(--darts-inset) + var(--darts-board) + var(--darts-gap));text-align:left;background:#d1f7c4;border:none;justify-content:center;align-items:flex-start}.pos-table-live.pos-table-darts[data-state=running]{background:#86efac}.pos-table-live.pos-table-darts[data-state=overdue]{background:#fecaca}.dark .pos-table-darts{color:#f3f4f6;background:#31513e}.dark .pos-table-live.pos-table-darts[data-state=running]{color:#1f2937;background:#86efac}.dark .pos-table-live.pos-table-darts[data-state=overdue]{color:#1f2937;background:#fecaca}.pos-dartboard{aspect-ratio:1;filter:drop-shadow(0 2px 4px #0000004d);pointer-events:none}.pos-table-darts .pos-dartboard{left:var(--darts-inset);height:var(--darts-board);position:absolute;top:50%;transform:translateY(-50%)}.pos-table-darts .pos-table-name{margin-top:0;font-size:14px;line-height:1.1}.pos-table-darts .pos-table-note{font-size:10px}.pos-table-live.pos-table-darts{--tile-gap:3px;--tile-gap-tight:2px;--tile-row-hero:21px;--darts-caption:11px}.pos-table-live.pos-table-darts .pos-table-name,.pos-table-live.pos-table-darts .pos-table-note{flex-shrink:0}.pos-table-live.pos-table-darts .pos-table-name,.pos-table-live.pos-table-darts .pos-table-chip,.pos-table-live.pos-table-darts .pos-table-meta,.pos-table-live.pos-table-darts .pos-table-meta.is-strong{font-size:var(--darts-caption)}.pos-table-live.pos-table-darts .pos-table-chip{padding:2px 5px}.pos-table-live.pos-table-darts .pos-table-meta.is-strong{opacity:.75;font-weight:500}.pos-table-live.pos-table-darts .pos-table-hero.is-quiet{font-size:var(--tile-row-hero)}.pos-table-zone{--pos-zone-tint:#d1f7c4;background:color-mix(in srgb, var(--pos-zone-tint) 15%, transparent);border:2px solid var(--pos-zone-tint);opacity:1;border-radius:14px;gap:4px;padding:8px 6px;box-shadow:inset 0 0 0 1px #0f172a24}.pos-floor-canvas .pos-table-zone,.pos-table-zone.is-editor{background:color-mix(in srgb, var(--pos-zone-tint) 30%, transparent);border:2px dashed color-mix(in srgb, var(--pos-zone-tint) 40%, #0f172a)}.pos-floor-canvas .pos-table-zone .pos-table-name,.pos-table-zone.is-editor .pos-table-name{box-shadow:0 1px 3px #0f172a59, inset 0 0 0 1px color-mix(in srgb, var(--pos-zone-tint) 40%, #0f172a)}.pos-table-zone:hover:not(.is-unavailable):not(.is-occupied){opacity:1}.pos-table-zone.is-unavailable{--pos-zone-tint:#94a3b8;background:#94a3b81a;border-color:#94a3b899}.pos-table-zone .pos-table-name{overflow-wrap:anywhere;background:var(--pos-zone-tint);color:#0f172a;border-radius:999px;max-width:100%;margin-top:0;padding:3px 10px;font-size:14px;line-height:1.2;box-shadow:0 1px 3px #0f172a59}.pos-table-zone .pos-table-note{color:#0f172a;background:#ffffffeb;border-radius:8px;padding:2px 8px;box-shadow:0 1px 3px #0f172a4d}.pos-table-zone.is-bookable,.pos-table-zone.is-light-on{box-shadow:inset 0 0 0 1px #0f172a24}.pos-table-zone.is-bookable:hover,.pos-table-zone.is-bookable:focus-visible{background:color-mix(in srgb, var(--pos-zone-tint) 30%, transparent);box-shadow:inset 0 0 0 1px #0f172a24}
