:root{--crema:#f3e9d7;--arena:#e2cfae;--barro:#a5452f;--madera:#6b4226;--tinta:#2b2118;--verde:#2f5d3a;--vidrio:rgba(243,233,215,.86)}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--crema);font-family:Segoe UI,system-ui,-apple-system,sans-serif;color:var(--tinta)}#lienzo{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;display:block;touch-action:none}.top{position:fixed;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:linear-gradient(180deg,rgba(43,33,24,.55),transparent);color:#fff;z-index:5;pointer-events:none}.top *{pointer-events:auto}.marca{font-size:18px;letter-spacing:.5px}.marca b{color:#f6c98a;font-weight:700}.sol{color:#f6c98a}.top nav a{color:#fff;text-decoration:none;margin-left:6px;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.5);font-size:14px}.top nav a.activo{background:var(--barro);border-color:var(--barro)}.panel{position:fixed;top:64px;right:12px;width:280px;max-height:calc(100vh - 80px);overflow:auto;background:var(--vidrio);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:16px;padding:6px 14px 12px;box-shadow:0 8px 30px #3c281440;z-index:4;border:1px solid rgba(165,69,47,.25)}.panel h3{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:var(--barro);margin:12px 0 6px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid rgba(107,66,38,.35);background:#fffaf1;color:var(--tinta);padding:6px 10px;border-radius:999px;font-size:13px;cursor:pointer;transition:.15s}.chip:hover{background:var(--arena)}.chip.on{background:var(--madera);color:#fff;border-color:var(--madera)}.chip.ancho{width:100%;padding:9px}.tog{display:flex;gap:8px;align-items:center;font-size:14px;padding:3px 0;cursor:pointer}.tog input{accent-color:var(--barro);width:16px;height:16px}.ayuda{font-size:12px;color:#6d5a48;margin:8px 0 0}.menu-btn{display:none;position:fixed;top:56px;right:12px;z-index:6;border:0;background:var(--barro);color:#fff;width:42px;height:42px;border-radius:50%;font-size:20px}#carga{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,#fbf3e4,#e9d6b6);transition:opacity .6s}#carga.fuera{opacity:0;pointer-events:none}.logo{font-size:30px;color:var(--madera);letter-spacing:2px;margin-bottom:18px;font-weight:300}.barra{width:min(320px,70vw);height:6px;background:#6b422626;border-radius:6px;overflow:hidden}#progreso{height:100%;width:0;background:linear-gradient(90deg,var(--barro),#e0a35a);transition:width .2s}#carga-txt{margin-top:10px;font-size:13px;color:#7b6450}.walk-hint{position:fixed;bottom:18px;left:50%;transform:translate(-50%);background:#2b2118b3;color:#fff;padding:8px 14px;border-radius:999px;font-size:13px;z-index:6}.hidden{display:none!important}.salir{position:fixed;top:60px;left:12px;z-index:7}.joy{position:fixed;left:24px;bottom:28px;width:120px;height:120px;border-radius:50%;background:#fffaf159;border:2px solid rgba(255,255,255,.6);z-index:7;touch-action:none}#joy-knob{position:absolute;left:35px;top:35px;width:50px;height:50px;border-radius:50%;background:#a5452fd9}.tour-bar{position:fixed;left:0;right:0;bottom:0;padding:12px 14px 16px;background:linear-gradient(0deg,rgba(43,33,24,.65),transparent);z-index:5;display:flex;flex-direction:column;gap:8px;align-items:center}.titulo{color:#fff;font-size:20px;text-shadow:0 1px 6px rgba(0,0,0,.5)}#hotspots{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:4}.hs{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px}.hs .punto{width:34px;height:34px;border-radius:50%;background:#a5452fe6;border:3px solid #fff;box-shadow:0 0 0 6px #ffffff40;animation:latido 2s infinite}.hs .et{background:#2b2118bf;color:#fff;font-size:12px;padding:3px 8px;border-radius:999px;white-space:nowrap}@keyframes latido{0%,to{box-shadow:0 0 0 4px #ffffff4d}50%{box-shadow:0 0 0 12px #fff0}}@media (max-width:760px){.panel{top:auto;bottom:0;right:0;left:0;width:auto;max-height:46vh;border-radius:16px 16px 0 0;transform:translateY(100%);transition:transform .25s}.panel.abierto{transform:none}.menu-btn{display:block}.marca{font-size:15px}.top nav a{padding:5px 9px;font-size:12px}}
