*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;overflow:hidden;background:#0e1116}body{font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.wrap{position:fixed;inset:0}.canvas-holder{position:absolute;inset:0}.hud{position:absolute;z-index:10;color:#eef2f6}.hud.top{top:0;left:0;right:0;display:flex;align-items:center;gap:14px;padding:14px 20px;pointer-events:none;background:linear-gradient(180deg,rgba(10,13,18,.72),rgba(10,13,18,0))}.hud.top h1{font-size:17px;font-weight:700;letter-spacing:.3px}.hud.top .sub{font-size:12px;opacity:.75}.panel{position:absolute;left:16px;top:74px;z-index:11;width:244px;background:rgba(14,18,24,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:14px;color:#e8edf2;max-height:calc(100% - 100px);overflow-y:auto}.panel h3{font-size:11px;text-transform:uppercase;letter-spacing:1px;opacity:.6;margin:12px 0 7px}.panel h3:first-child{margin-top:0}.seg{display:flex;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.14)}.seg button{flex:1 1;padding:9px 6px;font-size:12.5px;font-weight:600;cursor:pointer;background:transparent;color:#cfd8e0;border:0;transition:background .2s}.seg button.on{background:#e8935a;color:#14100c}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips button{padding:5px 9px;font-size:11.5px;border-radius:999px;cursor:pointer;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#dfe6ec}.chips button:hover{background:rgba(255,255,255,.14)}.chips button.novo{border-color:rgba(232,147,90,.55);color:#f2c39e}.rowbtns{display:flex;gap:8px}.rowbtns button{flex:1 1;padding:7px 6px;font-size:12px;border-radius:9px;cursor:pointer;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#dfe6ec}.rowbtns button.on{background:rgba(232,147,90,.25);border-color:rgba(232,147,90,.6)}.legend{font-size:11px;line-height:1.8;opacity:.85}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}.credits{font-size:10.5px;opacity:.5;margin-top:12px;line-height:1.5}.concept{position:absolute;right:16px;top:74px;z-index:11;width:300px;background:rgba(14,18,24,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:12px;color:#e8edf2;max-height:calc(100% - 100px);overflow-y:auto}.concept img{width:100%;border-radius:9px;margin-bottom:4px;display:block}.concept .cap{font-size:10.5px;opacity:.65;margin-bottom:10px}.rlabel{background:rgba(12,15,20,.78);color:#f0f4f8;padding:3px 8px;border-radius:7px;font-size:11px;font-weight:600;white-space:nowrap;pointer-events:none;border:1px solid rgba(255,255,255,.12);transform:translate(-50%,-50%)}.rlabel.nova{background:rgba(196,100,38,.88);border-color:rgba(255,190,140,.5)}.rlabel.alerta{background:rgba(190,34,34,.92);font-size:10.5px}.loading{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;color:#9fb0bf;font-size:14px;letter-spacing:.5px}.fab{display:none;position:absolute;z-index:12;left:12px;bottom:12px;padding:10px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(14,18,24,.88);color:#f2c39e;font-size:13px;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}@media (max-width:640px){.fab{display:block}.panel{left:10px;right:10px;top:auto;bottom:60px;width:auto;max-height:46vh;padding:12px}.panel .credits,.panel .legend,.panel.fechado{display:none}.hud.top{padding:10px 14px;gap:8px}.hud.top h1{font-size:13.5px}.hud.top .sub{display:none}.concept{left:10px;right:10px;top:56px;width:auto;max-height:60vh}}.overlay-passeio{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:rgba(8,10,14,.55)}.overlay-passeio .cartao{background:rgba(14,18,24,.95);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:22px 26px;color:#eef2f6;max-width:340px;text-align:center}.overlay-passeio .cartao b{font-size:16px}.overlay-passeio .cartao p{font-size:12.5px;opacity:.8;margin:10px 0 16px;line-height:1.5}@media (max-width:640px){.so-desktop{display:none}}