#modal:has(#spaces-panel){width:min(1060px,calc(100vw - 48px));max-width:1060px}#spaces-panel{color:#e9ede2;font-size:14px;line-height:1.6}#spaces-panel *{box-sizing:border-box}#spaces-panel button{font:inherit;cursor:pointer;min-height:44px}#spaces-panel button:disabled{opacity:.45;cursor:default}#spaces-panel button:focus-visible{outline:2px solid #e7c98c;outline-offset:4px}#spaces-panel h2{font-size:clamp(26px,4vw,42px);line-height:1.15;margin:20px 0 10px;letter-spacing:-.8px}#spaces-panel p{font-size:14px;line-height:1.65;color:#c0d3ce}#spaces-panel h3{margin:4px 0 8px;font-size:23px}.spaces-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.spaces-top>span{font-size:10px;color:#b5cfc0;letter-spacing:1px}.spaces-top button{border:0;background:transparent;color:#d1dfd5;padding:8px 0}.spaces-intro{max-width:660px}.spaces-scene{position:relative;isolation:isolate;aspect-ratio:16/10;overflow:hidden;border-radius:18px;margin-top:25px;background:#18363e var(--space-scene) center/cover;box-shadow:inset 0 0 0 1px #c8ddc144,0 16px 40px #0003}.spaces-scene:before{position:absolute;inset:0;content:'';background:linear-gradient(#071d28b3,transparent 40%,#071d2855);pointer-events:none;z-index:1}.spaces-light{position:absolute;inset:0;pointer-events:none;transition:background .5s;background:linear-gradient(120deg,#b9e3e715,transparent 65%)}.theme-sunset .spaces-light{background:linear-gradient(120deg,#ffbc7066,#b6655e20 60%,#36283c33);mix-blend-mode:soft-light}.spaces-scene-heading{position:absolute;left:26px;top:22px;z-index:2;text-shadow:0 2px 9px #08151e}.spaces-scene-heading>span{font-size:9px;letter-spacing:2px;color:#dfceaa}.spaces-scene-heading h3{font-size:clamp(23px,3vw,34px)!important;color:#fff5e5}.spaces-scene-heading p{margin:0;font-size:12px!important;color:#d4dfda!important}.spaces-hotspot{position:absolute;z-index:3;border:0;padding:0;background:transparent;transform:translate(-50%,-50%);color:#f3ecd7;display:flex;align-items:center;flex-direction:column;justify-content:flex-end;min-width:150px;min-height:75px}.slot-wall{left:30%;top:39%}.slot-table{left:65%;top:76%}.slot-sign{left:50%;top:36%}.slot-counter{left:62%;top:74%}.spaces-hotspot-label{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.2;padding:9px 12px;border-radius:30px;background:#09212de8;border:1px solid #e0c68e75;box-shadow:0 6px 18px #0004;white-space:nowrap}.spaces-hotspot-label i{font-size:19px;font-style:normal;color:#ead5a2}.spaces-hotspot.selected .spaces-hotspot-label{background:#e0cc95;color:#102f36}.spaces-hotspot.selected i{color:#173d42}.spaces-object{width:92px;height:100px;display:grid;place-items:end center;filter:drop-shadow(2px 7px 5px #13232255);transition:transform .3s}.spaces-object:empty{display:none}.spaces-object svg{height:100%;width:100%}.slot-wall .spaces-object,.slot-sign .spaces-object{height:85px;width:115px}.spaces-postcard{background:#efe6ce;border:6px solid #efe6ce;position:relative;box-shadow:0 5px 12px #07182166;transform:rotate(-3deg);height:100%;width:100%}.spaces-postcard img{width:100%;height:100%;object-fit:cover}.spaces-postcard>span{position:absolute;right:-10px;bottom:-12px;font-size:23px;color:#e9c46f;text-shadow:0 2px 4px #17343e}.spaces-preview-label{position:absolute;bottom:15px;left:20px;z-index:2;background:#081e2bd9;border:1px solid #c5dcb72b;border-radius:5px;color:#e4d2aa;font-size:9px;letter-spacing:1.4px;padding:7px 10px}.spaces-theme{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0;padding:18px 0;border-bottom:1px solid #bed3bb25}.spaces-theme>div:first-child>*{display:block}.spaces-theme small,.spaces-picker-head small{font-size:9px;letter-spacing:1.4px;color:#deca9b}.spaces-theme>div:first-child>span{color:#a6beb7;font-size:12px}.spaces-theme>div:last-child{display:flex;gap:8px}.spaces-theme button{padding:10px 14px;color:#dbe5d9;border:1px solid #c7d9bc33;border-radius:30px;background:#13343e;display:flex;align-items:center;gap:8px}.spaces-theme button[aria-pressed=true]{border-color:#e0c58e;background:#bba8761c}.spaces-theme button i{width:15px;height:15px;border-radius:50%;background:linear-gradient(135deg,#a9dbe6,#6f9e9d)}.spaces-theme button.theme-sunset i{background:linear-gradient(135deg,#f5d29d,#cb8069)}.spaces-invite{display:flex;gap:18px;align-items:center;padding:16px 0}.spaces-invite>span{font-size:38px;color:#d8bd85}.spaces-invite h3{font-size:21px!important}.spaces-invite p{margin:3px 0}.spaces-picker-head{display:flex;align-items:center;justify-content:space-between}.spaces-picker-head button{background:none;border:1px solid #bdd4b633;border-radius:50%;color:#e7eadc;width:44px}.spaces-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.spaces-item{text-align:left;display:flex;flex-direction:column;gap:7px;padding:14px;border:1px solid #bacfb633;border-radius:14px;background:#0b2630;color:#e7ebdf}.spaces-item.chosen{border-color:#dfc48f;background:#b7a27617}.spaces-item-art{width:100%;height:95px;display:grid;place-items:center;background:radial-gradient(ellipse,#cbdcb515,transparent 70%);margin-bottom:8px}.spaces-item-art svg{width:80px;height:95px}.spaces-item-art .spaces-postcard{width:100px;height:75px}.spaces-item-art.empty{font-size:35px;color:#94afa8}.spaces-item b{font-size:14px}.spaces-item small{font-size:11px;color:#b2c7bd;line-height:1.5}.spaces-footer{padding-top:18px;border-top:1px solid #bad3b52b;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.spaces-footer p{font-size:12px!important;max-width:340px}.spaces-footer>div{display:flex;gap:10px}.spaces-footer button{border:1px solid #bfd2b533;background:transparent;color:#cedbd0;border-radius:9px;padding:12px 16px}.spaces-footer button.primary,.spaces-leave .primary{background:#d1dfa4;color:#153138;border-color:#d1dfa4}.spaces-fine{font-size:10px!important;color:#92afa7!important;margin-top:20px}.spaces-error,.spaces-notice,.spaces-leave,.spaces-locked{padding:18px;border-radius:12px;background:#d4b77b14;border:1px solid #d4b77b55}.spaces-notice{color:#d4e8bb!important}.spaces-leave{margin-top:20px}.spaces-leave button,.spaces-locked button{padding:12px 16px;border:1px solid #cddba855;border-radius:8px;color:#dbe4d3;background:#10303a;margin:6px 8px 0 0}@media(max-width:600px){#modal:has(#spaces-panel){width:calc(100vw - 20px);max-width:calc(100vw - 20px);padding:22px 14px}.spaces-scene{aspect-ratio:4/5;border-radius:14px;background-position:center}.spaces-scene-heading{left:15px;top:17px;right:15px}.spaces-scene-heading p{font-size:11px!important;max-width:235px}.spaces-scene-heading h3{font-size:24px!important}.spaces-hotspot{min-width:110px}.spaces-hotspot-label{font-size:10px;padding:8px}.spaces-object{width:70px;height:80px}.slot-wall{left:31%;top:43%}.slot-table{left:67%;top:76%}.slot-sign{left:50%;top:43%}.slot-counter{left:62%;top:75%}.slot-wall .spaces-object,.slot-sign .spaces-object{width:90px;height:65px}.spaces-preview-label{left:12px;font-size:8px;bottom:12px;letter-spacing:.6px}.spaces-theme{flex-direction:column;align-items:flex-start;gap:12px}.spaces-theme>div:last-child{width:100%}.spaces-theme button{flex:1;justify-content:center;font-size:12px;padding:9px}.spaces-items{grid-template-columns:repeat(2,minmax(0,1fr))}.spaces-footer{display:block}.spaces-footer>div{flex-direction:column}.spaces-footer button{width:100%}.spaces-top>span{font-size:8px;letter-spacing:.5px}.spaces-invite{align-items:flex-start}.spaces-invite h3{font-size:19px!important}}@media(prefers-reduced-motion:reduce){.spaces-object,.spaces-light{transition:none}}

.spaces-accent{position:absolute;left:54%;top:70%;width:23%;height:5%;background:repeating-linear-gradient(90deg,#648b93,#648b93 8px,#b1cec8 9px,#648b93 10px);opacity:.9;transform:skewX(-25deg);box-shadow:0 3px 4px #18262b33;transition:background .4s}.theme-sunset .spaces-accent{background:repeating-linear-gradient(90deg,#aa7056,#aa7056 8px,#e5b582 9px,#aa7056 10px)}.theme-sunset .spaces-postcard{border-color:#d6b68b;background:#d6b68b}.kiosk .spaces-accent{left:44%;top:68%;width:30%}.spaces-entry{margin:20px 0;padding:20px;border:1px solid #ccb98166;border-radius:14px;background:linear-gradient(120deg,#ad9d6722,#12364188)}.spaces-entry p{color:#c3d5c9;font-size:13px}.spaces-entry .primary{width:100%}.spaces-refresh{padding:12px 16px;background:#283d37;color:#dfd2ad;border:1px solid #cfb98077;border-radius:9px;margin-bottom:16px}
@keyframes space-place{from{opacity:.45;translate:0 5px}to{opacity:1;translate:0 0}}.spaces-object:not(:empty){animation:space-place .22s ease-out}@media(prefers-reduced-motion:reduce){.spaces-object{animation:none}.spaces-accent{transition:none}}
/* Surface anchoring: the object's bottom, not the whole button, sits on the tabletop. */
.spaces-hotspot{height:0;min-height:0;transform:translateX(-50%)}.spaces-object{position:absolute;bottom:0}.spaces-hotspot-label{position:absolute;top:8px}.slot-sign{top:24%;left:50%}.slot-counter{top:64%;left:62%}.slot-table{top:75%;left:65%}.kiosk .spaces-scene-heading{top:auto;bottom:48px}.kiosk .spaces-accent{top:63%;left:43%;width:30%;height:2%}.spaces-accent{top:74%;left:54%;height:3%}.slot-wall .spaces-postcard{transform:rotate(-1deg)}.slot-sign .spaces-postcard{transform:none}.kiosk .spaces-scene-heading p{max-width:340px}
@media(max-width:600px){.spaces-scene{aspect-ratio:1/1}.slot-wall{left:20%;top:39%}.slot-table{left:74%;top:75%}.slot-sign{left:50%;top:24%}.slot-counter{left:69%;top:64%}.slot-sign .spaces-object{height:42px;width:68px}.spaces-hotspot-label{font-size:9px;padding:7px;gap:4px}.spaces-hotspot-label i{font-size:14px}.kiosk .spaces-scene-heading{bottom:40px}.kiosk .spaces-scene-heading h3{font-size:21px!important}.kiosk .spaces-scene-heading p{font-size:10px!important}.spaces-accent{left:57%;width:32%}.kiosk .spaces-accent{left:40%;width:43%}}
/* Compact desktop workbench: scene stays whole, decisions and Apply remain in reach. */
@media(min-width:761px){#modal:has(#spaces-panel){padding:22px 26px}#spaces-panel h2{font-size:28px;margin:8px 0 4px}.spaces-top button{min-height:32px!important;padding:0}.spaces-intro{margin:0 0 12px;font-size:12px!important;max-width:none}.spaces-workbench{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:18px;align-items:start}.spaces-workbench>.spaces-scene{margin:0;aspect-ratio:16/10}.spaces-options{max-height:380px;overflow:auto;padding-right:5px}.spaces-theme{display:block;margin:0 0 12px;padding:0 0 12px}.spaces-theme>div:last-child{margin-top:9px}.spaces-theme button{font-size:11px;padding:8px 11px}.spaces-invite{padding:8px 0;gap:10px}.spaces-invite h3{font-size:18px!important}.spaces-invite p{font-size:12px!important}.spaces-picker h3{font-size:18px!important}.spaces-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.spaces-item{padding:10px;gap:4px}.spaces-item-art{height:62px;margin-bottom:3px}.spaces-item-art svg{height:62px;width:60px}.spaces-item-art .spaces-postcard{height:52px;width:75px}.spaces-item b{font-size:12px}.spaces-item small{font-size:10px}.spaces-scene-heading{left:17px;top:15px}.spaces-scene-heading h3{font-size:25px!important}.spaces-scene-heading p{font-size:10px!important;max-width:270px}.spaces-object{width:67px;height:74px}.slot-wall .spaces-object,.slot-sign .spaces-object{height:58px;width:82px}.spaces-hotspot-label{font-size:9px;padding:7px 9px;gap:5px}.spaces-hotspot-label i{font-size:15px}.spaces-footer{margin-top:14px;padding-top:10px;gap:12px}.spaces-footer p{margin:0;max-width:360px;font-size:11px!important}.spaces-footer button{font-size:12px!important;padding:10px 12px}.spaces-fine{margin:10px 0 0;font-size:9px!important}.kiosk .spaces-scene-heading{bottom:43px}.kiosk .spaces-scene-heading h3{font-size:20px!important}}
@media(max-width:600px){#modal:has(#spaces-panel){padding:15px 12px}#spaces-panel h2{font-size:22px;margin:8px 0 5px;letter-spacing:-.4px}.spaces-intro{font-size:11px!important;line-height:1.45!important;margin:0 0 12px}.spaces-top button{min-height:30px!important;font-size:12px!important}.spaces-scene{aspect-ratio:16/10;margin-top:12px}.spaces-scene-heading{top:10px;left:12px}.spaces-scene-heading>span{font-size:7px;letter-spacing:1px}.spaces-scene-heading h3{font-size:17px!important;margin:2px 0!important}.spaces-scene-heading p{display:none}.spaces-object{width:43px;height:51px}.slot-wall .spaces-object{width:64px;height:43px}.slot-sign .spaces-object{width:55px;height:32px}.slot-wall{left:30%;top:39%}.slot-table{left:65%;top:75%}.slot-sign{left:50%;top:24%}.slot-counter{left:62%;top:64%}.spaces-hotspot-label{font-size:8px;min-height:24px;padding:5px 7px;top:7px}.spaces-hotspot-label i{font-size:12px}.spaces-postcard{border-width:3px}.spaces-postcard>span{font-size:15px;right:-5px;bottom:-8px}.spaces-preview-label{font-size:7px;bottom:7px;padding:4px 6px;left:8px}.kiosk .spaces-scene-heading{bottom:29px;top:auto;left:12px}.kiosk .spaces-scene-heading h3{font-size:15px!important}.kiosk .spaces-scene-heading>span{font-size:6px}.spaces-accent{left:54%;width:23%}.kiosk .spaces-accent{left:43%;width:30%}.spaces-theme{margin:13px 0;padding-bottom:12px}.spaces-items{margin:12px 0}.spaces-invite{padding:8px 0}.spaces-invite h3{font-size:17px!important}.spaces-invite p{font-size:12px!important}.spaces-fine{font-size:9px!important}}
/* Override generic 44px button minimum only for the anchor; its label remains the hit target. */
#spaces-panel .spaces-hotspot{height:0;min-height:0;padding:0}#spaces-panel .spaces-hotspot-label{top:8px;min-height:32px}#spaces-panel .spaces-hotspot .spaces-object{bottom:0}#spaces-panel .spaces-hotspot:disabled{opacity:1;cursor:default}#spaces-panel .spaces-hotspot:disabled .spaces-hotspot-label{opacity:.65}@media(max-width:600px){#spaces-panel .spaces-hotspot-label{min-height:28px;top:6px}}
/* Keep a 44px tap target BELOW the anchored object; object base stays exactly on the surface. */
#spaces-panel .spaces-hotspot{height:44px;min-height:44px}#spaces-panel .spaces-hotspot .spaces-object{bottom:100%}
#spaces-panel .spaces-hotspot:active:not(:disabled){transform:translateX(-50%) scale(.98)}
.spaces-scene-heading p{display:none}
.spaces-showcase .spaces-scene{margin:15px 0;aspect-ratio:16/10}.spaces-display-object{position:absolute;z-index:3;width:0;height:0;transform:translateX(-50%)}.spaces-display-object>.spaces-object{position:absolute;bottom:0;left:0;transform:translateX(-50%)}.spaces-showcase .spaces-scene-heading p{display:none}.spaces-showcase .spaces-object{animation:none}.spaces-showcase .spaces-scene-heading h3{font-size:25px}@media(max-width:600px){.spaces-showcase .spaces-scene-heading h3{font-size:17px}.spaces-showcase .spaces-scene{aspect-ratio:16/10}}
/* v26 mobile scene title stays above the editable wall artwork. */
@media(max-width:600px){#spaces-panel .spaces-top{padding-right:40px;gap:8px}#spaces-panel .spaces-top>span{font-size:9px;letter-spacing:.2px;text-align:right}#spaces-panel .spaces-scene-heading>span{display:none}#spaces-panel .spaces-scene-heading{top:7px;left:10px;right:10px}#spaces-panel .spaces-scene-heading h3{font-size:15px!important;line-height:1.2;margin:0!important}#spaces-panel .kiosk .spaces-scene-heading{top:auto;bottom:28px}}
