/* A calm, readable overhead plan with rental details at useful zoom levels. */
.plan2d{background:#e9eee8!important;position:relative;display:flex;flex-direction:column;align-items:stretch!important;justify-content:flex-start!important;overflow:hidden;box-sizing:border-box}
.plan-tools{flex:0 0 44px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 12px;background:#f7f9f5e8;border-bottom:1px solid #d7ded5;z-index:5;color:#52665b}
.plan-view-label{font-size:9px;font-weight:800;letter-spacing:.12em}.plan-tools>div{display:flex;align-items:center;gap:2px}.plan-tools button{min-width:38px;min-height:36px;border:0;border-radius:8px;background:transparent;color:#355447;font-weight:700;cursor:pointer}.plan-tools button:hover,.plan-tools button[aria-pressed=true]{background:#dce8de}.plan-tools button:disabled{opacity:.35}.plan-tools output{font-size:11px;min-width:36px;text-align:center}
.plan-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y;display:grid;background:radial-gradient(ellipse at 40% 30%,#f7f9f3,#e8eee5)}.plan-sheet{box-sizing:border-box;flex-shrink:0;padding:32px;margin:auto;position:relative}.plan2d-stage{background:#f9f8f2!important;background-image:none!important;border-radius:3px;box-shadow:0 0 0 1px #7c8d8170,0 0 0 5px #fffffff5,0 8px 20px #324b3926!important}.plan2d-stage.is-outdoor{background:#dfe9d7!important;border:1px dashed #6a846a;box-shadow:inset 0 0 30px #a7bf9040,0 0 0 8px #dfe9d745!important}.plan2d-stage.is-outdoor[data-surface=paved]{background:#e0e0db!important}.plan2d-stage.show-grid{background-image:linear-gradient(#71887224 1px,transparent 1px),linear-gradient(90deg,#71887224 1px,transparent 1px)!important;background-size:var(--plan-grid-size) var(--plan-grid-size)!important}.plan2d-stage::before,.plan2d-stage::after{display:none!important}
.plan-dimension{position:absolute;pointer-events:none;color:#647767;font:600 10px system-ui;display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.plan-dimension::before,.plan-dimension::after{content:'';height:1px;background:#94a18e80;flex:1}.plan-dimension-width{top:-25px;width:100%}.plan-dimension-length{top:50%;left:calc(100% + 10px);writing-mode:vertical-rl;transform:translateY(-50%)}.plan2d-pole{z-index:3;box-shadow:0 0 0 4px #d5c9ac55!important;background:#8c7a58!important;border-color:#fff!important}.plan2d-chair svg{filter:drop-shadow(0 2px 1px #35432d22)!important}.plan2d-object{filter:drop-shadow(1px 3px 2px #243d2525)}.plan2d-object.selected{z-index:4}.plan2d-object:not(.dance):not(.inflatable) .plan2d-table-top{border-color:#91816a66;box-shadow:inset 0 0 0 1px #ffffff70,0 1px 2px #4b543629}.plan2d-table-label{font-size:clamp(7px,.8vw,10px)!important;background:#fffdf1e6!important;color:#4f6050!important;border:1px solid #52644515;padding:2px 4px!important;pointer-events:none}.plan2d-object:has(.plan-tabletop) .plan2d-table-label{position:absolute;top:45%;left:50%;transform:translateX(-50%);opacity:0}.plan2d-object.selected .plan2d-table-label{opacity:1}.plan-tabletop{position:absolute;inset:0;z-index:1;pointer-events:none}.tabletop-overlay{width:100%;height:100%;display:block;overflow:visible}.plan-tabletop svg{filter:drop-shadow(.5px 1px .5px #24332225)}.plan2d-table-top.has-linen:after{opacity:.45}.plan2d-stage.is-outdoor .plan2d-object.inflatable .plan2d-table-top{background:transparent!important}
.table-choice{min-width:0;display:flex;flex-direction:column;border:1px solid #dce4dc;border-radius:14px;background:#fff;overflow:hidden}.table-choice .item-card{width:100%;flex:1;border:0!important;border-radius:0!important}.table-style-link{border:0;border-top:1px solid #e0e7dc;background:#f2f6f0;color:#2d6149;font-size:12px;font-weight:750;padding:12px 7px;min-height:44px;cursor:pointer}.table-studio-launch{width:100%;margin-top:14px;min-height:46px}
/* Close-up stays visible while the controls scroll, including on a phone. */
.ts-dialog{width:min(1180px,calc(100vw - 32px));height:min(860px,calc(100dvh - 24px));border-radius:22px}.ts-body{grid-template-columns:minmax(0,1.25fr) minmax(330px,.85fr)}.ts-header{padding:15px 22px}.ts-header small{color:#71846f;letter-spacing:.18em}.ts-preview{padding:14px 18px 18px;background:#f1efe9;position:relative}.ts-view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;z-index:2}.ts-view-toolbar>div{display:flex;background:#fff9;border:1px solid #d7ddd3;border-radius:10px;padding:3px}.ts-view-toolbar button{border:0;background:transparent;min-height:36px;padding:6px 12px;border-radius:7px;color:#3d5949;font-size:12px;font-weight:700;cursor:pointer}.ts-view-toolbar button[aria-pressed=true]{background:#355e47;color:#fff;box-shadow:0 2px 4px #20392a25}.ts-scene{position:relative;flex:1;min-height:0}.ts-visual,.ts-three{position:absolute;inset:0;height:100%;width:100%}.ts-three{visibility:hidden}.ts-dialog[data-view=3d] .ts-three{visibility:visible}.ts-dialog[data-view=3d] .ts-visual{visibility:hidden}.ts-three:empty{visibility:hidden!important}.ts-dialog[data-view=3d] .ts-scene:has(.ts-three:empty) .ts-visual{visibility:visible}.ts-three canvas{display:block;touch-action:none;width:100%;height:100%;border-radius:12px}.ts-visual .equipment-visual{filter:drop-shadow(0 8px 5px #33462c24)}.ts-render-status{position:absolute;bottom:4px;left:10px;right:10px;margin:0;text-align:center;font-size:11px;color:#5a6a5d;background:#fffbeedb;border-radius:8px;padding:8px}.ts-render-status:empty{display:none}.ts-caption{font-size:12px;line-height:1.4;min-height:32px;margin:4px 0 0}.ts-view-hint{font-size:11px;text-align:center;color:#697869;margin:4px 0}.ts-editing{padding:18px 20px;background:#fff}.ts-intro{line-height:1.5;font-size:12px}.ts-options{border-bottom:1px solid #e2e8df}.ts-options>summary{min-height:46px;padding:14px 0;font-size:13px;font-weight:700;cursor:pointer}.ts-option-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-bottom:14px}.ts-option-cards button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px;border:1px solid #dce5d8;border-radius:12px;background:#fbfcf9;text-align:center;min-height:140px;cursor:pointer}.ts-option-cards button[aria-pressed=true],.ts-product.is-selected{border-color:#397052;background:#f0f6ee;box-shadow:inset 0 0 0 1px #397052}.ts-option-cards span{font-size:11px;font-weight:700;line-height:1.35}.ts-option-cards small{font-size:10px;color:#62725f}.ts-option-cards .chair-visual{width:100%;height:92px;object-fit:contain;margin:0}.ts-fabric-sample{width:70px;height:55px;border-radius:50% 50% 14% 14%;background:repeating-linear-gradient(83deg,transparent 0 8px,#52613d17 10px,#fff5 13px,transparent 16px),var(--fabric,#fff);box-shadow:0 4px 5px #35452f20;transform:perspective(150px) rotateX(14deg);border:1px solid #c0c7b766}
.ts-tabletop{padding-top:18px}.ts-tabletop h3{font-size:19px;margin:0 0 5px}.ts-tabletop>p{font-size:12px;color:#647260;line-height:1.5;margin:0 0 12px}.ts-category-tabs{display:flex;gap:5px;overflow:auto;padding:2px 0 10px;scrollbar-width:thin}.ts-category-tabs button{white-space:nowrap;border:1px solid #dce3d8;background:#f8faf5;color:#465f47;border-radius:20px;padding:10px 12px;font-size:11px;min-height:38px;cursor:pointer}.ts-category-tabs button[aria-pressed=true]{background:#335d46;color:#fff;border-color:#335d46}.ts-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.ts-product{padding:10px;min-width:0;border:1px solid #dfe5da;border-radius:13px;display:flex;flex-direction:column;gap:8px}.ts-product img,.ts-product-placeholder{height:92px;width:100%;object-fit:contain;background:#fff;border-radius:8px}.ts-product-placeholder{display:grid;place-items:center;font-size:28px;color:#a2b8a0}.ts-product h4{font-size:12px;line-height:1.4;margin:0 0 4px;color:#304536}.ts-product p{font-size:11px;margin:0;color:#697363}.ts-add{border:0;background:#e5eee0;border-radius:7px;min-height:40px;padding:7px;font-size:11px;font-weight:750;color:#355c3f;margin-top:auto;cursor:pointer}.ts-product-quantity{display:flex;align-items:center;justify-content:space-between;border:1px solid #ccd9c7;border-radius:8px;background:white}.ts-product-quantity button{width:36px;min-height:38px;border:0;background:transparent;font-size:20px;color:#395e40;cursor:pointer}.ts-product-quantity output{font-size:14px;font-weight:700}.ts-per-seat{display:flex;align-items:center;gap:5px;font-size:11px;min-height:28px}.ts-per-seat input{width:17px;height:17px;accent-color:#376448}.ts-color-label{font-size:10px;color:#5d725f}.ts-color-label select{display:block;width:100%;font-size:16px;min-height:38px;border:1px solid #cfd9cb;border-radius:7px;padding:5px;background:#fff;margin-top:4px}.ts-remove{background:transparent;border:0;text-decoration:underline;font-size:10px;min-height:30px;color:#677864;cursor:pointer}.ts-tabletop .ts-model-note{font-size:10px;line-height:1.5;margin-top:12px}.ts-footer{box-shadow:0 -4px 14px #25482b08}.ts-done{min-width:150px}.ts-dialog button:focus-visible,.plan-tools button:focus-visible,.table-style-link:focus-visible{outline:3px solid #80a56c;outline-offset:2px}
@media(max-width:650px){.plan-view-label{display:none}.plan-tools{justify-content:flex-end;padding:3px 8px}.ts-dialog{width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;margin:0}.ts-header{padding:9px 14px}.ts-header h2{font-size:17px}.ts-body{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(170px,38%) minmax(0,1fr)}.ts-preview{padding:7px 10px 5px}.ts-view-toolbar button{min-height:32px;padding:4px 10px}.ts-caption{font-size:10px;min-height:0;margin-top:0;max-height:28px;overflow:hidden}.ts-view-hint{font-size:10px;margin:0}.ts-editing{padding:12px 14px}.ts-footer{grid-template-columns:minmax(0,1fr) auto;padding:9px 14px calc(9px + env(safe-area-inset-bottom));gap:6px}.ts-estimate strong{font-size:17px}.ts-price-note{max-width:180px}.ts-done{grid-column:1/-1;min-height:42px}.ts-product img{height:88px}.ts-header small{font-size:9px}.ts-controls .match-table-style span{font-size:10px}}
@media(max-height:500px) and (orientation:landscape){.ts-dialog{width:100%;height:100dvh;border-radius:0}.ts-body{grid-template-columns:minmax(0,1fr) minmax(280px,1fr);grid-template-rows:minmax(0,1fr)}.ts-header{padding:4px 12px}.ts-header small{display:none}.ts-footer{padding:5px 12px;display:flex}.ts-done{min-height:38px}.ts-caption{display:none}}
/* Keep selected rentals easy to find and repeated edits usable on touch or keyboard. */
.ts-search{display:block;font-size:12px;font-weight:700;color:#405841;margin:0 0 10px}
.ts-search[hidden]{display:none}
.ts-search input{box-sizing:border-box;display:block;width:100%;min-height:44px;margin-top:6px;padding:10px 12px;border:1px solid #bccdbb;border-radius:10px;background:#fbfcf9;color:#304536;font:400 16px system-ui}
.ts-category-tabs button{min-height:44px}.ts-category-tabs button span{display:inline-block;min-width:18px;padding:1px 4px;margin-left:3px;border-radius:10px;background:#7f9d7624;font-weight:800}
.ts-category-tabs button[aria-pressed=true] span{background:#ffffff24}
.ts-results{font-size:11px;line-height:1.5;margin:0 0 10px;color:#60725e}
.ts-empty{padding:20px 14px;background:#f5f8f1;border:1px dashed #bacbb3;border-radius:12px;font-size:13px;line-height:1.6;color:#52674d}
.ts-empty button{display:block;min-height:44px;margin-top:8px;padding:8px 12px;border:1px solid #bdcdb6;border-radius:8px;background:#fff;color:#315939;font-weight:700;cursor:pointer}
.ts-product-quantity button{min-width:44px;min-height:44px}.ts-product-quantity button:disabled{opacity:.35;cursor:default}
.ts-per-seat,.ts-remove,.ts-add,.ts-color-label select{min-height:44px}.ts-per-seat{cursor:pointer}.ts-remove{font-size:12px}
.ts-copy-setup:not(:empty){border-top:1px solid #dde6d6;margin-top:18px;padding-top:18px}.ts-copy-setup button{width:100%;min-height:46px;white-space:normal;line-height:1.5}.ts-copy-setup p{font-size:11px;line-height:1.6;color:#62715c;margin:8px 0 14px}
.ts-search input:focus-visible,.ts-color-label select:focus-visible,.ts-per-seat input:focus-visible{outline:3px solid #80a56c;outline-offset:2px}
