.cm{position:relative;margin:0;--sea: #61adb5;--ink-map: #1d1d1d}.cm-shell{position:relative}.cm-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:14px}.cm-key{width:12px;height:12px;border-radius:50%;background:var(--ck)}.cm-k-buildings,.cm-buildings{--ck: var(--ink-map)}.cm-k-buildings .cm-key,.cm-res .cm-k-buildings{border-radius:3px;box-shadow:inset 0 0 0 2px var(--ink)}.cm-k-atms,.cm-atms{--ck: var(--r2)}.cm-k-cargo,.cm-cargo{--ck: var(--r5)}.cm-k-cargo .cm-key,.cm-res .cm-k-cargo{border-radius:2px;transform:rotate(45deg) scale(.85)}.cm-k-smuggler,.cm-smuggler{--ck: var(--r4)}.cm-k-smuggler .cm-key,.cm-res .cm-k-smuggler{border-radius:3px}.cm-k-heists,.cm-heists{--ck: var(--r6)}.cm-k-loot{--ck: #fff}.cm-k-loot .cm-key,.cm-res .cm-k-loot{box-shadow:inset 0 0 0 2px var(--r6)}.cm-chip[aria-pressed=false] .cm-key{opacity:.35}.cm-find{position:relative;display:flex;align-items:center;gap:8px;flex:0 1 300px;min-width:220px;padding:0 14px;border-radius:var(--pill);background:var(--raised);color:var(--meta)}.cm-find:focus-within{box-shadow:0 0 0 2px var(--r6)}.cm-find input{flex:1;min-width:0;height:40px;border:0;background:transparent;color:var(--ink);font:500 16px var(--font);outline:none}.cm-res{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;max-height:320px;margin:0;padding:6px;overflow-y:auto;list-style:none;border-radius:12px;background:var(--surface);box-shadow:0 12px 32px #00000073}.cm-res li{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:var(--ink);font-size:var(--step-small);cursor:pointer}.cm-res li small{margin-left:auto;color:var(--meta);white-space:nowrap}.cm-res li[aria-selected=true],.cm-res li:hover{background:var(--raised)}.cm-res .cm-key{flex:none}.cm-stage{position:relative;width:100%;aspect-ratio:var(--ar, 1.26);max-height:calc(100vh - 170px);min-height:300px;overflow:hidden;border-radius:10px;background:var(--sea);cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;outline:none}.cm-stage:focus-visible{box-shadow:0 0 0 3px var(--r6)}.cm-stage.dragging{cursor:grabbing}.cm-world{position:absolute;top:0;left:0;transform-origin:0 0}.cm-img,.cm-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.cm-svg line{stroke:var(--ink-map);stroke-width:calc(2.8 * var(--iz, 1));stroke-dasharray:calc(7 * var(--iz, 1)) calc(6 * var(--iz, 1));stroke-linecap:round;opacity:0;transition:opacity .2s var(--ease-out)}.cm-svg line.on{opacity:.85}.cm-area{position:absolute;z-index:1;transform:translate(-50%,-50%) scale(var(--iz, 1));color:#2b5459;font-family:var(--font-display);font-style:italic;font-weight:800;font-size:clamp(.95rem,.7rem + .7vw,1.35rem);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;text-shadow:0 0 3px #fff5e7,0 0 6px #fff5e7;pointer-events:none;transition:opacity .2s var(--ease-out)}.cm-stage.near .cm-area{opacity:0}.cm-pin{position:absolute;z-index:2;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;background:none;cursor:pointer;transform:translate(-50%,-50%) scale(var(--iz, 1))}.cm-pin[hidden]{display:none}.cm-shape{display:grid;place-items:center;width:22px;height:22px;border:2px solid var(--ink-map);border-radius:50%;background:var(--ck);color:#0a0a0a;font:800 12px/1 var(--font);font-style:normal;transition:transform .16s var(--ease-out)}.cm-buildings .cm-shape{width:15px;height:15px;border:2px solid #fff;border-radius:3px;box-shadow:0 0 0 1px #00000059}.cm-cargo .cm-shape{width:17px;height:17px;border-radius:3px;rotate:45deg}.cm-smuggler .cm-shape{width:24px;height:18px;border-radius:5px;color:#fff}.cm-pin.cm-smuggler{z-index:2;transform:translate(-50%,-50%) scale(var(--iz, 1)) translate(10px,-14px)}.cm-heists{z-index:3;filter:drop-shadow(0 0 1px #1d1d1d) drop-shadow(0 0 1px #1d1d1d)}.cm-heists .cm-shape{width:30px;height:30px;border:0;border-radius:0;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}.cm-pin:hover,.cm-pin:focus-visible,.cm-pin[aria-current=true]{z-index:6;outline:none}.cm-pin:hover .cm-shape,.cm-pin:focus-visible .cm-shape,.cm-pin[aria-current=true] .cm-shape{transform:scale(1.3)}.cm-pin[aria-current=true]:not(.cm-heists) .cm-shape{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--ink-map)}.cm-lab{position:absolute;top:calc(100% - 4px);left:50%;padding:3px 8px;border-radius:var(--pill);background:var(--ink-map);color:#fff;font:600 11.5px/1.2 var(--font);white-space:nowrap;transform:translate(-50%);opacity:0;pointer-events:none;transition:opacity .14s var(--ease-out)}.cm-stage.near .cm-buildings .cm-lab,.cm-stage.nearer .cm-pin:not(.cm-loot) .cm-lab,.cm-pin:focus-visible .cm-lab,.cm-pin[aria-current=true] .cm-lab{opacity:1}@media(hover:hover)and (pointer:fine){.cm-pin:hover .cm-lab{opacity:1}}.cm-loot{z-index:4;width:22px;height:22px}.cm-stage:not(.inside) .cm-loot{visibility:hidden}.cm-loot .cm-shape{width:13px;height:13px;border-width:2px}.cm-l-safe .cm-shape{--ck: var(--r6);width:16px;height:16px;border-radius:3px}.cm-l-box .cm-shape{--ck: var(--r4)}.cm-l-spot .cm-shape{--ck: #fff}.cm-l-cargo .cm-shape{--ck: #c8843a;width:15px;height:15px;border-radius:2px}.cm-legend .cm-l-cargo .cm-shape{border-radius:2px}.cm-l-loose .cm-shape{--ck: #a8a8a8;width:10px;height:10px;border-width:1.5px}.cm-floors{position:absolute;z-index:9;top:12px;left:50%;display:flex;gap:2px;padding:4px;border-radius:var(--pill);background:#1d1d1deb;transform:translate(-50%);opacity:0;pointer-events:none;transition:opacity .16s var(--ease-out)}.cm-stage.inside .cm-floors{opacity:1;pointer-events:auto}.cm-floors button{min-height:32px;padding:0 12px;border:0;border-radius:var(--pill);background:transparent;color:var(--muted);font:600 13px/1 var(--font);white-space:nowrap;cursor:pointer}.cm-floors button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.cm-stage[data-floor=g] .cm-loot:not([data-f=g]),.cm-stage[data-floor=u] .cm-loot:not([data-f=u]),.cm-stage[data-floor=d] .cm-loot:not([data-f=d]){display:none}.cm-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;padding:0;list-style:none;color:var(--muted);font-size:var(--step-small)}.cm-legend li{display:inline-flex;align-items:center;gap:8px}.cm-legend .cm-shape{animation:none;width:11px;height:11px;border:1.5px solid var(--ink-map);border-radius:50%;background:var(--ck);box-shadow:0 0 0 1px #ffffff80}.cm-legend .cm-l-safe .cm-shape{border-radius:3px}.cm-ready .cm-shape{animation:cm-pop .38s var(--ease-out) both;animation-delay:var(--d, 0ms)}@keyframes cm-pop{0%{opacity:0;transform:scale(.4)}}.cm-ctrl{position:absolute;z-index:8;right:12px;bottom:12px;display:grid;gap:2px;padding:4px;border-radius:12px;background:#1d1d1deb;box-shadow:0 6px 18px #0000004d}.cm-ctrl button{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:9px;background:transparent;color:var(--ink);cursor:pointer;transition:background-color .14s var(--ease-out),transform .14s var(--ease-out)}.cm-ctrl button:active{transform:scale(.94)}@media(hover:hover)and (pointer:fine){.cm-ctrl button:hover{background:var(--raised)}}.cm-ctrl button:focus-visible{outline:2px solid var(--r6)}.cm-ic-max{display:contents}.cm-ic-min,.cm.is-full .cm-ic-max{display:none}.cm.is-full .cm-ic-min{display:contents}.cm-hint{position:absolute;z-index:9;left:50%;top:50%;margin:0;padding:10px 16px;border-radius:var(--pill);background:#1d1d1deb;color:var(--ink);font:600 14px/1.3 var(--font);text-align:center;transform:translate(-50%,-50%);opacity:0;pointer-events:none;transition:opacity .18s var(--ease-out)}.cm-hint.show{opacity:1}.cm-n{position:absolute;z-index:7;top:14px;left:16px;color:#2b5459;font-family:var(--font-display);font-style:italic;font-weight:800;font-size:1.05rem;pointer-events:none}.cm-n:after{content:"";display:block;width:2px;height:14px;margin:2px auto 0;background:currentColor}.cm-card{margin-top:14px;padding:16px 20px;border-radius:10px;background:var(--surface)}.cm-intro{margin:0;color:var(--muted)}.cm-intro b{color:var(--ink)}.cm-intro kbd{padding:1px 6px;border-radius:5px;background:var(--raised);color:var(--ink);font:600 12px var(--font)}.cm-card-top{display:flex;align-items:start;justify-content:space-between;gap:12px}.cm-tag{margin:0;color:var(--meta);font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.cm-title{display:block;margin-top:2px;font-size:var(--step-lead);font-weight:700;line-height:1.2}.cm-x{display:grid;place-items:center;flex:none;width:34px;height:34px;margin:-6px -8px 0 0;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer}.cm-x:hover{background:var(--raised);color:var(--ink)}.cm-lines{display:grid;gap:6px;margin:10px 0 0;padding:0;list-style:none;color:var(--muted);font-size:var(--step-small)}.cm-items{margin-top:12px}.cm-items-h{display:flex;justify-content:space-between;gap:8px;margin:0 0 6px;color:var(--ink);font-size:var(--step-small);font-weight:700}.cm-items-h span{color:var(--meta);font-weight:600}.cm-items ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}.cm-items ul.is-long{max-height:236px;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-width:thin;mask-image:linear-gradient(180deg,#000 calc(100% - 24px),transparent)}.cm-items a{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:40px;padding:4px 8px 4px 4px;border-radius:8px;color:var(--ink);font-size:var(--step-small);text-decoration:none}.cm-items a:hover,.cm-items a:focus-visible{background:var(--raised)}.cm-items img,.cm-items i{width:32px;height:32px;border-radius:6px;background:var(--raised);box-shadow:inset 0 -2px 0 var(--rc);object-fit:contain}.cm-items span{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.cm-items small{color:var(--muted);font-size:.8rem;font-variant-numeric:tabular-nums}.cm-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.cm-acts a,.cm-acts button{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border:0;border-radius:var(--pill);background:var(--raised);color:var(--ink);font:600 var(--step-small) / 1 var(--font);text-decoration:none;cursor:pointer}.cm-acts a:first-child{background:var(--ink);color:var(--bg)}@media(min-width:1000px){.cm-card{position:absolute;z-index:10;top:70px;right:14px;width:320px;margin:0;background:#1d1d1df5;box-shadow:0 12px 32px #00000059}.cm-card:has(.cm-intro){position:static;width:auto;margin-top:12px;padding:0;background:none;box-shadow:none}}.cm.is-full .cm-shell{position:fixed;z-index:70;inset:0;background:var(--sea)}.cm.is-full .cm-bar{position:absolute;z-index:11;top:12px;left:12px;right:12px;margin:0;pointer-events:none}.cm.is-full .cm-bar>*{pointer-events:auto}.cm.is-full .cm-chip:not([aria-pressed=true]){background:#1d1d1de6}.cm.is-full .cm-stage{position:absolute;inset:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;border-radius:0;touch-action:none}.cm.is-full .cm-floors{top:108px}.cm.is-full .cm-n{top:auto;bottom:16px;left:18px}.cm.is-full .cm-card{position:absolute;z-index:10;inset:auto auto 12px 12px;width:min(340px,calc(100vw - 90px));margin:0;background:#1d1d1df5}.cm.is-full .cm-card:has(.cm-intro),.cm.is-full .cm-legend{display:none}html.cm-lock,html.cm-lock body{overflow:hidden}@media(max-width:760px){.cm-stage{aspect-ratio:1 / 1;max-height:70vh}.cm-find{flex:1 1 100%}.cm-chips{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(var(--m) * -1);padding-inline:var(--m);scrollbar-width:none}.cm-chips::-webkit-scrollbar{display:none}.cm.is-full .cm-chips{margin:0;padding:0}.cm.is-full .cm-card{left:8px;right:8px;width:auto;bottom:calc(8px + env(safe-area-inset-bottom))}.cm.is-full .cm-card:has(.cm-intro){display:none}.cm.is-full .cm-ctrl{bottom:auto;top:112px}.cm.is-full .cm-floors{left:12px;transform:none}.cm-floors button{padding:0 9px;font-size:12px}}@media(prefers-reduced-motion:reduce){.cm-ready .cm-shape{animation:none}}
