.app-shell:has(.resort-map-shell) .app-main{background:#fff;padding:0}.app-content-frame:has(.resort-map-shell){gap:0}.app-shell:has(.resort-map-shell) .app-header{margin-bottom:0}.resort-map-shell{background:#fff;gap:0;max-width:1660px;min-height:calc(100dvh - 110px);margin:0 auto;padding:0 20px 28px;display:grid}.resort-map-heading{border-bottom:1px solid #dce2de;grid-template-columns:340px minmax(0,1fr) 400px;align-items:end;gap:18px;padding:18px 0 14px;display:grid}.resort-map-heading-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px 12px;width:100%;display:grid}.resort-map-date{gap:3px;display:grid}.resort-map-date span{color:#5b685f;text-transform:uppercase;font-size:.63rem;font-weight:800}.resort-map-date input{color:#304036;font:inherit;background:#fff;border:1px solid #cdd5cf;border-radius:4px;width:100%;min-height:30px;padding:4px 7px;font-size:.78rem;font-weight:700}.resort-map-overlay-control{border:1px solid #cdd5cf;border-radius:4px;display:flex;overflow:hidden}.resort-map-overlay-control button{color:#536058;cursor:pointer;font:inherit;background:#fff;border:0;border-right:1px solid #cdd5cf;min-height:30px;padding:0 8px;font-size:.72rem;font-weight:800}.resort-map-overlay-control button:last-child{border-right:0}.resort-map-overlay-control button:hover{background:#f2f5f2}.resort-map-overlay-control button.is-active{color:#fff;background:#324a3b}.resort-map-heading .eyebrow,.resort-map-detail .eyebrow{margin:0 0 4px}.resort-map-heading h2,.resort-map-detail h3{color:#26332b;margin:0}.resort-map-heading>div>p:last-child{color:#5f6962;margin:5px 0 0;font-size:.9rem}.resort-map-legend{color:#536058;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px 12px;min-width:0;font-size:.75rem;display:flex}.resort-map-command-bar{grid-template-columns:174px minmax(0,1fr);align-items:stretch;gap:14px;background:#fff!important;border-bottom:1px solid #dce2de!important;margin:0!important;padding:9px 0!important;display:grid!important}.resort-map-publish-state{color:#fff;border-radius:5px;align-content:center;min-height:54px;background:#268f19!important;padding:10px 12px!important;display:grid!important}.resort-map-publish-state strong,.resort-map-publish-state small{display:block!important}.resort-map-command-center{grid-template-columns:max-content minmax(0,1fr);align-content:center;gap:4px 12px;min-width:0;display:grid}.resort-map-date-navigation{grid-row:1/-1}.resort-map-view-context,.resort-map-header-freshness{grid-column:2}.resort-map-date-navigation,.resort-map-view-context{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.resort-map-date-navigation .scheduler-range-title{color:#2f3832;cursor:pointer;font:inherit;letter-spacing:-.02em;background:0 0;border:0;padding:0;font-size:1.35rem;font-weight:800}.resort-map-date-navigation .scheduler-week-navigation{margin-left:3px;display:flex!important}.resort-map-date-navigation .scheduler-week-navigation button{color:#4d5550;cursor:pointer;font:inherit;background:#fff;border:1px solid #d8dcd9;min-height:24px;padding:2px 8px;font-size:11px}.resort-map-date-navigation .scheduler-week-navigation button+button{border-left:0}.resort-map-date-navigation .scheduler-week-navigation button:hover{color:#7f1216;border-color:#aeb6b0}.resort-map-hidden-date-picker{opacity:0;pointer-events:none;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.resort-map-view-context{color:#5c675f;font-size:.76rem}.resort-map-view-context strong{color:#303a33}.resort-map-view-context label{align-items:center;gap:7px;display:flex}.resort-map-legend{background:#f7f9f7;border:1px solid #dce2de;border-radius:5px;min-height:0;margin-top:12px;padding:9px 12px}.resort-map-legend strong{color:#344138;font-size:.76rem}.resort-map-legend span{align-items:center;gap:5px;display:inline-flex}.resort-map-legend i{border-radius:999px;width:9px;height:9px}.resort-map-legend .is-occupied{background:#4b719f}.resort-map-legend .is-reserved{background:#c28a31}.resort-map-legend .is-suite{background:#9ba59f}.resort-map-legend button{color:inherit;cursor:pointer;font:inherit;font-size:inherit;background:0 0;border:0;border-radius:3px;align-items:center;gap:5px;padding:2px 3px;display:inline-flex}.resort-map-legend button:hover,.resort-map-legend button.is-active{color:#263b2c;background:#edf2ee}.resort-map-legend button i{background:currentColor;flex:none}.resort-map-workspace{grid-template-columns:minmax(0,1fr) 260px;align-items:start;display:grid}.resort-map-frame{border-right:1px solid #dce2de;padding:16px 16px 16px 0;position:relative}.resort-map-viewport{aspect-ratio:10000/6600;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #cdd3ce;position:relative;overflow:hidden}.resort-map-viewport:active{cursor:grabbing}.resort-map-viewport.is-suite,.resort-map-viewport.is-yard,.resort-map-viewport.is-hallway{cursor:crosshair}.resort-map-stage{transform-origin:50%;width:auto;height:100%;position:absolute}.resort-map-canvas{line-height:0;position:absolute;inset:0}.resort-map-projection-layer{pointer-events:none;z-index:1;position:absolute;inset:0}.resort-map-projection-layer .resort-map-area{pointer-events:auto;border-width:1px}.resort-map-projection-layer .resort-map-area span{padding:2px 4px;font-size:11px;top:50%;left:50%;transform:translate(-50%,-50%)}.resort-map-resize-handle{pointer-events:auto;touch-action:none;z-index:3;position:absolute}.resort-map-resize-handle.is-top,.resort-map-resize-handle.is-bottom{cursor:ns-resize}.resort-map-resize-handle.is-left,.resort-map-resize-handle.is-right{cursor:ew-resize}.resort-map-canvas>img{width:100%;height:100%;display:block}.resort-map-controls{z-index:3;background:#fff;border:1px solid #d1d8d2;border-radius:4px;align-items:center;gap:2px;padding:3px;display:flex;position:absolute;top:10px;right:10px}.resort-map-controls button,.resort-map-controls output{color:#334139;font:inherit;background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 6px;font-size:.75rem;font-weight:800;display:inline-flex}.resort-map-controls button{cursor:pointer}.resort-map-controls button:hover:not(:disabled){background:#eef2ef}.resort-map-controls button:disabled{color:#a3ada5;cursor:default}.resort-map-controls output{color:#56635a;min-width:44px}.resort-map-controls .resort-map-reset{border-left:1px solid #d6ddd7;border-radius:0;margin-left:2px;padding-left:8px}.resort-map-mode-control{z-index:4;background:#fff;border:1px solid #d1d8d2;border-radius:4px;display:flex;position:absolute;top:10px;left:10px}.resort-map-mode-control>button,.resort-map-toolbar-menu>button{color:#56635a;cursor:pointer;font:inherit;background:#fff;border:0;border-right:1px solid #d1d8d2;min-height:34px;padding:0 9px;font-size:.72rem;font-weight:800}.resort-map-toolbar-menu{position:relative}.resort-map-toolbar-menu:last-child>button{border-right:0}.resort-map-mode-control button:hover{background:#eef2ef}.resort-map-mode-control button.is-active{color:#fff;background:#324a3b}.resort-map-toolbar-popover{z-index:7;background:#fff;border:1px solid #c8d1ca;border-radius:4px;min-width:150px;display:grid;position:absolute;top:calc(100% + 5px);left:0;overflow:hidden;box-shadow:0 7px 16px #1e30242e}.resort-map-toolbar-popover button{color:#405046;cursor:pointer;font:inherit;text-align:left;white-space:nowrap;background:#fff;border:0;min-height:34px;padding:0 10px;font-size:.74rem;font-weight:750}.resort-map-toolbar-popover button:hover:not(:disabled){background:#eef2ef}.resort-map-toolbar-popover .resort-map-delete-map{color:#8a2727;border-top:1px solid #e3d0d0}.resort-map-toolbar-popover.is-map-actions{min-width:175px;left:auto;right:0}.resort-map-area{color:#4e5c53;cursor:pointer;background:#707c751a;border-style:solid;border-color:#8e9b92;padding:0;display:block;position:absolute;overflow:visible}.resort-map-area.is-yard{color:#315b38;background:#6d9d761f;border-color:#729b78}.resort-map-area.is-hallway{color:#405a4a;background:#536c5e0d;border-style:dashed;border-color:#7d9084}.resort-map-area:hover,.resort-map-area.is-selected{border-color:#193a6b}.resort-map-area span{color:inherit;pointer-events:none;white-space:nowrap;font-weight:850;line-height:1;display:block;position:absolute;top:0;left:0}.resort-map-area.is-hallway span{background:#ffffffe0;border-radius:2px;padding:2px 4px}.resort-map-draft{pointer-events:none;position:absolute;overflow:visible}.resort-map-draft rect{fill:#707c751a;stroke:#729b78;stroke-dasharray:5 4;stroke-width:1.25px}.resort-map-draft.is-yard rect{fill:#6d9d761f}.resort-map-draft.is-hallway rect{fill:#536c5e0d;stroke:#7d9084}.resort-map-area:focus-visible{outline-offset:2px;outline:2px solid #152a1e}.resort-map-area.is-occupied{color:#082b5a;background:#1f5eb185;border-color:#1453a0}.resort-map-area.is-reserved{color:#613900;background:#cd871861;border-color:#a86709}.resort-map-detail{color:#58635c;gap:10px;min-height:200px;padding:18px 0 18px 16px;display:grid}.resort-map-detail strong{color:#29362e;font-size:.92rem;line-height:1.25}.resort-map-detail p{margin:0;font-size:.84rem;line-height:1.45}.resort-map-detail small{font-size:.76rem;line-height:1.35}.resort-map-editor{gap:10px;display:grid}.resort-map-area-name{gap:4px;display:grid}.resort-map-area-name span,.resort-map-area-geometry>span{color:#5b685f;text-transform:uppercase;font-size:.68rem;font-weight:800}.resort-map-area-name input,.resort-map-area-name select,.resort-map-area-geometry input{color:#27352c;font:inherit;background:#fff;border:1px solid #afb9b1;border-radius:3px;min-height:34px;padding:6px 8px;font-size:.84rem}.resort-map-area-name select{width:100%}.resort-map-area-geometry{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.resort-map-area-geometry>span{grid-column:1/-1}.resort-map-area-geometry label{gap:3px;display:grid}.resort-map-area-geometry label>span{color:#647068;font-size:.67rem;font-weight:700}.resort-map-area-geometry input{width:100%;min-width:0;min-height:30px}.resort-map-area-actions{flex-wrap:wrap;gap:6px;display:flex}.resort-map-edit,.resort-map-redraw,.resort-map-delete{color:#34463a;cursor:pointer;font:inherit;background:#fff;border:1px solid #87988d;border-radius:3px;justify-self:start;padding:7px 9px;font-size:.75rem;font-weight:800}.resort-map-delete{color:#7d2525;border-color:#b77e7e}.resort-map-occupancy{border-left:3px solid #4b719f;gap:2px;padding-left:8px;display:grid}.resort-map-occupancy.is-reserved{border-color:#b77b20}.resort-map-occupancy span{color:#34453a;font-size:.86rem;font-weight:700}.resort-map-occupancy small{color:#5f6c63}.resort-map-no-match{border-left:3px solid #9ba59f;padding-left:8px}.resort-map-note{color:#69736c;border-top:1px solid #dce2de;margin:0;padding-top:12px;font-size:.76rem}@media (max-width:900px){.resort-map-heading{flex-direction:column;align-items:start;display:flex}.resort-map-heading-actions{justify-content:start}.resort-map-command-bar{grid-template-columns:132px minmax(0,1fr)}.resort-map-legend{justify-content:flex-start;padding-left:0}.resort-map-workspace{grid-template-columns:minmax(0,1fr)}.resort-map-frame{border-bottom:1px solid #dce2de;border-right:0;padding-right:0}.resort-map-detail{min-height:auto;padding-left:0}.resort-map-note{border-top:0;padding-top:12px}}@media (max-width:560px){.resort-map-shell{gap:11px}.resort-map-heading h2{font-size:1.45rem}.resort-map-legend{gap:6px 9px}.resort-map-legend strong{width:100%}}.resort-map-controls .resort-map-save{color:#34463a;background:#fff;border-color:#87988d;margin-left:3px;padding:0 9px}.resort-map-controls .resort-map-save:hover:not(:disabled){background:#f3f6f3;border-color:#65766a}.resort-map-controls .resort-map-publish{color:#fff;background:#324a3b;padding:0 9px}.resort-map-controls .resort-map-save:disabled,.resort-map-controls .resort-map-publish:disabled{color:#fff;background:#a3ada5;border-color:#a3ada5}.resort-map-legend .is-arrival{background:#e30613}.resort-map-legend .is-departure{background:#153ee6}.resort-map-legend .is-daycare{background:#298230}.resort-map-legend .is-overnight{background:#48514d}.resort-map-legend .is-vacant{background:#c8cfca}.resort-map-area.is-arrival{color:#5d0308;background:#e3061366;border-color:#c00610}.resort-map-area.is-departure{color:#0b237f;background:#153ee666;border-color:#153ee6}.resort-map-area.is-daycare{color:#124919;background:#29823061;border-color:#298230}.resort-map-area.is-overnight{color:#17201c;background:#48514d70;border-color:#3b4440}.resort-map-area.is-vacant{color:#5f6963;background:#c8cfca5c;border-color:#adb6af}.resort-map-summary button:hover,.resort-map-summary button[aria-pressed=true]{background:#edf2ee}.resort-map-summary .is-arrival,.resort-map-summary .is-arrival b{color:#c00610}.resort-map-summary .is-departure,.resort-map-summary .is-departure b{color:#153ee6}.resort-map-summary .is-daycare,.resort-map-summary .is-daycare b{color:#298230}.resort-map-summary .is-overnight,.resort-map-summary .is-overnight b{color:#3b4440}.resort-map-summary .is-vacant,.resort-map-summary .is-vacant b{color:#7b8880}.resort-map-summary-list{gap:5px;max-height:360px;display:grid;overflow:auto}.resort-map-summary-list button{color:#34463a;cursor:pointer;text-align:left;background:#fff;border:1px solid #cfd7d1;border-radius:3px;gap:2px;padding:7px 8px;display:grid}.resort-map-summary-list button:hover{background:#f1f5f1;border-color:#8da095}.resort-map-summary-list button small{color:#647068;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.resort-map-legend .is-play-group-one_on_one,.resort-map-legend .is-play-group-one_on_one i{color:#a93636}.resort-map-legend .is-play-group-players,.resort-map-legend .is-play-group-players i{color:#8d6b00}.resort-map-legend .is-play-group-companions,.resort-map-legend .is-play-group-companions i{color:#69538f}.resort-map-legend .is-play-group-adorable,.resort-map-legend .is-play-group-adorable i{color:#416f92}.resort-map-legend .is-play-group-waggers,.resort-map-legend .is-play-group-waggers i{color:#427b36}.resort-map-legend .is-play-group-evaluations,.resort-map-legend .is-play-group-evaluations i{color:#606060}.resort-map-legend .is-play-group-mixed{background:repeating-linear-gradient(135deg,#596f7b 0 3px,#e6ece9 3px 6px)}.resort-map-legend .is-play-group-unassigned{background:#bc8d40}.resort-map-area.is-play-group-one_on_one{color:#651f1f;background:#e46b6b;border-color:#b44b4b}.resort-map-area.is-play-group-players{color:#5f4900;background:#ffe598;border-color:#a8831e}.resort-map-area.is-play-group-companions{color:#3e2a62;background:#b9add8;border-color:#756399}.resort-map-area.is-play-group-adorable{color:#244d6c;background:#a8c9e3;border-color:#5d8aac}.resort-map-area.is-play-group-waggers{color:#2d6124;background:#b7d9a9;border-color:#66975b}.resort-map-area.is-play-group-evaluations{color:#3f3f3f;background:#a7a7a7;border-color:#707070}.resort-map-area.is-play-group-mixed{color:#263b43;background:repeating-linear-gradient(135deg,#596f7ba3 0 5px,#e6ece9a6 5px 10px);border-color:#536a74}.resort-map-area.is-play-group-unassigned{color:#65400b;background:#d5ad5e9e;border-color:#a77320}.resort-map-area.is-play-group-unavailable{color:#657069;background:#b0b8b247;border-color:#a8b1aa}.resort-map-area.is-play-group-no-dogs{color:#0000;background:0 0;border-color:#0000}.resort-map-area.is-summary-filtered{opacity:.2}.resort-map-occupancy.is-arrival{border-color:#c00610}.resort-map-occupancy.is-departure{border-color:#153ee6}.resort-map-occupancy.is-daycare{border-color:#298230}.resort-map-occupancy.is-overnight{border-color:#3b4440}.resort-map-reservation-list{margin-top:5px;display:grid}.resort-map-reservation-times{gap:5px;margin:0;padding:8px 0;display:grid}.resort-map-reservation-times+.resort-map-reservation-times{border-top:1px solid #d9e0db}.resort-map-reservation-times:first-child{padding-top:5px}.resort-map-reservation-times:last-child{padding-bottom:0}.resort-map-reservation-times div{grid-template-columns:68px minmax(0,1fr);align-items:baseline;gap:8px;display:grid}.resort-map-reservation-times dt{color:#5f6c63;text-transform:uppercase;font-size:.68rem;font-weight:800}.resort-map-reservation-times dd{color:#2d3c32;margin:0;font-size:.78rem;font-weight:700}.resort-map-publish-state,.resort-map-overlay-control button.is-active,.resort-map-mode-control button.is-active,.resort-map-controls .resort-map-publish{background:#7f1216!important}.resort-map-date-navigation .scheduler-range-title:hover{color:#7f1216}.resort-map-overlay-control button:hover,.resort-map-mode-control button:hover,.resort-map-controls .resort-map-save:hover:not(:disabled){background:#f8f1f1}.resort-map-controls .resort-map-publish:hover:not(:disabled){background:#621014}.resort-map-publish-state.is-published{background:#268f19!important}.resort-map-publish-state.is-draft{background:#7f1216!important}.resort-map-map-edit-toggle{color:#fff;cursor:pointer;font:inherit;background:0 0;border:1px solid #ffffffb8;border-radius:3px;place-self:start;margin-top:5px;padding:4px 7px;font-size:.68rem;font-weight:800}.resort-map-map-edit-toggle:hover{background:#ffffff26}.resort-map-operations-bar{border-bottom:1px solid #dce2de;flex-wrap:wrap;align-items:end;gap:10px 16px;min-height:58px;padding:9px 0;display:flex;position:relative}.resort-map-search{flex:0 260px;gap:3px;display:grid}.resort-map-search>span{color:#5b685f;text-transform:uppercase;font-size:.63rem;font-weight:800}.resort-map-search input{color:#304036;font:inherit;background:#fff;border:1px solid #cdd5cf;border-radius:4px;width:100%;min-height:30px;padding:4px 8px;font-size:.78rem;font-weight:700}.resort-map-search-results{z-index:9;background:#fff;border:1px solid #ccd5cf;border-radius:4px;min-width:260px;display:grid;position:absolute;top:55px;left:0;box-shadow:0 8px 18px #17271d1f}.resort-map-search-results>button{color:#2f3d34;cursor:pointer;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0ed;gap:2px;padding:8px 10px;display:grid}.resort-map-search-results>button:hover{background:#f8f1f1}.resort-map-search-results small,.resort-map-search-results>span{color:#68736b;font-size:.73rem}.resort-map-search-results>span{padding:9px 10px}.resort-map-summary{flex-wrap:wrap;flex:360px;justify-content:flex-end;align-items:center;gap:5px 11px;display:flex}.resort-map-summary span,.resort-map-summary button{color:#536058;font:inherit;background:0 0;border:0;border-radius:3px;align-items:center;gap:4px;padding:3px 2px;font-size:.72rem;display:inline-flex}.resort-map-summary button{cursor:pointer}.resort-map-summary button:hover{background:#f8f1f1}.resort-map-summary b{color:#2d3c32;font-size:.83rem}.resort-map-summary .is-arrival b{color:#c00610}.resort-map-summary .is-departure b{color:#153ee6}.resort-map-summary .is-daycare b{color:#298230}.resort-map-summary .is-overnight b{color:#3b4440}.resort-map-summary .is-play-group-one_on_one,.resort-map-summary .is-play-group-one_on_one b{color:#a93636}.resort-map-summary .is-play-group-players,.resort-map-summary .is-play-group-players b{color:#8d6b00}.resort-map-summary .is-play-group-companions,.resort-map-summary .is-play-group-companions b{color:#69538f}.resort-map-summary .is-play-group-adorable,.resort-map-summary .is-play-group-adorable b{color:#416f92}.resort-map-summary .is-play-group-waggers,.resort-map-summary .is-play-group-waggers b{color:#427b36}.resort-map-summary .is-play-group-evaluations,.resort-map-summary .is-play-group-evaluations b{color:#606060}.resort-map-summary .is-unassigned,.resort-map-summary .is-unassigned b{color:#a77320}.resort-map-open-plan{color:#7f1216;cursor:pointer;font:inherit;background:#fff;border:1px solid #7f1216;border-radius:3px;justify-self:start;padding:7px 9px;font-size:.75rem;font-weight:800}.resort-map-open-plan:hover{background:#f8f1f1}.resort-map-area,.resort-map-area.is-hallway span{border-radius:0!important}.resort-map-area:not(.is-selected){border-color:#0000!important}.resort-map-area:not(.is-selected):not(.is-hallway){border-color:#51605773!important}.resort-map-area:hover{border-color:#0000}.resort-map-area.is-selected{border-style:solid!important;border-color:#7f1216!important}.resort-map-search input:focus{box-shadow:none;border-color:#cdd5cf;outline:0}.resort-map-frame>.resort-map-legend{z-index:4;background:#f7f9f7f5;margin:0;position:absolute;bottom:24px;left:0;right:16px;box-shadow:0 2px 10px #2231271f}@media (max-width:900px){.resort-map-frame>.resort-map-legend{right:0}}.resort-map-reservation-times .is-play-group-one_on_one{color:#a93636}.resort-map-reservation-times .is-play-group-players{color:#8d6b00}.resort-map-reservation-times .is-play-group-companions{color:#69538f}.resort-map-reservation-times .is-play-group-adorable{color:#416f92}.resort-map-reservation-times .is-play-group-waggers{color:#427b36}.resort-map-reservation-times .is-play-group-evaluations{color:#606060}.resort-map-reservation-times .is-play-group-unassigned{color:#a77320}.resort-map-suite-type{color:#5f6c63;font-weight:800;margin-top:-7px!important;font-size:.78rem!important}.resort-map-reservation-times .resort-map-pet-name{display:block}.resort-map-reservation-times .resort-map-pet-name dt{color:#34463a;font-size:.72rem}.resort-map-upload-empty{aspect-ratio:10000/6600;color:#5f6c63;text-align:center;background:#fafbfa;border:1px dashed #b8c2ba;align-content:center;justify-items:center;gap:8px;padding:24px;display:grid}.resort-map-upload-empty strong{color:#303d34}.resort-map-upload-empty input{display:none}.resort-map-upload-empty button{color:#fff;cursor:pointer;font:inherit;background:#7f1216;border:1px solid #7f1216;border-radius:3px;padding:8px 12px;font-size:.8rem;font-weight:800}.resort-map-upload-empty button:disabled{opacity:.65}.resort-map-upload-input{display:none}.resort-map-mode-control .resort-map-delete-map{color:#8a1e24}.resort-map-mode-control .resort-map-delete-map:hover:not(:disabled){background:#f9eeee}.resort-map-command-bar .scheduler-view-context{color:#5e6561;gap:12px;margin-top:9px;font-size:12px}.resort-map-command-bar .scheduler-view-context>strong{color:#333936;font-size:13px}.resort-map-command-bar .scheduler-view-context select{appearance:none;color:#333936;cursor:pointer;font:inherit;background:0 0;border:0;padding:1px 14px 1px 0;font-size:13px;font-weight:700;line-height:1.2}@media (max-width:720px){.resort-map-operations-bar{align-items:stretch}.resort-map-search{flex-basis:100%}.resort-map-summary{justify-content:flex-start}.resort-map-search-results{width:100%}}.resort-map-area.is-pawtender-setup{color:#5d0308;background:#e3061366;border-color:#c00610}.resort-map-area.is-pawtender-housekeeping{color:#17201c;background:#48514d70;border-color:#3b4440}.resort-map-area.is-pawtender-exit-clean-upcoming{color:#613900;background:#cd871866;border-color:#a86709}.resort-map-area.is-pawtender-exit-clean-ready{color:#0b237f;background:#153ee666;border-color:#153ee6}.resort-map-area.is-pawtender-none{color:#5f6963;background:#c8cfca5c;border-color:#adb6af}.resort-map-area.is-pawtender-enrichment{color:#52103f;background:#9b2c7b6b;border-color:#8d1f6d}.resort-map-summary .is-pawtender-setup,.resort-map-summary .is-pawtender-setup b{color:#c00610}.resort-map-summary .is-pawtender-housekeeping,.resort-map-summary .is-pawtender-housekeeping b{color:#3b4440}.resort-map-summary .is-pawtender-exit-clean-upcoming,.resort-map-summary .is-pawtender-exit-clean-upcoming b{color:#a86709}.resort-map-summary .is-pawtender-exit-clean-ready,.resort-map-summary .is-pawtender-exit-clean-ready b{color:#153ee6}.resort-map-pawtender-task{border-left:3px solid #153ee6;padding-left:8px;font-weight:800;color:#273a75!important}.resort-map-summary .resort-map-work-summary{text-align:left;border-left:2px solid;align-content:start;align-items:start;gap:1px;min-width:118px;padding:4px 7px;display:grid}.resort-map-summary .resort-map-work-summary strong{color:inherit;font-size:.72rem}.resort-map-summary .resort-map-work-summary span{color:#5b665f;padding:0;font-size:.68rem}.resort-map-summary .resort-map-work-summary span b{color:inherit}.resort-map-summary .resort-map-work-summary small{color:#78827b;font-size:.62rem;font-weight:700}.resort-map-summary .resort-map-work-summary.is-pawtender-setup{color:#c00610}.resort-map-summary .resort-map-work-summary.is-pawtender-housekeeping{color:#3b4440}.resort-map-summary .resort-map-work-summary.is-pawtender-exit-clean{color:#153ee6}.resort-map-area.is-pawtender-setup-done,.resort-map-area.is-pawtender-housekeeping-done,.resort-map-area.is-pawtender-exit-clean-done{color:#124919;background:#29823061;border-color:#298230}.resort-map-summary .is-pawtender-setup-done,.resort-map-summary .is-pawtender-setup-done b,.resort-map-summary .is-pawtender-housekeeping-done,.resort-map-summary .is-pawtender-housekeeping-done b,.resort-map-summary .is-pawtender-exit-clean-done,.resort-map-summary .is-pawtender-exit-clean-done b{color:#298230}.resort-map-area.is-pawtender-enrichment-done{color:#124919;background:#29823061;border-color:#298230}.resort-map-summary .is-pawtender-enrichment,.resort-map-summary .is-pawtender-enrichment b{color:#8d1f6d}.resort-map-summary .is-pawtender-enrichment-done,.resort-map-summary .is-pawtender-enrichment-done b{color:#298230}.resort-map-summary .resort-map-work-summary.is-pawtender-enrichment{color:#8d1f6d}.resort-map-pawtender-tasks>div.is-enrichment{border-left-color:#8d1f6d}.resort-map-area.is-hallway.is-pawtender-housekeeping{background:#48514d2e}.resort-map-area.is-hallway.is-pawtender-housekeeping-done{background:#2982302e}.resort-map-summary-list{max-height:calc(100dvh - 160px);padding-right:3px}.resort-map-detail{align-self:start;max-height:calc(100dvh - 128px);position:sticky;top:12px}.resort-map-detail:has(.resort-map-summary-list){flex-direction:column;align-self:stretch;height:100%;min-height:0;max-height:none;display:flex;overflow:hidden}.resort-map-detail:has(.resort-map-summary-list) .resort-map-summary-list{flex:auto;min-height:0;max-height:none;overflow-y:auto}.resort-map-pawtender-tasks>div{border:1px solid #cfd7d1;border-radius:3px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:7px 8px;display:grid}.resort-map-pawtender-tasks small{color:#68736b;grid-column:1/-1}.resort-map-pawtender-tasks button:disabled{cursor:default;opacity:.65}.resort-map-summary-list-item{background:#fff;border:1px solid #cfd7d1;border-radius:3px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 8px;display:grid}.resort-map-summary-list-item>button:first-child{background:0 0;border:0;padding:0}.resort-map-summary-list-item:hover{background:#f1f5f1;border-color:#8da095}.resort-map-summary-list .resort-map-summary-complete{color:#fff;text-align:center;background:#7f1216;border-color:#7f1216;padding:5px 7px;font-size:.68rem;font-weight:800}.resort-map-summary-list .resort-map-summary-complete:hover:not(:disabled){background:#621014;border-color:#621014}.resort-map-summary-list .resort-map-summary-complete:disabled,.resort-map-pawtender-tasks button:disabled{color:#f7f9f8;cursor:not-allowed;opacity:1;background:#aab3ad;border-color:#aab3ad}.resort-map-solo-star-pill{color:#7a1f51;letter-spacing:.025em;text-transform:uppercase;vertical-align:middle;background:#fbe5ec;border:1px solid #d19ab6;border-radius:999px;margin-left:5px;padding:2px 4px;font-size:.58rem;font-weight:800;line-height:1;display:inline-block}@media (max-width:900px){.resort-map-detail{max-height:none;position:static}.resort-map-summary-list{max-height:none}}.resort-map-fullscreen{color:#303734;cursor:pointer;font:inherit;white-space:nowrap;background:#fff;border:1px solid #5c635f;border-radius:4px;min-height:30px;margin-left:auto;padding:5px 9px;font-size:12px;font-weight:800}.resort-map-fullscreen:hover,.resort-map-fullscreen:focus-visible{color:#7f1216;background:#f8f1f1;border-color:#7f1216;outline:none}.resort-map-header-freshness{color:#6b746e;margin-top:-3px;font-size:.68rem;line-height:1.25}.resort-map-future-lodging-note{color:#7a5a1b;margin-top:3px;font-weight:700;display:block}.resort-map-suite-pets{border-top:1px solid #d9e0db;gap:5px;margin-top:8px;padding-top:8px;display:grid}.resort-map-suite-pets>div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.resort-map-suite-pets b{color:#34463a;font-size:.78rem}.resort-map-suite-pets span{font-size:.76rem}.resort-map-suite-timing{border-top:1px solid #d9e0db;gap:5px;margin:8px 0 0;padding-top:8px;display:grid}.resort-map-suite-timing div{grid-template-columns:68px minmax(0,1fr);align-items:baseline;gap:8px;display:grid}.resort-map-suite-timing dt{color:#5f6c63;text-transform:uppercase;font-size:.68rem;font-weight:800}.resort-map-suite-timing dd{color:#2d3c32;margin:0;font-size:.78rem;font-weight:700}.resort-map-suite-pets .is-play-group-one_on_one{color:#a93636}.resort-map-suite-pets .is-play-group-players{color:#8d6b00}.resort-map-suite-pets .is-play-group-companions{color:#69538f}.resort-map-suite-pets .is-play-group-adorable{color:#416f92}.resort-map-suite-pets .is-play-group-waggers{color:#427b36}.resort-map-suite-pets .is-play-group-evaluations{color:#606060}.resort-map-suite-pets .is-play-group-unassigned{color:#a77320}.resort-map-pawtender-completion-dock{border-top:1px solid #dce2de;padding-top:10px}.resort-map-pawtender-tasks{gap:7px;display:grid}.resort-map-pawtender-tasks>div{border:1px solid #cfd7d1;border-left:3px solid #c00610;border-radius:3px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.resort-map-pawtender-tasks>div.is-housekeeping{border-left-color:#3b4440}.resort-map-pawtender-tasks>div.is-exit-clean-ready{border-left-color:#153ee6}.resort-map-pawtender-tasks>div>div{gap:2px;display:grid}.resort-map-pawtender-tasks strong{color:#34463a;font-size:.8rem}.resort-map-pawtender-tasks small{color:#68736b;font-size:.7rem}.resort-map-pawtender-tasks button{color:#fff;cursor:pointer;font:inherit;background:#7f1216;border:1px solid #7f1216;border-radius:3px;padding:6px 8px;font-size:.7rem;font-weight:800}.resort-map-pawtender-tasks button:disabled{color:#f7f9f8;cursor:not-allowed;opacity:1;background:#aab3ad;border-color:#aab3ad}:-webkit-any(.resort-map-shell:fullscreen,.resort-map-shell:-webkit-full-screen){box-sizing:border-box;background:#fff;flex-direction:column;gap:12px;max-width:none;height:100vh;padding:16px 20px;display:flex;overflow:hidden}:is(.resort-map-shell:fullscreen,.resort-map-shell:fullscreen){box-sizing:border-box;background:#fff;flex-direction:column;gap:12px;max-width:none;height:100vh;padding:16px 20px;display:flex;overflow:hidden}:-webkit-any(.resort-map-shell:fullscreen .resort-map-command-bar,.resort-map-shell:-webkit-full-screen .resort-map-command-bar,.resort-map-shell:fullscreen .resort-map-operations-bar,.resort-map-shell:-webkit-full-screen .resort-map-operations-bar,.resort-map-shell:fullscreen .resort-map-note,.resort-map-shell:-webkit-full-screen .resort-map-note){flex:none}:is(.resort-map-shell:fullscreen .resort-map-command-bar,.resort-map-shell:fullscreen .resort-map-command-bar,.resort-map-shell:fullscreen .resort-map-operations-bar,.resort-map-shell:fullscreen .resort-map-operations-bar,.resort-map-shell:fullscreen .resort-map-note,.resort-map-shell:fullscreen .resort-map-note){flex:none}:-webkit-any(.resort-map-shell:fullscreen .resort-map-workspace,.resort-map-shell:-webkit-full-screen .resort-map-workspace){flex:auto;min-height:0}:is(.resort-map-shell:fullscreen .resort-map-workspace,.resort-map-shell:fullscreen .resort-map-workspace){flex:auto;min-height:0}:-webkit-any(.resort-map-shell:fullscreen .resort-map-frame,.resort-map-shell:-webkit-full-screen .resort-map-frame){min-height:0;display:flex}:is(.resort-map-shell:fullscreen .resort-map-frame,.resort-map-shell:fullscreen .resort-map-frame){min-height:0;display:flex}:-webkit-any(.resort-map-shell:fullscreen .resort-map-viewport,.resort-map-shell:-webkit-full-screen .resort-map-viewport){flex:auto;align-self:center;max-height:100%}:is(.resort-map-shell:fullscreen .resort-map-viewport,.resort-map-shell:fullscreen .resort-map-viewport){flex:auto;align-self:center;max-height:100%}:-webkit-any(.resort-map-shell:fullscreen .resort-map-detail,.resort-map-shell:-webkit-full-screen .resort-map-detail){max-height:100%}:is(.resort-map-shell:fullscreen .resort-map-detail,.resort-map-shell:fullscreen .resort-map-detail){max-height:100%}:-webkit-any(.resort-map-shell:fullscreen .resort-map-summary-list,.resort-map-shell:-webkit-full-screen .resort-map-summary-list){max-height:none}:is(.resort-map-shell:fullscreen .resort-map-summary-list,.resort-map-shell:fullscreen .resort-map-summary-list){max-height:none}.app-content-frame:has(.resort-map-shell){grid-template-rows:auto minmax(0,1fr);height:100dvh;overflow:hidden}.app-main:has(.resort-map-shell){grid-template-rows:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.resort-map-shell{grid-template-rows:auto auto minmax(0,1fr) auto;width:100%;max-width:none;height:100%;min-height:0;margin:0;padding-bottom:12px;overflow:hidden}.resort-map-workspace{align-items:stretch;min-height:0;overflow:hidden}.resort-map-frame{align-items:center;min-height:0;display:flex}.resort-map-viewport{aspect-ratio:auto;flex:auto;width:100%;max-width:100%;height:100%;max-height:100%}@media (max-width:900px){:is(.app-content-frame:has(.resort-map-shell),.app-main:has(.resort-map-shell)),.resort-map-shell,.resort-map-workspace{height:auto;overflow:visible}.resort-map-frame{display:block}.resort-map-viewport{width:100%;height:auto}}.resort-map-summary-completed{color:#298230;white-space:nowrap;padding:5px 0;font-size:.68rem;font-weight:800}.resort-map-area{box-sizing:border-box}.resort-map-summary-list{align-content:start}.resort-map-summary-list button .resort-map-summary-stay-type{letter-spacing:.035em;text-transform:uppercase;border:1px solid;border-radius:999px;align-self:start;width:fit-content;margin-top:2px;padding:3px 5px;font-size:.61rem;font-weight:800;line-height:1}.resort-map-summary-list button .resort-map-summary-stay-type.is-boarding{color:#4e5a52;background:#eef1ef}.resort-map-summary-list button .resort-map-summary-stay-type.is-daycare{color:#267620;background:#e6f2e5}.resort-map-summary-list button .resort-map-summary-stay-type.is-mixed{color:#765927;background:#f5efe5}.resort-map-occupancy-header{color:#5b665f;align-items:stretch;gap:12px;margin-left:auto;font-size:.7rem;font-weight:700;display:flex}.resort-map-occupancy-header span{grid-template-columns:1fr;gap:1px;line-height:1.1;display:grid}.resort-map-occupancy-header span+span{border-left:1px solid #d8dfda;padding-left:12px}.resort-map-occupancy-header strong{color:#5b665f;font-size:.7rem}.resort-map-occupancy-header b{color:#29372f;font-size:.78rem}.resort-map-occupancy-header small{color:#7a837d;font-size:.64rem;font-weight:700}.resort-map-occupancy-header .is-total b{color:#1f3c2b;letter-spacing:-.02em;font-size:.87rem}.resort-map-occupancy-header .is-total strong{color:#35453b;font-size:.74rem}.resort-map-occupancy-header .is-total small{font-size:.67rem}.resort-map-occupancy-header.has-daycare{gap:8px}.resort-map-occupancy-header.has-daycare span{min-width:68px}.resort-map-occupancy-header.has-daycare span+span{padding-left:8px}.resort-map-occupancy-header+.resort-map-fullscreen{margin-left:0}@media (max-width:900px){.resort-map-command-center{grid-template-columns:minmax(0,1fr)}.resort-map-date-navigation,.resort-map-view-context,.resort-map-header-freshness{grid-area:auto}}.resort-map-command-center{grid-template-columns:minmax(0,1fr) auto;align-content:start;gap:2px 18px;display:grid}.resort-map-header-actions{grid-area:1/2/-1;align-self:center;place-items:end;gap:7px;display:grid}.resort-map-header-actions .resort-map-occupancy-header,.resort-map-header-actions .resort-map-fullscreen{margin-left:0}.resort-map-command-bar{grid-template-columns:174px minmax(200px,1fr) minmax(330px,auto)!important}.resort-map-publish-state{align-self:start}.resort-map-command-center{align-content:start;display:block}.resort-map-date-navigation,.resort-map-view-context,.resort-map-header-freshness{grid-area:auto}.resort-map-view-context{margin-top:9px!important}.resort-map-header-freshness{margin-top:3px;display:block}.resort-map-header-actions{grid-area:auto;place-self:center end}.resort-map-publish-stack{align-self:start;gap:6px;display:grid}.resort-map-header-map-actions{grid-template-columns:1fr 1fr;gap:6px;display:grid}.resort-map-publish-stack .resort-map-fullscreen{width:100%;margin:0}.resort-map-publish-stack .resort-map-fullscreen:disabled{color:#8b958e;cursor:not-allowed;background:#eef1ef;border-color:#c4cbc6}@media (max-width:900px){.resort-map-command-bar{grid-template-columns:132px minmax(0,1fr)!important}.resort-map-publish-stack{grid-area:1/1}.resort-map-command-center{grid-area:1/2;min-width:0}.resort-map-header-actions{grid-area:2/1/auto/-1;justify-self:stretch}.resort-map-header-actions:empty{display:none}.resort-map-header-actions .resort-map-occupancy-header{justify-content:flex-end}.resort-map-viewport{aspect-ratio:10000/6600;height:auto;max-height:none}.resort-map-summary-list-item{grid-template-columns:minmax(0,1fr) auto}.resort-map-summary-list .resort-map-summary-complete{white-space:nowrap;display:block}}@media (max-width:640px){.resort-map-command-bar{gap:10px;padding:10px;grid-template-columns:minmax(0,1fr)!important}.resort-map-publish-stack,.resort-map-command-center,.resort-map-header-actions{grid-area:auto;justify-self:stretch;width:100%;min-width:0}.resort-map-header-actions{align-items:stretch}.resort-map-header-actions .resort-map-occupancy-header{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;gap:8px 12px;width:100%;margin-left:0;display:grid}.resort-map-header-actions .resort-map-occupancy-header span{min-width:0}.resort-map-header-actions .resort-map-occupancy-header span+span{padding-left:12px}.resort-map-header-actions .resort-map-occupancy-header span:nth-child(odd){border-left:0;padding-left:0}.resort-map-header-actions .resort-map-occupancy-header span:nth-child(n+3){border-top:1px solid #d8dfda;padding-top:6px}}
