#tour-editor,#tour-login,#tour-confirm{font-family:inherit;color:#313c34;background:#f6f4ec;border:1px solid #d9dccf;border-radius:22px;box-shadow:0 18px 70px #1523182b}
#tour-editor{position:fixed;z-index:62;right:18px;top:90px;width:370px;max-height:calc(100dvh - 110px);overflow:auto;padding:22px;box-sizing:border-box}
#tour-editor[hidden],#tour-login[hidden],#tour-marker-layer[hidden],#tour-frame-bar[hidden]{display:none!important}
.tour-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.tour-editor-heading h2{font-size:24px;margin:0}.tour-editor-heading button{border:0;background:transparent;font-size:24px;cursor:pointer}
#tour-editor p,#tour-login p{font-size:13px;line-height:1.5;color:#647062;margin:10px 0}
#tour-editor label,#tour-login label{display:block;font-size:12px;letter-spacing:.025em;margin:15px 0 6px}
#tour-editor input:not([type=checkbox]),#tour-editor textarea,#tour-editor select,#tour-login input{width:100%;box-sizing:border-box;padding:11px 12px;font:inherit;font-size:14px;border-radius:9px;border:1px solid #cbd0c3;background:#fffef9;color:#293c30}
#tour-editor textarea{resize:vertical;min-height:85px}#tour-editor button:not(.tour-x),#tour-login button:not(.tour-x),#tour-frame-bar button{font:inherit;font-size:13px;cursor:pointer;border:1px solid #c8cec1;border-radius:10px;background:#eeeee5;color:#2f4033;padding:10px 12px}
#tour-editor button:disabled,#tour-login button:disabled{cursor:default;opacity:.5}.tour-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.tour-actions>*{flex:1}.tour-actions .danger{color:#a34335!important}
#tour-editor .primary,#tour-login .primary,#tour-frame-bar .primary{background:#344437;color:#fff;border-color:#344437}#tour-save{width:100%;margin-top:14px}
.tour-row{display:flex;align-items:center;gap:12px}.tour-row label{flex:1}.tour-check{display:flex!important;align-items:center;gap:9px}#tour-editor .tour-check input{width:auto}
#tour-editor .tour-thumb{width:100%;max-height:150px;object-fit:cover;border-radius:10px;margin-top:12px}#tour-editor .tour-thumb[hidden]{display:none}
#tour-editor input[type=file]{font-size:12px;padding:8px}.tour-status{font-size:13px;line-height:1.4;min-height:18px}.tour-status[data-error=true]{color:#a43f32!important}
#tour-login{width:min(410px,calc(100vw - 30px));padding:26px;box-sizing:border-box}#tour-login::backdrop{background:#192c2359;backdrop-filter:blur(3px)}#tour-login .tour-x{float:right;border:0;background:transparent;font-size:24px;cursor:pointer}#tour-login h2{font-size:25px;margin:8px 0}
#tour-frame-bar{position:fixed;z-index:64;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:12px;align-items:center;padding:12px 16px;background:#f8f6ec;border:1px solid #d3d6c9;border-radius:16px;box-shadow:0 8px 40px #102b2330;font-size:14px;max-width:calc(100vw - 24px);box-sizing:border-box}
#tour-marker-layer{position:absolute;inset:0;z-index:7;pointer-events:none;overflow:hidden}.villa-hotspot{pointer-events:auto;position:absolute;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:50%;width:30px;height:30px;background:#34483ee8;color:white;box-shadow:0 2px 9px #10241b30;cursor:pointer;font:500 12px inherit}.villa-hotspot:hover,.villa-hotspot:focus-visible{outline:3px solid #e2bf78;background:#8d713e}.villa-hotspot[hidden]{display:none}
body.tour-editing .villa-hotspot{background:#986d31}body.tour-editing #villa-context{display:none}body.tour-framing .bottom-bar,body.tour-framing #tour-card{opacity:0;pointer-events:none}
#hotspot-render{margin-top:12px;border:1px solid #c4c9bc;border-radius:8px;padding:9px 14px;background:#faf9f1;font:inherit;font-size:13px;cursor:pointer}#tour-edits-warning{color:#8d642a!important}
.tour-share-note{border-top:1px solid #d7dbce;padding-top:12px}.tour-editor-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.tour-editor-footer button{font-size:12px!important}
@media(max-width:650px){#tour-editor{right:8px;left:8px;top:78px;width:auto;max-height:calc(100dvh - 92px);padding:18px}#tour-frame-bar{bottom:18px;width:calc(100vw - 20px);flex-wrap:wrap;justify-content:center}#tour-frame-bar span{flex:1 0 100%;text-align:center}}

.villa-hotspot{padding:0;min-height:0;min-width:0;display:grid;place-items:center;font-family:inherit;font-size:12px;line-height:1;box-sizing:border-box}
