#booth-planner{--bp-bar-h: 4.25rem;--bp-surface: #ffffff;position:relative;height:clamp(30rem,82vh,50rem);border:1px solid var(--c-border);border-radius:var(--radius-lg);overflow:hidden;background:radial-gradient(120% 90% at 50% 0%,#fbfcfe,#eef1f8 70%,#e6ebf6);color:var(--c-text);font-family:var(--font-body);touch-action:none;user-select:none;-webkit-user-select:none}#booth-planner.bp--fullscreen{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-width:none;border:0;border-radius:0;z-index:1000}.bp--fullscreen .bp__bar{padding-bottom:max(var(--sp-3xs),env(safe-area-inset-bottom,0px))}.bp--fullscreen .bp__histbar,.bp--fullscreen .bp__readouts,.bp--fullscreen .bp__placebar,.bp--fullscreen .bp__viewbar{top:max(var(--sp-sm),env(safe-area-inset-top,0px))}.bp--fullscreen.bp--placing .bp__viewbar{top:calc(max(var(--sp-sm),env(safe-area-inset-top,0px)) + 3.25rem)}.bp__stage{position:absolute;inset:0}.bp__canvas2d{display:block;width:100%;height:100%;touch-action:none}.bp__canvas2d[hidden]{display:none}.bp__stage3d{position:absolute;inset:0;display:grid;place-items:center}.bp__stage3d[hidden]{display:none}.bp__stage3d canvas,.bp__canvas3d{display:block;width:100%;height:100%;touch-action:none}.bp__viewbar{position:absolute;top:var(--sp-sm);left:50%;transform:translate(-50%);z-index:15;display:flex;gap:var(--sp-sm);padding:var(--sp-3xs) var(--sp-2xs);background:#ffffffe6;backdrop-filter:blur(4px);border:1px solid var(--c-border);border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);max-width:calc(100% - 2 * var(--sp-sm))}.bp__viewbar[hidden]{display:none}.bp__viewbar-group{display:flex;align-items:center;gap:var(--sp-3xs)}.bp__viewbar-cap{font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:var(--fw-semibold);color:var(--c-text-muted)}.bp__seg--compact{flex-wrap:nowrap}.bp__seg--compact .bp__seg-btn{min-height:36px;padding:var(--sp-3xs) var(--sp-2xs);border-radius:var(--radius-pill);font-size:var(--fs-xs)}.bp__placebar{position:absolute;top:var(--sp-sm);left:50%;transform:translate(-50%);z-index:18;display:flex;align-items:center;gap:var(--sp-sm);padding:var(--sp-3xs) var(--sp-3xs) var(--sp-3xs) var(--sp-md);background:var(--brand-navy);color:var(--c-text-invert);border-radius:var(--radius-pill);box-shadow:var(--shadow-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);max-width:calc(100% - 2 * var(--sp-sm))}.bp__placebar[hidden]{display:none}.bp__placebar-done{min-height:36px;padding:0 var(--sp-md);border:0;border-radius:var(--radius-pill);background:#ffffff2e;color:var(--c-text-invert);font:inherit;font-weight:var(--fw-semibold);cursor:pointer}.bp__placebar-done:hover{background:#ffffff4d}.bp__placebar-done:focus-visible{outline:2px solid #fff;outline-offset:1px}.bp--placing .bp__viewbar{top:calc(var(--sp-sm) + 3.25rem)}.bp__histbar{position:absolute;top:var(--sp-sm);left:var(--sp-sm);z-index:16;display:flex;gap:var(--sp-3xs);padding:var(--sp-3xs);background:#ffffffe6;backdrop-filter:blur(4px);border:1px solid var(--c-border);border-radius:var(--radius-pill);box-shadow:var(--shadow-sm)}.bp__hist-btn{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--c-text);cursor:pointer;transition:background var(--dur-fast) var(--ease)}.bp__hist-btn:hover:not(:disabled){background:var(--corn-12, rgba(90, 119, 191, .12))}.bp__hist-btn:disabled{opacity:.32;cursor:default}.bp__hist-btn:focus-visible{outline:2px solid var(--c-accent);outline-offset:-2px}.bp__hist-btn .bp__bar-ic{width:20px;height:20px}.bp__stage3d-placeholder{display:grid;gap:var(--sp-3xs);justify-items:center;color:var(--c-text-muted);font-size:var(--fs-sm);text-align:center;padding:var(--sp-md)}.bp__stage3d-placeholder strong{font-family:var(--font-display);font-size:var(--fs-md);color:var(--c-text)}.bp__readouts{position:absolute;top:var(--sp-sm);right:var(--sp-sm);background:#ffffffd1;backdrop-filter:blur(4px);border:1px solid var(--c-border);border-radius:var(--radius-md);padding:var(--sp-2xs) var(--sp-xs);display:grid;gap:2px;box-shadow:var(--shadow-sm);pointer-events:none;font-variant-numeric:tabular-nums}.bp__readout{display:flex;justify-content:space-between;gap:var(--sp-md);font-size:var(--fs-xs)}.bp__readout span{color:var(--c-text-muted)}.bp__readout strong{font-weight:var(--fw-semibold)}.bp__bar{position:absolute;left:0;right:0;bottom:0;z-index:20;display:flex;align-items:stretch;gap:var(--sp-3xs);padding:var(--sp-3xs);min-height:var(--bp-bar-h);background:var(--bp-surface);border-top:1px solid var(--c-border);box-shadow:0 -4px 18px #1f30610f}.bp__bar-btn{flex:1 1 0;min-width:44px;min-height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:var(--sp-3xs);border:0;border-radius:var(--radius-md);background:transparent;color:var(--c-text);font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.bp__bar-btn:hover{background:var(--corn-12, rgba(90, 119, 191, .12))}.bp__bar-btn.is-on{background:var(--brand-navy);color:var(--c-text-invert)}.bp__bar-btn:focus-visible{outline:2px solid var(--c-accent);outline-offset:-2px}.bp__bar-ic{display:block;width:22px;height:22px}.bp__bar-ic svg{width:100%;height:100%;display:block}.bp__ctxbar{position:absolute;left:50%;transform:translate(-50%);bottom:calc(var(--bp-bar-h) + var(--sp-2xs));z-index:20;display:flex;gap:var(--sp-3xs);padding:var(--sp-3xs);background:var(--bp-surface);border:1px solid var(--c-border);border-radius:var(--radius-pill);box-shadow:var(--shadow-md)}.bp__ctxbar[hidden]{display:none}.bp__ctxbar .bp__bar-btn{flex:0 0 auto;min-width:56px;border-radius:var(--radius-pill)}.bp__backdrop{position:absolute;inset:0;z-index:30;background:#1f306147}.bp__backdrop[hidden]{display:none}.bp__sheet{position:absolute;left:0;right:0;bottom:0;z-index:40;max-height:78%;display:flex;flex-direction:column;background:var(--bp-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -10px 40px #1f30612e;transform:translateY(101%);visibility:hidden;transition:transform var(--dur-base) var(--ease),visibility var(--dur-base) var(--ease);will-change:transform}.bp__sheet[hidden]{display:flex}.bp__sheet--open{transform:translateY(0);visibility:visible}.bp__sheet-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);border-bottom:1px solid var(--c-border)}.bp__sheet-title{font-size:var(--fs-md);margin:0}.bp__sheet-close{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--c-text);cursor:pointer}.bp__sheet-close:hover{background:var(--corn-12, rgba(90, 119, 191, .12))}.bp__sheet-close .bp__bar-ic{width:20px;height:20px}.bp__sheet-body{padding:var(--sp-md);overflow-y:auto;-webkit-overflow-scrolling:touch}.bp__group-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.07em;font-weight:var(--fw-semibold);color:var(--c-text-muted);margin:var(--sp-sm) 0 var(--sp-2xs)}.bp__group-label:first-child{margin-top:0}.bp__hint{font-size:var(--fs-sm);color:var(--c-text-muted);line-height:var(--lh-base);margin:var(--sp-2xs) 0}.bp__palette{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:var(--sp-2xs);margin-bottom:var(--sp-sm)}.bp__pchip{display:flex;flex-direction:column;gap:var(--sp-3xs);padding:var(--sp-2xs);border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--bp-surface);text-align:left;font:inherit;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.bp__pchip:hover{border-color:var(--c-accent);background:var(--corn-12, rgba(90, 119, 191, .12))}.bp__pchip:focus-visible{outline:2px solid var(--c-accent);outline-offset:1px}.bp__pchip-icon{display:block;height:30px;color:var(--brand-navy)}.bp__pchip-icon svg{height:100%;width:auto;display:block}.bp__pchip-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.bp__pchip-size{font-size:var(--fs-xs);color:var(--c-text-muted);font-variant-numeric:tabular-nums}.bp__seg{display:flex;flex-wrap:wrap;gap:var(--sp-3xs)}.bp__seg-btn{flex:1 1 auto;min-height:44px;padding:var(--sp-2xs) var(--sp-xs);border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--bp-surface);color:var(--c-text);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.bp__seg-btn:hover{background:var(--corn-12, rgba(90, 119, 191, .12))}.bp__seg-btn.is-on{background:var(--brand-navy);color:var(--c-text-invert);border-color:var(--brand-navy)}.bp__presets{display:flex;flex-wrap:wrap;gap:var(--sp-3xs)}.bp__preset{min-height:44px;padding:var(--sp-2xs) var(--sp-sm);border:1px solid var(--c-border);border-radius:var(--radius-pill);background:var(--bp-surface);color:var(--c-text);font:inherit;font-weight:var(--fw-semibold);cursor:pointer}.bp__preset:hover{border-color:var(--c-accent);background:var(--corn-12, rgba(90, 119, 191, .12))}.bp__dim{display:flex;align-items:flex-end;gap:var(--sp-2xs)}.bp__times,.bp__unit{align-self:center;color:var(--c-text-muted);font-weight:var(--fw-semibold)}.bp__inline-field,.bp__field{display:flex;flex-direction:column;gap:2px;font-size:var(--fs-xs);color:var(--c-text-muted)}.bp__dims{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2xs)}.bp__num,.bp__text{width:100%;min-height:44px;padding:var(--sp-2xs) var(--sp-xs);border:1px solid var(--c-border);border-radius:var(--radius-sm);font:inherit;font-weight:var(--fw-semibold);color:var(--c-text);background:var(--bp-surface);font-variant-numeric:tabular-nums}.bp__num{width:4.5rem;text-align:center}.bp__text{font-weight:var(--fw-normal)}.bp__num:focus-visible,.bp__text:focus-visible{outline:2px solid var(--c-accent);outline-offset:1px;border-color:var(--c-accent)}.bp__piece-name{font-family:var(--font-display);font-size:var(--fs-md);margin:0 0 var(--sp-2xs)}.bp__row{display:flex;gap:var(--sp-2xs);margin-top:var(--sp-sm)}.bp__btn{min-height:44px;padding:var(--sp-2xs) var(--sp-md);border:1px solid var(--c-border);border-radius:var(--radius-pill);background:var(--bp-surface);color:var(--c-text);font:inherit;font-weight:var(--fw-semibold);cursor:pointer;margin-top:var(--sp-2xs)}.bp__btn:hover{border-color:var(--c-accent);background:var(--corn-12, rgba(90, 119, 191, .12))}.bp__btn--primary{background:var(--c-cta);color:var(--c-text-invert);border-color:var(--c-cta)}.bp__btn--primary:hover{background:var(--c-cta-hover);border-color:var(--c-cta-hover)}.bp__btn--danger{color:#9a2f2f;border-color:#e7c4c4}.bp__btn--danger:hover{background:#9a2f2f14;border-color:#d98b8b}.bp__row .bp__btn{flex:1 1 auto}.bp__stack{display:flex;flex-direction:column;gap:var(--sp-2xs);margin-top:var(--sp-2xs)}.bp__stack .bp__btn{width:100%;margin-top:0}.bp__hint--tight{margin-top:0}.bp__layouts{display:grid;gap:var(--sp-2xs)}.bp__layout{display:flex;flex-direction:column;gap:2px;padding:var(--sp-2xs) var(--sp-sm);border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--bp-surface);text-align:left;font:inherit;cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.bp__layout:hover{border-color:var(--c-accent);background:var(--corn-12, rgba(90, 119, 191, .12))}.bp__layout:focus-visible{outline:2px solid var(--c-accent);outline-offset:1px}.bp__layout-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.bp__layout-hint{font-size:var(--fs-xs);color:var(--c-text-muted)}.bp__angle{display:flex;align-items:center;gap:var(--sp-sm)}.bp__angle-val{display:flex;align-items:center;gap:2px;flex:0 0 auto}.bp__range{flex:1 1 auto;min-width:0;height:44px;accent-color:var(--c-accent);cursor:pointer}.bp__range:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}.bp__count{font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.bp__count strong{color:var(--c-accent)}.bp__help{margin:0;padding-left:1.1rem;display:grid;gap:var(--sp-2xs);font-size:var(--fs-sm);color:var(--c-text-muted);line-height:var(--lh-base)}.bp__labeledit{position:fixed;top:max(10px,env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);z-index:60;width:min(92vw,30rem);display:grid;gap:var(--sp-3xs)}.bp__labeledit[hidden]{display:none}.bp__labeledit-field{width:100%;min-height:48px;padding:var(--sp-2xs) var(--sp-sm);border:1.5px solid var(--c-accent);border-radius:var(--radius-md);font:inherit;font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--c-text);background:#fff;box-shadow:0 10px 30px #1f306138}.bp__labeledit-field:focus-visible{outline:2px solid var(--c-accent);outline-offset:1px}.bp__labeledit-hint{justify-self:center;text-align:center;font-size:var(--fs-xs);color:var(--c-text-muted);background:#ffffffd9;padding:2px 8px;border-radius:var(--radius-sm)}@media(min-width:62em){#booth-planner{--bp-bar-h: 3.75rem}.bp__bar{left:50%;right:auto;bottom:var(--sp-md);transform:translate(-50%);width:max-content;gap:var(--sp-2xs);padding:var(--sp-2xs);border:1px solid var(--c-border);border-radius:var(--radius-pill);box-shadow:var(--shadow-md)}.bp__bar-btn{flex:0 0 auto;min-width:68px;flex-direction:row;gap:var(--sp-3xs)}.bp__ctxbar{bottom:calc(var(--bp-bar-h) + var(--sp-lg))}.bp__sheet{left:auto;right:var(--sp-md);bottom:var(--sp-md);top:var(--sp-md);width:min(24rem,42vw);max-height:none;border-radius:var(--radius-lg);transform:translate(calc(100% + var(--sp-lg)))}.bp__sheet--open{transform:translate(0)}.bp__backdrop{background:#1f30611f}}.intro[data-astro-cid-pmpqos6v]{padding-bottom:var(--sp-md)}.planner-wrap[data-astro-cid-pmpqos6v]{margin-bottom:var(--section-y)}.planner-tip[data-astro-cid-pmpqos6v]{margin-top:var(--sp-sm);font-size:var(--fs-sm);color:var(--c-text-muted)}.bp__noscript[data-astro-cid-pmpqos6v]{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:var(--sp-lg);color:var(--c-text-muted)}.guide-grid[data-astro-cid-pmpqos6v]{display:grid;grid-template-columns:1fr;gap:var(--sp-lg);margin-top:var(--sp-lg)}@media(min-width:48em){.guide-grid[data-astro-cid-pmpqos6v]{grid-template-columns:1fr 1fr}}.guide-grid[data-astro-cid-pmpqos6v] h3[data-astro-cid-pmpqos6v]{font-size:var(--fs-lg)}.guide-grid[data-astro-cid-pmpqos6v] p[data-astro-cid-pmpqos6v]{margin-top:var(--sp-2xs);color:var(--c-text);line-height:var(--lh-base)}.guide-grid[data-astro-cid-pmpqos6v] ul[data-astro-cid-pmpqos6v]{margin-top:var(--sp-sm);padding-left:1.1rem;display:grid;gap:var(--sp-2xs);color:var(--c-text-muted);line-height:var(--lh-base)}.guide-grid[data-astro-cid-pmpqos6v] strong[data-astro-cid-pmpqos6v]{color:var(--c-text)}
