:root{--tp-bg:#fafafa;--tp-surface:#fff;--tp-surface-2:#f5f5f0;--tp-surface-3:#ededea;--tp-border:#e0e0dc;--tp-border-hover:#d0d0cc;--tp-text:#2d2d2d;--tp-text-muted:#8a8a8a;--tp-accent:#c4a35a;--tp-accent-hover:#b08d3e;--tp-accent-dim:rgba(196,163,90,.12);--tp-danger:#d64545;--tp-warning:#e89b3e;--tp-success:#4caf50;--tp-font:"Nunito Sans",-apple-system,system-ui,sans-serif;--tp-font-heading:"Cormorant Garamond",Georgia,serif;--tp-font-mono:"IBM Plex Mono",monospace}body{background:var(--tp-bg);font-family:var(--tp-font);margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}header[data-astro-cid-nkwmh3dn]{backdrop-filter:blur(16px) saturate(1.4);background:#fafafaeb;position:sticky;top:0;z-index:100}.header-border[data-astro-cid-nkwmh3dn]{background:linear-gradient(90deg,transparent 5%,rgba(196,163,90,.15) 20%,rgba(196,163,90,.35) 50%,rgba(196,163,90,.15) 80%,transparent 95%);height:1px}nav[data-astro-cid-nkwmh3dn]{display:flex;height:3rem;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 1.25em}.back-link[data-astro-cid-nkwmh3dn],nav[data-astro-cid-nkwmh3dn]{align-items:center}.back-link[data-astro-cid-nkwmh3dn]{color:var(--tp-text);display:inline-flex;gap:.5em;opacity:.6;text-decoration:none;transition:opacity .2s ease}.back-link[data-astro-cid-nkwmh3dn] svg[data-astro-cid-nkwmh3dn]{transition:transform .2s ease}.back-link[data-astro-cid-nkwmh3dn] span[data-astro-cid-nkwmh3dn]{font-family:var(--tp-font);font-size:.8rem;font-weight:500;letter-spacing:.02em}.back-link[data-astro-cid-nkwmh3dn]:hover{opacity:1}.back-link[data-astro-cid-nkwmh3dn]:hover svg[data-astro-cid-nkwmh3dn]{transform:translate(-3px)}.nav-label[data-astro-cid-nkwmh3dn]{align-items:center;color:var(--tp-text-muted);display:flex;font-family:var(--tp-font-mono);font-size:.7rem;gap:.5em;letter-spacing:.04em}.label-dot[data-astro-cid-nkwmh3dn]{background:var(--tp-accent);border-radius:50%;box-shadow:0 0 8px #c4a35a80;height:6px;width:6px}main[data-astro-cid-nkwmh3dn]{min-height:calc(100vh - 3rem)}footer[data-astro-cid-nkwmh3dn]{background:radial-gradient(ellipse at center,rgba(196,163,90,.04) 0,transparent 70%),var(--tp-bg);padding:2em 1.5em 2.5em;position:relative;text-align:center}.footer-ornament[data-astro-cid-nkwmh3dn]{color:var(--tp-accent);display:flex;justify-content:center;margin-bottom:1.25em}.footer-svg[data-astro-cid-nkwmh3dn]{height:16px;width:140px}.footer-copy[data-astro-cid-nkwmh3dn]{color:var(--tp-text);font-family:var(--tp-font);font-size:.8rem;letter-spacing:.03em;margin:0 0 .25em;opacity:.4}.footer-tagline[data-astro-cid-nkwmh3dn]{color:var(--tp-accent);font-family:var(--tp-font-heading);font-size:.8rem;font-style:italic;letter-spacing:.04em;margin:0;opacity:.35}@media(max-width:600px){nav[data-astro-cid-nkwmh3dn]{padding:0 1em}}.guest-item.svelte-1597v7l{align-items:center;border:1px solid transparent;border-radius:6px;cursor:default;display:flex;flex-direction:row;justify-content:space-between;padding:.4rem .5rem;transition:all .2s}.guest-item[draggable=true].svelte-1597v7l{border:1px dashed var(--tp-border);cursor:grab}.guest-item[draggable=true].svelte-1597v7l:hover{background:var(--tp-accent-dim);border-color:var(--tp-accent)}.info.svelte-1597v7l{align-items:center;display:flex;flex:1;gap:.35rem;min-width:0}.name.svelte-1597v7l{color:var(--tp-text);font-size:.82rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-badge.svelte-1597v7l{align-items:center;background:var(--tp-surface-3);border:none;border-radius:10px;color:var(--tp-text-muted);cursor:pointer;display:inline-flex;font-family:var(--tp-font);font-size:.65rem;font-weight:600;gap:.2rem;padding:.1rem .4rem;transition:all .2s;white-space:nowrap}.table-badge.svelte-1597v7l svg{opacity:0;transition:opacity .2s}.table-badge.svelte-1597v7l:hover{background:#d645451a;color:var(--tp-danger)}.table-badge.svelte-1597v7l:hover svg{opacity:1}.remove-btn.svelte-1597v7l{align-items:center;background:transparent;border:none;border-radius:4px;color:var(--tp-text-muted);cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;opacity:0;transition:all .2s;width:24px}.guest-item.svelte-1597v7l:hover .remove-btn:where(.svelte-1597v7l){opacity:1}.remove-btn.svelte-1597v7l:hover{background:#d645451a;color:var(--tp-danger)}.guest-list-panel.svelte-x36et2{display:flex;flex-direction:column;gap:.75rem}.input-section.svelte-x36et2{background:var(--tp-surface-2);border:1px solid var(--tp-border);border-radius:8px;padding:.75rem}.guest-input.svelte-x36et2{background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:6px;box-sizing:border-box;color:var(--tp-text);font-family:var(--tp-font);font-size:.8rem;padding:.45rem .6rem;resize:vertical;transition:border-color .2s;width:100%}.guest-input.svelte-x36et2:focus{border-color:var(--tp-accent);outline:2px solid var(--tp-accent-dim);outline-offset:2px}.guest-input.svelte-x36et2::-moz-placeholder{color:var(--tp-text-muted)}.guest-input.svelte-x36et2::placeholder{color:var(--tp-text-muted)}.input-actions.svelte-x36et2{align-items:center;display:flex;gap:.5rem;margin-top:.5rem}.btn-primary.svelte-x36et2{background:var(--tp-accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:var(--tp-font);font-size:.78rem;font-weight:600;padding:.5rem .75rem;transition:all .2s}.btn-primary.svelte-x36et2:hover{background:var(--tp-accent-hover)}.count-badge.svelte-x36et2{font-size:.7rem;font-weight:600}.count-badge.svelte-x36et2,.empty-state.svelte-x36et2{color:var(--tp-text-muted)}.empty-state.svelte-x36et2{font-size:.82rem;padding:2rem 1rem;text-align:center}.empty-state.svelte-x36et2 p:where(.svelte-x36et2){margin:0}.guest-list.svelte-x36et2{gap:.75rem}.guest-list.svelte-x36et2,.section.svelte-x36et2{display:flex;flex-direction:column}.section.svelte-x36et2{gap:.15rem}.section-header.svelte-x36et2{color:var(--tp-text-muted);font-size:.65rem;font-weight:700;letter-spacing:.08em;margin:0 0 .4rem;padding:0 .5rem;text-transform:uppercase}.seat-group-toggle.svelte-x36et2{align-items:center;border-radius:6px;color:var(--tp-text);cursor:pointer;display:flex;font-size:.78rem;gap:.4rem;padding:.35rem .5rem;transition:background .2s}.seat-group-toggle.svelte-x36et2:hover{background:var(--tp-surface-2)}.seat-group-toggle.svelte-x36et2 input[type=checkbox]:where(.svelte-x36et2){accent-color:var(--tp-accent)}.guest-group.svelte-x36et2{margin:.15rem 0}.group-header.svelte-x36et2{align-items:center;display:flex;justify-content:space-between;padding:.2rem .5rem .2rem .75rem}.group-name.svelte-x36et2{color:var(--tp-accent);font-size:.65rem;font-weight:600;letter-spacing:.02em}.group-header.svelte-x36et2 .remove-btn:where(.svelte-x36et2){align-items:center;background:transparent;border:none;border-radius:4px;color:var(--tp-text-muted);cursor:pointer;display:flex;flex-shrink:0;height:20px;justify-content:center;opacity:0;transition:all .2s;width:20px}.guest-group.svelte-x36et2:hover .group-header:where(.svelte-x36et2) .remove-btn:where(.svelte-x36et2){opacity:1}.group-header.svelte-x36et2 .remove-btn:where(.svelte-x36et2):hover{background:#d645451a;color:var(--tp-danger)}.group-members.svelte-x36et2{border-left:2px solid var(--tp-accent);margin-left:.25rem;padding-left:.35rem}.form-panel.svelte-16pvvx6{background:var(--tp-surface-2);border:1px solid var(--tp-border);border-radius:8px;display:flex;flex-direction:column;gap:.65rem;padding:.75rem}.section-header.svelte-16pvvx6{color:var(--tp-text-muted);font-size:.65rem;font-weight:700;letter-spacing:.08em;margin:0 0 .4rem;text-transform:uppercase}.shape-toggle.svelte-16pvvx6{display:flex;gap:.35rem}.shape-btn.svelte-16pvvx6{align-items:center;background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:6px;color:var(--tp-text-muted);cursor:pointer;display:flex;flex:1;font-family:var(--tp-font);font-size:.78rem;font-weight:600;gap:.3rem;justify-content:center;padding:.45rem .6rem;transition:all .2s}.shape-btn.svelte-16pvvx6:hover{border-color:var(--tp-border-hover)}.shape-btn.active.svelte-16pvvx6{background:var(--tp-accent-dim);border-color:var(--tp-accent);color:var(--tp-accent)}.form-fields.svelte-16pvvx6{display:flex;flex-wrap:wrap;gap:.5rem}.field.svelte-16pvvx6{display:flex;flex:1;flex-direction:column;gap:.2rem;min-width:70px}.field-label.svelte-16pvvx6{color:var(--tp-text-muted);font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.field-input.svelte-16pvvx6{background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:6px;box-sizing:border-box;color:var(--tp-text);font-family:var(--tp-font);font-size:.8rem;padding:.45rem .6rem;transition:border-color .2s;width:100%}.field-input.svelte-16pvvx6:focus{border-color:var(--tp-accent);outline:2px solid var(--tp-accent-dim);outline-offset:2px}.seat-sides.svelte-16pvvx6{display:flex;flex-direction:column;gap:.25rem}.side-checkboxes.svelte-16pvvx6{display:flex;flex-wrap:wrap;gap:.4rem}.side-check.svelte-16pvvx6{align-items:center;color:var(--tp-text);cursor:pointer;display:flex;font-size:.75rem;gap:.25rem}.side-check.svelte-16pvvx6 input[type=checkbox]:where(.svelte-16pvvx6){accent-color:var(--tp-accent)}.side-check.svelte-16pvvx6 span:where(.svelte-16pvvx6){text-transform:capitalize}.form-actions.svelte-16pvvx6{display:flex;gap:.35rem}.btn-primary.svelte-16pvvx6{background:var(--tp-accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:var(--tp-font);font-size:.78rem;font-weight:600;padding:.5rem .75rem;transition:all .2s}.btn-primary.svelte-16pvvx6:hover{background:var(--tp-accent-hover)}.btn-secondary.svelte-16pvvx6{background:var(--tp-surface-2);border:1px solid var(--tp-border);border-radius:6px;color:var(--tp-text);cursor:pointer;font-family:var(--tp-font);font-size:.78rem;font-weight:600;padding:.5rem .75rem;transition:all .2s}.btn-secondary.svelte-16pvvx6:hover{border-color:var(--tp-border-hover)}.action-buttons.svelte-e0otkr{display:flex;flex-shrink:0;gap:.15rem}.action-btn.svelte-e0otkr{align-items:center;background:transparent;border:none;border-radius:4px;color:var(--tp-text-muted);cursor:pointer;display:flex;height:26px;justify-content:center;transition:all .2s;width:26px}.action-btn.svelte-e0otkr:hover{background:var(--tp-surface-3);color:var(--tp-text)}.action-btn.active.svelte-e0otkr{background:var(--tp-accent-dim);color:var(--tp-accent)}.action-btn-danger.svelte-e0otkr:hover{background:#d645451a;color:var(--tp-danger)}.edit-controls.svelte-e0otkr{border-top:1px solid var(--tp-border);display:flex;flex-direction:column;gap:.35rem;margin-top:.4rem;padding-top:.4rem;width:100%}.edit-row.svelte-e0otkr{align-items:center;display:flex;justify-content:space-between}.edit-row-label.svelte-e0otkr{color:var(--tp-text-muted);font-family:var(--tp-font);font-size:.7rem;font-weight:600}.seat-stepper.svelte-e0otkr{gap:.15rem}.seat-stepper.svelte-e0otkr,.stepper-btn.svelte-e0otkr{align-items:center;display:flex}.stepper-btn.svelte-e0otkr{background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:4px;color:var(--tp-text-muted);cursor:pointer;height:18px;justify-content:center;padding:0;transition:all .2s;width:18px}.stepper-btn.svelte-e0otkr:hover:not(:disabled){background:var(--tp-accent-dim);border-color:var(--tp-accent);color:var(--tp-accent)}.stepper-btn.svelte-e0otkr:disabled{cursor:not-allowed;opacity:.3}.seat-count.svelte-e0otkr{color:var(--tp-text-muted);font-size:.68rem;min-width:1.2em;text-align:center}.side-toggles.svelte-e0otkr{display:flex;gap:.2rem}.side-toggle-btn.svelte-e0otkr{align-items:center;background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:3px;color:var(--tp-text-muted);cursor:pointer;display:flex;font-family:var(--tp-font);font-size:.6rem;font-weight:700;height:18px;justify-content:center;opacity:.5;padding:0;transition:all .2s;width:20px}.side-toggle-btn.active.svelte-e0otkr,.side-toggle-btn.svelte-e0otkr:hover{border-color:var(--tp-accent);color:var(--tp-accent);opacity:1}.side-toggle-btn.active.svelte-e0otkr{background:var(--tp-accent-dim)}.table-config-panel.svelte-plmkhy{display:flex;flex-direction:column;gap:.75rem}.add-table-btn.svelte-plmkhy{align-items:center;display:flex;gap:.35rem;justify-content:center;width:100%}.btn-primary.svelte-plmkhy{background:var(--tp-accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:var(--tp-font);font-size:.78rem;font-weight:600;padding:.5rem .75rem;transition:all .2s}.btn-primary.svelte-plmkhy:hover{background:var(--tp-accent-hover)}.table-list.svelte-plmkhy{display:flex;flex-direction:column;gap:.25rem}.section-header.svelte-plmkhy{color:var(--tp-text-muted);font-size:.65rem;font-weight:700;letter-spacing:.08em;margin:0 0 .4rem;text-transform:uppercase}.table-item.svelte-plmkhy{border:1px solid transparent;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;padding:.5rem;transition:all .2s}.table-item.svelte-plmkhy:hover{background:var(--tp-surface-2)}.table-item.selected.svelte-plmkhy{background:var(--tp-accent-dim);border-color:var(--tp-accent)}.table-row.svelte-plmkhy{flex-wrap:wrap;justify-content:space-between}.table-info.svelte-plmkhy,.table-row.svelte-plmkhy{align-items:center;display:flex}.table-info.svelte-plmkhy{flex:1;gap:.4rem;min-width:0}.table-icon.svelte-plmkhy{align-items:center;color:var(--tp-text-muted);display:flex;flex-shrink:0}.label-btn.svelte-plmkhy{background:none;border:none;cursor:text;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.label-btn.svelte-plmkhy,.label-input.svelte-plmkhy{color:var(--tp-text);font-family:var(--tp-font);font-size:.82rem;font-weight:600}.label-input.svelte-plmkhy{background:var(--tp-surface);border:1px solid var(--tp-accent);border-radius:4px;box-sizing:border-box;padding:.15rem .35rem;width:80px}.label-input.svelte-plmkhy:focus{outline:2px solid var(--tp-accent-dim);outline-offset:1px}.seat-badge.svelte-plmkhy{align-items:center;background:var(--tp-surface-2);border-radius:8px;color:var(--tp-text-muted);display:inline-flex;flex-shrink:0;font-family:var(--tp-font);font-size:.65rem;font-weight:700;gap:2px;padding:1px 6px}.constraints-panel.svelte-1thhu7z{gap:.75rem}.add-rule-card.svelte-1thhu7z,.constraints-panel.svelte-1thhu7z{display:flex;flex-direction:column}.add-rule-card.svelte-1thhu7z{background:var(--tp-surface-2);border:1px solid var(--tp-border);border-radius:8px;gap:.5rem;padding:.75rem}.type-chips.svelte-1thhu7z{display:flex;gap:.35rem}.type-chip.svelte-1thhu7z{align-items:center;background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:6px;color:var(--tp-text-muted);cursor:pointer;display:flex;flex:1;font-family:var(--tp-font);font-size:.68rem;font-weight:600;gap:.3rem;justify-content:center;padding:.35rem .4rem;transition:all .2s;white-space:nowrap}.type-chip.svelte-1thhu7z:hover{border-color:var(--tp-accent);color:var(--tp-text)}.type-chip.active.svelte-1thhu7z{background:var(--tp-accent-dim);border-color:var(--tp-accent);color:var(--tp-accent)}.chip-icon.svelte-1thhu7z{font-size:.72rem}.guest-selectors.svelte-1thhu7z{align-items:center;display:flex;gap:.35rem}.select.svelte-1thhu7z{background:var(--tp-surface);border:1px solid var(--tp-border);border-radius:6px;box-sizing:border-box;color:var(--tp-text);flex:1;font-family:var(--tp-font);font-size:.78rem;min-width:0;padding:.4rem .5rem;transition:border-color .2s}.select.svelte-1thhu7z:focus{border-color:var(--tp-accent);outline:2px solid var(--tp-accent-dim);outline-offset:2px}.and-label.svelte-1thhu7z{color:var(--tp-text-muted);flex-shrink:0;font-size:.72rem}.btn-add.svelte-1thhu7z{background:var(--tp-accent);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:var(--tp-font);font-size:.78rem;font-weight:600;padding:.45rem .75rem;transition:all .2s}.btn-add.svelte-1thhu7z:hover:not(:disabled){background:var(--tp-accent-hover)}.btn-add.svelte-1thhu7z:disabled{cursor:not-allowed;opacity:.5}.section.svelte-1thhu7z{display:flex;flex-direction:column;gap:.15rem}.section-header.svelte-1thhu7z{color:var(--tp-text-muted);font-size:.65rem;font-weight:700;letter-spacing:.08em;margin:0 0 .4rem;padding:0 .5rem;text-transform:uppercase}.rules-list.svelte-1thhu7z{display:flex;flex-direction:column;gap:.1rem}.rule-item.svelte-1thhu7z{align-items:center;border:1px solid transparent;border-radius:6px;display:flex;gap:.5rem;padding:.4rem .5rem;transition:all .2s}.rule-item.svelte-1thhu7z:hover{background:var(--tp-surface-2)}.rule-icon.svelte-1thhu7z{flex-shrink:0;font-size:.85rem;text-align:center;width:1.2rem}.rule-item[data-type=sit-together].svelte-1thhu7z .rule-icon:where(.svelte-1thhu7z){color:var(--tp-accent)}.rule-item[data-type=not-same-table].svelte-1thhu7z .rule-icon:where(.svelte-1thhu7z){color:var(--tp-danger,#d64545)}.rule-item[data-type=no-line-of-sight].svelte-1thhu7z .rule-icon:where(.svelte-1thhu7z){color:var(--tp-text-muted)}.rule-guests.svelte-1thhu7z{color:var(--tp-text);flex:1;font-size:.82rem;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rule-label.svelte-1thhu7z{font-size:.68rem;font-weight:600;margin:0 .15rem;text-transform:lowercase}.remove-btn.svelte-1thhu7z,.rule-label.svelte-1thhu7z{color:var(--tp-text-muted)}.remove-btn.svelte-1thhu7z{align-items:center;background:transparent;border:none;border-radius:4px;cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;opacity:0;transition:all .2s;width:24px}.rule-item.svelte-1thhu7z:hover .remove-btn:where(.svelte-1thhu7z){opacity:1}.remove-btn.svelte-1thhu7z:hover{background:#d645451a;color:var(--tp-danger,#d64545)}.empty-state.svelte-1thhu7z{color:var(--tp-text-muted);font-size:.8rem;margin:0;padding:2rem 1rem;text-align:center}.sidebar.svelte-1irvynj{background:var(--tp-surface);border-right:1px solid var(--tp-border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;width:320px}.tabs.svelte-1irvynj{background:var(--tp-surface-2);border-bottom:1px solid var(--tp-border);display:flex;flex-direction:row}.tab.svelte-1irvynj{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--tp-text-muted);cursor:pointer;flex:1;font-family:var(--tp-font);font-size:.8rem;font-weight:600;padding:.65rem;transition:all .2s}.tab.active.svelte-1irvynj{background:var(--tp-surface);border-bottom-color:var(--tp-accent);color:var(--tp-accent)}.tab.svelte-1irvynj:hover:not(.active){background:var(--tp-surface-3)}.tab-content.svelte-1irvynj{flex:1;overflow-y:auto;padding:.75rem}@media(max-width:1024px){.sidebar.svelte-1irvynj{border-right:none;border-top:1px solid var(--tp-border);max-height:45vh;width:100%}}.table-rename-input.svelte-alwh0i{background:#fff;border:1.5px solid #c4a35a;border-radius:4px;box-shadow:0 2px 8px #0000001f;font-family:Nunito Sans,sans-serif;min-width:60px;outline:none;padding:2px 8px;position:absolute;text-align:center;transform:translate(-50%,-50%);z-index:10}.canvas-seat-stepper.svelte-alwh0i{align-items:center;backdrop-filter:blur(8px);background:#fffffff2;border:1px solid #d0d0cc;border-radius:6px;box-shadow:0 2px 8px #0000001a;display:flex;gap:.25rem;padding:3px 6px;pointer-events:auto;position:absolute;transform:translate(-50%);z-index:10}.canvas-stepper-btn.svelte-alwh0i{align-items:center;background:#fff;border:1px solid #d0d0cc;border-radius:4px;color:#8a8a8a;cursor:pointer;display:flex;height:22px;justify-content:center;padding:0;transition:all .2s;width:22px}.canvas-stepper-btn.svelte-alwh0i:hover:not(:disabled){background:#c4a35a14;border-color:#c4a35a;color:#c4a35a}.canvas-stepper-btn.svelte-alwh0i:disabled{cursor:not-allowed;opacity:.3}.canvas-stepper-count.svelte-alwh0i{color:#2d2d2d;font-family:Nunito Sans,sans-serif;font-size:.75rem;font-weight:700;min-width:1.5em;text-align:center}.edit-overlay.svelte-alwh0i{pointer-events:none}.edit-overlay.svelte-alwh0i>:where(.svelte-alwh0i){pointer-events:auto}.canvas-side-toggles.svelte-alwh0i{align-items:center;backdrop-filter:blur(8px);background:#fffffff2;border:1px solid #d0d0cc;border-radius:6px;box-shadow:0 2px 8px #0000001a;display:flex;gap:.2rem;padding:3px 6px;position:absolute;transform:translate(-50%);z-index:10}.canvas-side-btn.svelte-alwh0i{align-items:center;background:#fff;border:1px solid #d0d0cc;border-radius:4px;color:#8a8a8a;cursor:pointer;display:flex;font-family:Nunito Sans,sans-serif;font-size:.65rem;font-weight:700;height:22px;justify-content:center;opacity:.5;padding:0;transition:all .2s;width:22px}.canvas-side-btn.active.svelte-alwh0i,.canvas-side-btn.svelte-alwh0i:hover{border-color:#c4a35a;color:#c4a35a;opacity:1}.canvas-side-btn.active.svelte-alwh0i{background:#c4a35a1a}.canvas-table-actions.svelte-1v2iiwm{align-items:center;backdrop-filter:blur(8px);background:#fffffff2;border:1px solid #d0d0cc;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;gap:2px;padding:3px 4px;pointer-events:auto;position:absolute;transform:translate(-50%);z-index:10}.canvas-action-btn.svelte-1v2iiwm{align-items:center;background:none;border:none;border-radius:5px;color:#6b6b6b;cursor:pointer;display:flex;font-family:Nunito Sans,sans-serif;font-size:.75rem;font-weight:600;gap:4px;padding:4px 8px;transition:all .15s;white-space:nowrap}.canvas-action-btn.svelte-1v2iiwm:hover{background:#c4a35a1a;color:#c4a35a}.canvas-action-btn.svelte-1v2iiwm:hover svg{stroke:#c4a35a}.canvas-action-btn.delete.svelte-1v2iiwm:hover{background:#d6454514;color:#d64545}.canvas-action-btn.delete.svelte-1v2iiwm:hover svg{stroke:#d64545}.canvas-actions-divider.svelte-1v2iiwm{background:#d0d0cc;height:16px;margin:0 2px;width:1px}.canvas-host.svelte-j0khwn{cursor:default;height:100%;overflow:hidden;position:relative;width:100%}.toolbar.svelte-obz8tk{backdrop-filter:blur(12px);background:#fffffff2;border:1px solid var(--tp-border,#e0e0dc);border-radius:10px;bottom:1rem;box-shadow:0 2px 12px #0000000f;gap:.5rem;left:50%;padding:.5rem .75rem;position:absolute;transform:translate(-50%);z-index:10}.group.svelte-obz8tk,.toolbar.svelte-obz8tk{align-items:center;display:flex}.group.svelte-obz8tk{gap:.35rem}.separator.svelte-obz8tk{background:var(--tp-border,#e0e0dc);height:20px;width:1px}.btn.svelte-obz8tk{background:var(--tp-surface,#fff);border:1px solid var(--tp-border,#e0e0dc);border-radius:5px;color:var(--tp-text,#2d2d2d);cursor:pointer;font-family:var(--tp-font,"Nunito Sans",sans-serif);font-size:.72rem;font-weight:600;padding:.35rem .6rem;transition:all .2s}.btn.svelte-obz8tk:hover{background:var(--tp-surface-2,#f5f5f0);border-color:var(--tp-border-hover,#d0d0cc)}.btn.accent.svelte-obz8tk{background:var(--tp-accent,#c4a35a);border-color:var(--tp-accent,#c4a35a);color:#fff}.btn.accent.svelte-obz8tk:hover{background:var(--tp-accent-hover,#b08d3e)}.btn.danger.svelte-obz8tk{border-color:#d645454d;color:var(--tp-danger,#d64545)}.btn.danger.svelte-obz8tk:hover{background:#d6454514}.checkbox-label.svelte-obz8tk{align-items:center;color:var(--tp-text-muted,#8a8a8a);cursor:pointer;display:flex;font-size:.72rem;gap:.3rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.checkbox-label.svelte-obz8tk input[type=checkbox]:where(.svelte-obz8tk){accent-color:var(--tp-accent,#c4a35a)}.zoom-label.svelte-obz8tk{color:var(--tp-text-muted,#8a8a8a);font-family:var(--tp-font,"Nunito Sans",sans-serif);font-size:.7rem;min-width:3em;text-align:center}.icon-btn.svelte-obz8tk{align-items:center;background:var(--tp-surface,#fff);border:1px solid var(--tp-border,#e0e0dc);border-radius:4px;color:var(--tp-text,#2d2d2d);cursor:pointer;display:flex;font-size:.85rem;height:24px;justify-content:center;transition:all .2s;width:24px}.icon-btn.svelte-obz8tk:hover{background:var(--tp-surface-2,#f5f5f0);border-color:var(--tp-border-hover,#d0d0cc)}.import-label.svelte-obz8tk{cursor:pointer}.import-label.svelte-obz8tk input:where(.svelte-obz8tk){display:none}.auto-seat.svelte-obz8tk{align-items:center;display:inline-flex;gap:.3em;justify-content:center;min-width:5.5em;padding-left:.8rem;padding-right:.8rem}.spinner.svelte-obz8tk{animation:svelte-obz8tk-spin .6s linear infinite;border:1.5px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;display:inline-block;flex-shrink:0;height:.7em;width:.7em}@keyframes svelte-obz8tk-spin{to{transform:rotate(1turn)}}.btn.svelte-obz8tk:disabled{cursor:not-allowed;opacity:.7}.solver-toast.svelte-obz8tk{align-items:center;animation:svelte-obz8tk-toast-in .3s ease-out;backdrop-filter:blur(12px);background:#d64545f2;border-radius:8px;bottom:5.5rem;box-shadow:0 2px 12px #00000026;display:flex;gap:.5rem;left:50%;max-width:500px;padding:.6rem .8rem;position:absolute;transform:translate(-50%);z-index:11}@keyframes svelte-obz8tk-toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast-text.svelte-obz8tk{color:#fff;font-family:var(--tp-font,"Nunito Sans",sans-serif);font-size:.75rem;line-height:1.3}.toast-close.svelte-obz8tk{background:none;border:none;color:#ffffffb3;cursor:pointer;flex-shrink:0;font-size:1.1rem;line-height:1;padding:0 .2rem}.toast-close.svelte-obz8tk:hover{color:#fff}@media(max-width:768px){.toolbar.svelte-obz8tk{bottom:.5rem;flex-wrap:wrap;gap:.25rem;max-width:95vw;padding:.4rem .5rem}.separator.svelte-obz8tk{display:none}.solver-toast.svelte-obz8tk{bottom:auto;max-width:90vw;top:.5rem}}.violations-panel.svelte-10hfp7r{backdrop-filter:blur(24px) saturate(1.5);background:#ffffff59;border:1px solid hsla(0,0%,100%,.4);border-radius:12px;box-shadow:0 1px 3px #0000000d,0 4px 16px #0000000f;display:flex;flex-direction:column;max-height:calc(100% - 5rem);max-width:300px;pointer-events:auto;position:absolute;right:1.25rem;top:.75rem;z-index:20}.panel-header.svelte-10hfp7r{align-items:center;border-bottom:1px solid rgba(0,0,0,.06);display:flex;gap:.4rem;padding:.5rem .7rem}.header-icon.svelte-10hfp7r{color:var(--tp-danger,#d64545);flex-shrink:0}.header-title.svelte-10hfp7r{color:var(--tp-text,#2d2d2d);font-family:var(--tp-font,"Nunito Sans",sans-serif);font-size:.72rem;font-weight:700;letter-spacing:.01em}.panel-list.svelte-10hfp7r{display:flex;flex-direction:column;gap:1px;overflow-x:hidden;overflow-y:auto;padding:.3rem;scrollbar-width:none}.panel-list.svelte-10hfp7r::-webkit-scrollbar{display:none}.toast.svelte-10hfp7r{align-items:center;border-radius:8px;display:flex;gap:.45rem;padding:.35rem .5rem;transition:background .15s ease}.toast.svelte-10hfp7r:hover{background:#fff6}.toast-dot.svelte-10hfp7r{animation:svelte-10hfp7r-dot-pulse 2.5s ease-in-out infinite;background:var(--tp-danger,#d64545);border-radius:50%;flex-shrink:0;height:6px;width:6px}.toast.warning.svelte-10hfp7r .toast-dot:where(.svelte-10hfp7r){animation:svelte-10hfp7r-dot-pulse-warning 2.5s ease-in-out infinite;background:var(--tp-warning,#e89b3e)}@keyframes svelte-10hfp7r-dot-pulse{0%,to{box-shadow:0 0 #d6454566}50%{box-shadow:0 0 0 3px #d6454500}}@keyframes svelte-10hfp7r-dot-pulse-warning{0%,to{box-shadow:0 0 #e89b3e66}50%{box-shadow:0 0 0 3px #e89b3e00}}.toast-text.svelte-10hfp7r{color:var(--tp-text,#2d2d2d);font-family:var(--tp-font,"Nunito Sans",sans-serif);font-size:.72rem;font-weight:500;line-height:1.3;opacity:.8}@media(max-width:1024px){.violations-panel.svelte-10hfp7r{max-width:240px}.toast.svelte-10hfp7r{padding:.3rem .4rem}.toast-text.svelte-10hfp7r{font-size:.68rem}}.planner.svelte-1hz3x0i{color:var(--tp-text,#2d2d2d);display:flex;font-family:var(--tp-font,"Nunito Sans",sans-serif);height:calc(100vh - 3rem);overflow:hidden}.canvas-area.svelte-1hz3x0i{background:var(--tp-bg,#fafafa);flex:1;overflow:hidden;position:relative}.hidden{display:none}@media(max-width:1024px){.planner.svelte-1hz3x0i{flex-direction:column-reverse}.canvas-area.svelte-1hz3x0i{flex:1;min-height:50vh}}
