.tp{--tp-free:#b4cba2;--tp-pending:#e4b761;--tp-booked:#c49b92;--tp-unknown:#a5aea2;--tp-zoom:1;font-size:12px;line-height:1.6}.tp p{margin:0}.tp-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.tp-instruction{color:#c5ccbc;font-size:11px;max-width:650px}.tp-party{font-size:11px;color:var(--gold,#d9bc80);white-space:nowrap;font-weight:500}.tp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.tp-legend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:10px}.tp-legend-item{display:flex;align-items:center;gap:7px}.tp-dot{width:7px;height:7px;border:1px solid currentColor;border-radius:50%;display:inline-block;flex-shrink:0}.tp-free{--tp-status:var(--tp-free)}.tp-pending{--tp-status:var(--tp-pending)}.tp-booked{--tp-status:var(--tp-booked)}.tp-unknown{--tp-status:var(--tp-unknown)}.tp-legend-item{color:var(--tp-status)}.tp-free .tp-dot,.tp-pending .tp-dot,.tp-booked .tp-dot{background:currentColor}.tp-unknown .tp-dot{background:transparent}.tp-refresh{flex-shrink:0;font-size:10px;padding:7px 10px;border:1px solid #ffffff35;border-radius:3px;min-height:34px;white-space:nowrap}.tp button:focus-visible,.tp summary:focus-visible,.tp a:focus-visible,.tp-map-scroll:focus-visible{outline:2px solid #f8dfab;outline-offset:3px}.tp-map-area{position:relative;border:1px solid #b4aa8450;background:#402b1c;border-radius:4px;overflow:hidden}.tp-map-scroll{max-height:min(44svh,480px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a38b62 #30281b;min-height:240px}.tp-map{position:relative;width:calc(100% * var(--tp-zoom));min-width:calc(1000px * var(--tp-zoom));overflow:hidden;isolation:isolate}.tp-image{position:absolute;top:0;left:0;width:100%;max-width:none;height:auto;user-select:none;pointer-events:none;object-fit:contain;filter:brightness(.74) saturate(.6)}.tp-pin{position:absolute;z-index:1;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:23px;height:23px;min-width:0;min-height:0;padding:0;border:1px solid var(--tp-status);border-radius:50%;background:#17221bef;color:#eef3e5;font-size:10px;font-weight:700;line-height:1;box-shadow:0 1px 5px #0007;transition:background .15s,border-color .15s,box-shadow .15s}.tp-pin.tp-free{background:#273927f5;color:#e3efdb}.tp-pin.tp-pending{background:#64471cf5;color:#ffdda1}.tp-pin.tp-booked{background:#552d28f5;color:#f3c8bf}.tp-pin.tp-unknown{background:#292d29f5;border-style:dashed;color:#e5e6e1}.tp-pin:disabled{opacity:1;cursor:not-allowed}.tp-pin.tp-too-small{background:#31352def;border-color:#a4aa996e;color:#c1c5b4;box-shadow:none}.tp-pin.tp-booked:after{content:'';position:absolute;width:25px;height:1px;background:#e9b7ac;transform:rotate(-45deg);opacity:.8;pointer-events:none}.tp-pin:not(:disabled):hover{z-index:3;box-shadow:0 0 0 4px #d9bc8055;background:#6b5835;color:#fff}.tp-pin.tp-selected{z-index:4;background:#e1c184;border-color:#fff1c8;color:#172019;box-shadow:0 0 0 4px #f6d89950}.tp-zoom{position:absolute;right:12px;bottom:12px;z-index:5;display:flex;border:1px solid #dbc38d70;background:#101910f2;border-radius:4px;box-shadow:0 2px 10px #0008;overflow:hidden}.tp-zoom button{height:34px;min-width:36px;padding:0 8px;font-size:20px;line-height:1}.tp-zoom button+button{border-left:1px solid #dbc38d45}.tp-zoom .tp-zoom-reset{font-size:10px;min-width:49px}.tp-zoom button:disabled{opacity:.35}.tp-map-hint{color:#b4bba9;font-size:10px;padding-top:8px}.tp-sync{font-size:10px;color:#b8c9aa;padding-top:7px}.tp-sync.tp-offline{color:#e2c89c}.tp-list{margin-top:14px;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;padding:12px 0}.tp-list summary{cursor:pointer;font-size:11px;color:#e2cc9e;list-style-position:inside;width:max-content;max-width:100%}.tp-list-hint{font-size:10px;color:#b4bba9;padding-top:10px}.tp-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(126px,1fr));gap:8px;padding:12px 4px 4px;max-height:246px;overflow:auto;scrollbar-width:thin}.tp-list-table{display:flex;flex-direction:column;text-align:left;padding:11px 12px;background:#10190f80;border:1px solid #a8b29a45;border-radius:3px;min-height:78px}.tp-list-table strong{font-size:12px;font-weight:600;color:#ecebd9}.tp-table-capacity{font-size:10px;color:#c1c6b3;margin-top:1px}.tp-table-status{font-size:9px;color:var(--tp-status);margin-top:5px;line-height:1.35}.tp-list-table:disabled{opacity:.6;cursor:not-allowed}.tp-list-table.tp-too-small .tp-table-status{color:#b7bdab}.tp-list-table.tp-selected{border-color:#ebc986;background:#4b432b}.tp-list-table:not(:disabled):hover{border-color:#e1c184}.tp-footer{position:sticky;bottom:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:22px;background:#182019f7;backdrop-filter:blur(10px);border-top:1px solid #ffffff25;margin-top:14px;padding:16px 0 12px}.tp-selection{min-width:0}.tp-selection strong{font-size:14px;font-weight:500}.tp-selection p{font-size:10px;color:#c3cbb8;max-width:620px;margin-top:4px}.tp-confirm{flex-shrink:0;min-height:44px!important;font-size:11px!important}.tp-confirm:disabled{transform:none;opacity:.4;cursor:not-allowed}.tp-confirm-note{font-size:10px;color:#b8c0aa;padding-top:2px}.tp-bar-note{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:12px;font-size:10px;color:#acb6a2}.tp-bar-note .text-link{font-size:10px;padding:0}.tp-no-fit{margin-top:12px!important;border:1px solid #bba47865;border-radius:3px;padding:12px;color:#e2c89c;font-size:11px}.tp-no-fit[hidden]{display:none}.tp-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#floor-dialog:has(.tp){max-height:88svh;padding:26px 30px 30px}#floor-dialog:has(.tp)>h2{font-size:30px;margin:10px 0 16px}#floor-dialog:has(.tp)>.eyebrow{padding-right:35px}
@media(max-width:700px){#floor-dialog:has(.tp){padding:24px 17px 22px;width:96vw;max-height:92svh}#floor-dialog:has(.tp)>h2{font-size:26px;margin-bottom:14px}.tp-intro{flex-direction:column;gap:7px;margin-bottom:12px}.tp-instruction{font-size:10px;line-height:1.7;max-width:94%}.tp-toolbar{align-items:flex-start;gap:9px}.tp-legend{gap:5px 12px;font-size:9px}.tp-refresh{font-size:9px;padding:6px 8px;min-height:30px}.tp-map-scroll{max-height:36svh;min-height:220px}.tp-map{min-width:calc(1000px * var(--tp-zoom))}.tp-map-hint,.tp-sync{font-size:9px}.tp-zoom{right:8px;bottom:8px}.tp-zoom button{height:32px;min-width:32px}.tp-footer{bottom:0;flex-direction:column;align-items:stretch;gap:12px;padding:14px 0 12px}.tp-selection strong{font-size:13px}.tp-selection p{font-size:10px}.tp-confirm{width:100%;justify-content:center;font-size:11px!important;min-height:43px!important}.tp-confirm-note{font-size:9px}.tp-list-grid{grid-template-columns:repeat(auto-fill,minmax(122px,1fr));max-height:240px}.tp-bar-note{font-size:9px;gap:8px}.tp-bar-note .text-link{font-size:9px}}
@media(prefers-reduced-motion:reduce){.tp-pin{transition:none}}

/* The list provides a comfortably sized alternative to the detailed map. */
.tp{font-size:16px;line-height:1.7}.tp-instruction{font-size:16px}.tp-party{font-size:15px}.tp-legend{font-size:14px}.tp-refresh{font-size:15px;min-height:44px;padding:9px 12px}.tp-pin{font-size:13px}.tp-zoom button{height:40px;min-width:40px}.tp-zoom .tp-zoom-reset{font-size:14px;min-width:58px}.tp-map-hint,.tp-sync,.tp-list-hint{font-size:14px;line-height:1.8}.tp-list summary{font-size:15px;line-height:1.8;min-height:38px}.tp-list-grid{grid-template-columns:repeat(auto-fill,minmax(156px,1fr));max-height:290px}.tp-list-table{padding:13px;min-height:102px}.tp-list-table strong{font-size:17px}.tp-table-capacity{font-size:14px}.tp-table-status{font-size:13px;line-height:1.6}.tp-selection strong{font-size:18px}.tp-selection p{font-size:14px;line-height:1.8}.tp-confirm{font-size:15px!important;min-height:48px!important}.tp-confirm-note,.tp-bar-note,.tp-bar-note .text-link{font-size:14px;line-height:1.8}.tp-no-fit{font-size:15px;line-height:1.8}
@media(max-width:700px){.tp{font-size:15px}.tp-instruction{font-size:15px;max-width:100%}.tp-party{font-size:15px}.tp-toolbar{display:grid;grid-template-columns:1fr;gap:10px}.tp-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));font-size:13px;gap:9px 12px}.tp-legend-item{align-items:flex-start;line-height:1.7}.tp-dot{margin-top:6px}.tp-refresh{justify-self:end;font-size:15px;min-height:42px}.tp-map-scroll{max-height:32svh;min-height:200px}.tp-map-hint,.tp-sync,.tp-list-hint{font-size:13px}.tp-list summary{font-size:15px}.tp-list-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:300px}.tp-list-table{padding:12px 10px;min-height:104px}.tp-list-table strong{font-size:16px}.tp-table-capacity{font-size:14px}.tp-table-status{font-size:13px}.tp-selection strong{font-size:17px}.tp-selection p{font-size:14px}.tp-confirm{font-size:15px!important;min-height:48px!important}.tp-confirm-note,.tp-bar-note,.tp-bar-note .text-link{font-size:13px}.tp-bar-note{gap:10px}.tp-zoom .tp-zoom-reset{font-size:14px}}

.tp-table-price{font-size:16px;font-weight:600;color:var(--gold);line-height:1.7;margin-top:4px}.tp-list-table{min-height:132px}.tp-selection strong{display:block;line-height:1.7;overflow-wrap:anywhere}.tp-pin{font-size:12px}
@media(max-width:700px){.tp-table-price{font-size:15px}.tp-list-table{min-height:138px}.tp-footer{gap:14px}}
