@font-face{font-family:Coolvetica;src:url(/fonts/coolvetica.otf) format("opentype");font-display:swap}:root{--bg: #13161b;--panel: #191d24;--panel2: #212731;--line: #2b323d;--text: #d9dee7;--muted: #828b9b;--t: #de9b35;--ct: #5d7bcc;--t-dark: #8a5a17;--ct-dark: #2e4686;--green: #3a9a62;--green-hi: #47b675;--red: #d23b3b;--mh-crouch: #d6b9ff;--mh-move: #a5e9c5;--mh-jump: #ffe29a;--badge-fill: #101010;--badge-stroke: #ffffff;--display: "Coolvetica", "Arial Narrow", system-ui, sans-serif;--ui: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;color-scheme:dark}.app.inverted{--badge-fill: #ffffff;--badge-stroke: #101010}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--edge, var(--panel));color:var(--text);font-family:var(--ui);font-size:14px;overflow:hidden;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}body{position:fixed;inset:0;user-select:none;-webkit-user-select:none}#app,.app{position:absolute;inset:0}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}button:disabled{cursor:default}:focus-visible{outline:2px solid #e8ecf2;outline-offset:2px}input,textarea,select{font:inherit;color:inherit;user-select:text;-webkit-user-select:text}a{color:#9db4ff}img{-webkit-user-drag:none}.muted{color:var(--muted)}.small{font-size:12.5px}.tiny{font-size:11.5px;line-height:1.35}.row{display:flex;align-items:center}.row.gap{gap:8px}.row.wrap{flex-wrap:wrap}.align-end{align-items:flex-end}.grow{flex:1}.err-text{color:#ff7b7b}.mono{font-family:ui-monospace,monospace;font-size:12px}.layout{display:grid;height:100%;justify-content:center;background:var(--panel)}.panel{position:relative;z-index:1;height:100%;min-width:0;overflow:hidden;background:transparent;padding:max(8px,var(--st)) 8px max(8px,var(--sb));display:flex;flex-direction:column}.panel.left{padding-left:calc(8px + var(--sl));border-right:1px solid var(--line);gap:8px}.panel.right{padding-right:calc(8px + var(--sr));border-left:1px solid var(--line)}.panel.left.collapsed{padding-left:calc(4px + var(--sl));padding-right:4px;align-items:center}.map-area{position:relative;z-index:0;overflow:visible;background:transparent;min-width:0}.empty-map{display:flex;align-items:center;justify-content:center;padding:20px;text-align:center}.burger{width:44px;height:44px;margin:-4px 0 0 -2px;border-radius:10px;display:grid;place-items:center;color:var(--muted);flex:none;position:relative;z-index:2}.burger:after{content:"";position:absolute;inset:-6px}.burger:hover{color:var(--text);background:var(--panel2)}.map-grid,.action-grid{display:grid;grid-template-columns:repeat(2,var(--btn));gap:8px;justify-content:center}.map-grid{align-content:start}.action-grid{margin-top:auto}.map-btn{width:var(--btn);height:var(--btn);border-radius:10px;background:var(--panel2);border:2px solid transparent;display:grid;place-items:center;position:relative;padding:5px}.map-btn img{width:100%;height:100%;object-fit:contain}.map-btn.on{border-color:#e8ecf2;background:#2a313d}.map-btn.locked img{filter:grayscale(1) brightness(.35)}.map-btn.locked{cursor:default}.map-btn.private:not(.locked) img{opacity:.75}.map-lock{position:absolute;right:3px;top:3px;background:#000a;border-radius:4px;padding:2px;display:grid;color:#ffd27a}.sq-btn{width:var(--btn);height:var(--btn);border-radius:10px;background:var(--panel2);display:grid;place-items:center;color:#c9d0db;position:relative}.sq-btn:hover:not(:disabled){background:#2a313d;color:#fff}.sq-btn:disabled{opacity:.4}.sq-btn.on{outline:2px solid #e8ecf2}.sq-btn.small{width:34px;height:34px;border-radius:8px}.sq-btn.danger{color:#ff8a8a}.submit-btn{background:#1f4a32;color:#e9fff1}.submit-btn:hover:not(:disabled){background:#276140}.nade-plus{position:relative;display:grid;place-items:center}.nade-plus img{width:calc(var(--btn) * .5);height:calc(var(--btn) * .5)}.nade-plus svg{position:absolute;right:-8px;top:-6px;background:var(--green-hi);color:#062612;border-radius:50%;padding:1px;stroke-width:3.2}.btn-cap{position:absolute;bottom:3px;font-size:10px;font-weight:700;letter-spacing:.02em}.admin-btn{color:#ffd27a}.filters{display:flex;flex-direction:column;gap:10px;height:100%;overflow-y:auto}.counter{font-family:var(--display);font-size:15px;color:var(--muted);text-align:center}.counter b{color:var(--text);font-weight:400}.seg{display:flex;background:#11141a;border-radius:10px;padding:3px;gap:3px}.seg>button{flex:1;min-height:36px;border-radius:8px;color:var(--muted);font-weight:600;display:flex;align-items:center;justify-content:center;gap:5px;flex-direction:column;line-height:1.1;padding:4px 2px}.seg>button small{font-weight:400;font-size:10.5px;opacity:.8}.seg>button.on{background:#2b3340;color:#fff}.seg>button:disabled:not(.on){opacity:.35}.small-seg>button{flex-direction:row;min-height:30px;font-size:12px}.team-seg .t.on{background:var(--t);color:#1a1104}.team-seg .ct.on{background:var(--ct);color:#fff}.team-seg .t{color:var(--t)}.team-seg .ct{color:#8fa6e6}.type-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.type-all{grid-column:span 2;min-height:34px;border-radius:8px;background:var(--panel2);color:var(--muted);font-weight:600}.type-btn{width:100%;height:clamp(38px,calc(var(--app-h) * .11),58px);border-radius:8px;background:var(--panel2);display:grid;place-items:center}.type-btn img{height:70%;max-height:38px;opacity:.55}.type-btn.on,.type-all.on{background:#2f3846;color:#fff;outline:2px solid #e8ecf2;outline-offset:-2px}.type-btn.on img{opacity:1}.fav-toggle{min-height:38px;border-radius:10px;background:var(--panel2);color:var(--muted);display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}.fav-toggle.on{background:#3a3220;color:#ffd27a}.spawn-box{border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px;font-weight:700;text-align:center;background:var(--panel2)}.spawn-box.team-t{color:var(--t)}.spawn-box.team-ct{color:#8fa6e6}.offline-pill{position:absolute;top:6px;left:50%;transform:translate(-50%);background:#3a2f17;color:#ffd27a;padding:3px 10px;border-radius:99px;font-size:12px;pointer-events:none;z-index:5}.zm{position:absolute;inset:0;overflow:visible;touch-action:none;--tx: 0;--ty: 0;--s: 1;--w: 0;--h: 0}.zm-layer{position:absolute;left:0;top:0;transform-origin:0 0;transform:translate(calc(var(--tx) * 1px),calc(var(--ty) * 1px)) scale(var(--s))}.zm-img{width:100%;height:100%;display:block;pointer-events:none}.zm-svg{position:absolute;inset:0;overflow:visible}.zm-items{position:absolute;inset:0;pointer-events:none}.zm-items>*{pointer-events:auto}.app{--pt: 40px;--pt-f: calc(var(--pt) * .8);--pt-s: calc(var(--pt) * .85)}.pt{position:absolute;left:0;top:0;display:grid;place-items:center;cursor:pointer;border-radius:50%}.pt-from{width:var(--pt-f);height:var(--pt-f);border:2px solid #0008}.pt-from:after{content:"";position:absolute;inset:calc((var(--pt-f) - var(--pt)) / 2 - 2px);border-radius:50%}.pt-from.team-t{background:var(--t)}.pt-from.team-ct{background:var(--ct)}.pt-to{width:var(--pt);height:var(--pt)}.pt-to img{width:100%;height:100%;display:block;filter:drop-shadow(0 1px 2px #000a);pointer-events:none}.pt-to-blank{width:var(--pt);height:var(--pt);border:2px dashed #fff;font-weight:900;font-size:calc(var(--pt) * .5);color:#fff}.pt-to-blank.team-t{background:#de9b3599}.pt-to-blank.team-ct{background:#5d7bcc99}.pt-spawn{width:var(--pt-s);height:var(--pt-s);border:3px solid;flex-direction:column}.pt-spawn.team-t{background:var(--t);border-color:var(--t-dark)}.pt-spawn.team-ct{background:var(--ct);border-color:var(--ct-dark)}.badge{position:absolute;isolation:isolate;font:900 calc(var(--pt) * .4)/1 "Arial Black","Helvetica Neue",Arial,sans-serif;color:var(--badge-fill);pointer-events:none}.badge:before{content:attr(data-n);position:absolute;left:0;top:0;z-index:-1;color:var(--badge-stroke);-webkit-text-stroke:calc(var(--pt) * .1) var(--badge-stroke)}.badge-top{top:calc(-1px - var(--pt) * .05);font-size:calc(var(--pt) * .325)}.badge-top:before{-webkit-text-stroke-width:calc(var(--pt) * .085)}.spawn-num{position:absolute;bottom:calc(-1px - var(--pt) * .07);font:800 calc(var(--pt) * .31)/1 var(--ui);color:#fff;background:#0009;border-radius:4px;padding:calc(var(--pt) * .03) 3px;pointer-events:none;letter-spacing:-.02em;white-space:nowrap}.spawn-num small{font-size:.6em;font-weight:700;margin-right:.06em}.team-t .spawn-num{color:#ffe3b8;background:#4a2d06d0}.team-ct .spawn-num{color:#d6e0ff;background:#17244dd0}.pt:before{content:"";position:absolute;inset:-11px;border-radius:50%;pointer-events:none;opacity:0;background:radial-gradient(circle closest-side,transparent calc(100% - 13px),var(--gc, #fff) calc(100% - 11px),transparent 100%)}.pt.active{z-index:3}.pt.active.pt-from,.pt.active.pt-spawn{box-shadow:0 0 0 3px #fff,0 0 10px 3px #000a}.pt.active.pt-to:before{--gc: #ffffff;opacity:1}.pt.glow{z-index:2}.pt.glow:before{will-change:opacity,transform;animation:glow 1.6s ease-in-out infinite}.pt-from.team-t,.pt-spawn.team-t{--gc: #ffcf86}.pt-from.team-ct,.pt-spawn.team-ct{--gc: #a9bcff}.pt-to{--gc: #ffffff}@keyframes glow{0%,to{opacity:.45;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}.pt.faint{opacity:.45}.pt.faint:hover{opacity:.85}.pt.disabled{filter:grayscale(.9) brightness(.55);cursor:default;pointer-events:none}.pt.draft{z-index:4}.pt-label{position:absolute;top:calc(100% + 2px);font-size:10px;font-weight:700;color:#fff;text-shadow:0 0 3px #000,0 0 2px #000;white-space:nowrap;pointer-events:none}@media(prefers-reduced-motion:reduce){.pt.glow:before{animation:none;opacity:.9}}.spawn-zone{stroke-width:2;vector-effect:non-scaling-stroke;cursor:pointer}.spawn-zone.team-t{fill:#de9b3514;stroke:#de9b35aa;filter:drop-shadow(0 0 4px #de9b35)}.spawn-zone.team-ct{fill:#5d7bcc18;stroke:#7d98e0aa;filter:drop-shadow(0 0 4px #5d7bcc)}.spawn-zone.active{stroke-width:2.5}.spawn-zone.team-t.active{fill:#de9b3526}.spawn-zone.team-ct.active{fill:#5d7bcc2c}.spawn-zone.muted{opacity:.35}.spawn-zone.passive{opacity:.5;filter:none;pointer-events:none}.spawn-zone.edit{pointer-events:none}.spawn-draw{fill:none;stroke-width:2.5;vector-effect:non-scaling-stroke}.spawn-draw.team-t{stroke:var(--t)}.spawn-draw.team-ct{stroke:#8fa6e6}.spawn-draw.ghost{stroke-dasharray:5 5;opacity:.6}.fav-line{stroke-width:1.6;stroke-dasharray:6 5;vector-effect:non-scaling-stroke;fill:none}.fav-line.team-t{stroke:var(--t)}.fav-line.team-ct{stroke:#8fa6e6}.vertex{position:absolute;left:0;top:0;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid #000;cursor:move}.vertex.first{width:22px;height:22px;background:#fff;border-color:var(--green-hi);box-shadow:0 0 8px var(--green-hi)}.num-edit{position:absolute;left:0;top:0;z-index:10;margin-top:-48px;display:flex;align-items:center;gap:4px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:4px;box-shadow:0 6px 20px #000a}.num-edit input{width:52px;background:#0e1014;border:1px solid var(--line);border-radius:6px;padding:4px;text-align:center}.num-edit button{padding:4px 8px;background:var(--panel2);border-radius:6px;font-size:12px}.overlay-slot{position:absolute;inset:0;z-index:20}.overlay{position:absolute;inset:0;background:var(--bg);z-index:20}.btn-x{width:44px;height:44px;border-radius:8px;background:var(--red);color:#fff;display:grid;place-items:center;flex:none}.btn-x:hover{background:#e24848}.btn-x.small{width:34px;height:34px;background:#3a2226;color:#ff9c9c}.btn-x.ghost{position:absolute;top:max(10px,var(--st));right:max(10px,var(--sr));background:#0007;z-index:3}.nade-view{background:#000;display:flex;flex-direction:column}.nv-top{height:var(--hint-h);flex:none;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 max(8px,var(--sr)) 0 max(8px,var(--sl));gap:8px}.nv-title{min-width:0;display:flex;flex-direction:column;line-height:1.15}.nv-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.nv-by{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nv-actions{display:flex;gap:6px;justify-content:flex-end;align-items:center}.nv-actions .btn-x{width:calc(var(--hint-h) - 6px);height:calc(var(--hint-h) - 6px);max-width:68px;max-height:68px}.nv-actions .btn-x svg{width:62%;height:62%}.fav-btn{width:calc(var(--hint-h) - 8px);height:calc(var(--hint-h) - 8px);max-width:64px;max-height:64px;color:#aab2c0}.fav-btn svg{width:60%;height:60%}.fav-btn.on{color:#ffd27a;background:#3a3220}.nv-grid-wrap{flex:1;display:grid;place-items:center;min-height:0}.nv-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px}.nv-photo{overflow:hidden;position:relative;background:#111}.nv-photo img{width:100%;height:100%;object-fit:cover;display:block}.nv-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:#0c0e12;border:3px solid #000;box-shadow:0 0 0 2px #ffffff30;display:grid;place-items:center;color:#fff}.nv-play:hover{background:#1b2028}.nv-play.disabled{color:#555c68}.mhint{display:flex;align-items:center;gap:.35em;font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;line-height:1}.nv-hint{font-size:calc(var(--hint-h) * .56);text-shadow:0 0 8px currentColor}.mh-plus{color:#6e7686;text-shadow:none}.mh-crouch{color:var(--mh-crouch)}.mh-jump{color:var(--mh-jump)}.mh-move{color:var(--mh-move);display:inline-flex;align-items:center;gap:.3em}.mh-mouse{height:1.25em;width:auto;filter:drop-shadow(0 0 4px #ffffff70)}.wasd{display:inline-flex;flex-direction:column;align-items:center;gap:.07em;text-shadow:none}.wasd-row{display:flex;gap:.07em}.wasd .key{width:.62em;height:.62em;border-radius:.1em;border:.06em solid #6e7686;font-size:.58em;display:grid;place-items:center;font-family:var(--ui);font-weight:800;color:#7a8292;line-height:1}.wasd .key{font-size:.58em;width:1.05em;height:1.05em}.wasd .key.on{background:var(--mh-move);border-color:var(--mh-move);color:#0b2216;box-shadow:0 0 6px var(--mh-move)}.tiny-hint{font-size:13px}.mv-preview .mhint{font-size:22px;justify-content:center;flex-wrap:wrap}.gallery,.video-view{background:#000;z-index:30}.overlay-slot.media-slot{z-index:65}.gal-zoom,.vid-zoom{position:absolute;inset:0}.gal-count{position:absolute;bottom:max(10px,var(--sb));left:50%;transform:translate(-50%);background:#0009;padding:3px 10px;border-radius:99px;font-size:12px;pointer-events:none}.gal-hint{position:absolute;top:50%;transform:translateY(-50%);font-size:40px;color:#fff5;pointer-events:none;padding:0 10px}.gal-hint.left{left:0}.gal-hint.right{right:0}.vid{width:100%;height:100%;display:block;pointer-events:none;background:#000}.vid-bar{position:absolute;left:50%;transform:translate(-50%);bottom:max(10px,var(--sb));width:min(720px,92%);display:flex;align-items:center;gap:10px;background:#000a;border-radius:12px;padding:6px 12px;z-index:3}.vid-btn{width:36px;height:36px;display:grid;place-items:center}.vid-time{font-size:12px;font-variant-numeric:tabular-nums;color:#ccd}.vid-range{flex:1;accent-color:#e8ecf2}.vid-flash{position:absolute;top:50%;transform:translateY(-50%);background:#0009;padding:10px 16px;border-radius:99px;font-weight:700;animation:fade .7s forwards;pointer-events:none}.vid-flash.l{left:12%}.vid-flash.r{right:12%}@keyframes fade{0%{opacity:1}to{opacity:0}}.vid-msg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.page{display:flex;flex-direction:column}.page-head{display:flex;align-items:center;gap:10px;padding:max(8px,var(--st)) max(12px,var(--sr)) 8px max(12px,var(--sl));border-bottom:1px solid var(--line);flex:none;flex-wrap:wrap}.page-head h2{margin:0;font-family:var(--display);font-weight:400;font-size:22px;letter-spacing:.01em}.head-icon{width:30px;height:30px;object-fit:contain}.icon-btn{width:38px;height:38px;border-radius:8px;display:grid;place-items:center;color:var(--muted)}.icon-btn:hover{background:var(--panel2);color:var(--text)}.icon-btn.danger{color:#ff8a8a}.page-body{flex:1;overflow-y:auto;padding:14px max(16px,var(--sr)) 40px max(16px,var(--sl));user-select:text;-webkit-user-select:text}.page-body>*{max-width:920px;margin-left:auto;margin-right:auto}.set-sec{padding:14px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.set-sec h3{margin:0;font-size:16px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}.switch-row>span{display:flex;flex-direction:column;gap:2px}.switch-row small{color:var(--muted)}.switch-row.inline{justify-content:flex-start;gap:8px}.switch{appearance:none;-webkit-appearance:none;width:44px;height:26px;border-radius:99px;background:#384050;position:relative;cursor:pointer;flex:none;transition:background .15s;margin:0}.switch:after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .15s}.switch:checked{background:var(--green)}.switch:checked:after{transform:translate(18px)}.icon-preview{display:flex;gap:10px;align-items:center;min-height:66px}.icon-preview img{width:var(--pt);height:var(--pt);filter:drop-shadow(0 1px 2px #000a)}.switch-row.sub,.size-row.sub{padding-left:2px}.size-row{display:flex;flex-direction:column;gap:8px}.size-row>span{display:flex;flex-direction:column;gap:2px}.size-row small{color:var(--muted)}.size-ctl{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.size-ctl .range{flex:1;min-width:160px;max-width:360px;accent-color:var(--green-hi);height:28px}.size-val{font-variant-numeric:tabular-nums;min-width:48px;color:var(--text)}.touch .filters .seg>button{font-size:13px}.touch .filters .type-grid{gap:5px}.touch .filters .fav-toggle{gap:6px;font-size:13px}.cache-box{background:var(--panel);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:6px}.cache-line{display:flex;justify-content:space-between}.bar{height:6px;background:#0e1014;border-radius:99px;overflow:hidden}.bar span{display:block;height:100%;background:var(--green-hi);transition:width .3s}.cache-maps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:2px 16px;font-size:12px}.cache-maps li{display:flex;justify-content:space-between;color:var(--muted)}.cache-maps .ok{color:var(--green-hi)}.code-box{background:#0e1014;padding:8px 10px;border-radius:8px;font-size:13px;letter-spacing:.04em}.readme{line-height:1.5;max-width:760px}.readme h4{margin:18px 0 6px}.readme code{background:#0e1014;padding:1px 5px;border-radius:4px}.readme .rules li{margin-bottom:4px}.mono-list{font-family:ui-monospace,monospace;font-size:12.5px}kbd{display:inline-block;min-width:24px;text-align:center;padding:2px 6px;border-radius:6px;background:#2a313d;border-bottom:2px solid #11141a;font-family:var(--ui);font-weight:700;font-size:12.5px}.binds td{padding:4px 10px 4px 0;vertical-align:top}.copy-block{background:#0e1014;border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:8px;margin:6px 0}.copy-block pre{margin:0;white-space:pre-wrap;word-break:break-all;font-size:12px;color:#c4ccd8}.copy-block:not(.open) pre{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.copy-actions{display:flex;gap:8px;justify-content:flex-end}.empty{text-align:center;color:var(--muted);padding:40px 0;display:flex;flex-direction:column;align-items:center;gap:10px}.btn{min-height:36px;padding:0 14px;border-radius:8px;background:var(--panel2);color:var(--text);font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #ffffff10}.btn:hover:not(:disabled){background:#2b3340}.btn:disabled{opacity:.45}.btn.small{min-height:30px;padding:0 10px;font-size:12.5px}.btn.primary{background:var(--green);color:#fff;border-color:transparent}.btn.primary:hover:not(:disabled){background:var(--green-hi)}.btn.danger{background:#5a1f22;color:#ffb3b3;border-color:transparent}.btn.danger:hover:not(:disabled){background:#7a2428}.big-btn{min-height:48px;font-size:16px;width:100%}.link-btn{color:#9db4ff;display:inline-flex;align-items:center;gap:5px;font-size:12.5px;text-align:left}.inp{background:#0e1014;border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-height:36px;width:100%;outline:none}.inp:focus{border-color:#5a6578}.inp.big{font-size:17px;min-height:44px;font-weight:600}.inp.slim{min-height:30px;padding:4px 8px}.inp:disabled{opacity:.6}.modal-back{position:fixed;inset:0;background:#000a;display:grid;place-items:center;z-index:60;padding:16px}.modal{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;width:min(440px,100%);max-height:calc(var(--app-h) * .9);overflow-y:auto;box-shadow:0 20px 60px #000c}.modal h3{margin:0 0 8px;font-size:17px}.modal-text{white-space:pre-line;line-height:1.45;margin:0 0 14px;color:#c6ccd6}.modal-btns{display:flex;justify-content:flex-end;gap:8px}.help-modal{width:min(620px,100%)}.help-ex{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:10px}.help-ex button{position:relative;aspect-ratio:16 / 9;overflow:hidden;border-radius:6px}.help-ex img{width:100%;height:100%;object-fit:cover;display:block}.toast{position:fixed;bottom:max(14px,var(--sb));left:50%;transform:translate(-50%);background:#2b3340;color:#fff;padding:10px 16px;border-radius:10px;z-index:80;box-shadow:0 8px 30px #000a;max-width:calc(var(--app-w) * .9);text-align:center;animation:toast-in .2s}.toast.error{background:#6a2024}.toast.ok{background:#1f4a32}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid #ffffff22;border-top-color:#fff;animation:spin .8s linear infinite;margin:30px auto}@keyframes spin{to{transform:rotate(360deg)}}.vid-msg.spinner{margin:-14px 0 0 -14px;transform:none}.rotate{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;background:var(--bg);text-align:center;padding:24px;font-size:16px}.rotate-phone{width:54px;height:92px;border:4px solid var(--text);border-radius:10px;animation:rot 2s ease-in-out infinite}@keyframes rot{0%,30%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}.submit-panel,.spawn-panel{height:100%;display:flex;flex-direction:column;gap:8px;overflow-y:auto;overflow-x:hidden}.sf-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.sf-title{font-family:var(--display);font-size:20px}.sf-note{background:#2b2614;color:#ffdf94;border-radius:8px;padding:6px 10px;font-size:12px}.sf-cols{display:flex;flex-direction:column;gap:8px}.submit-panel.wide .sf-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px;flex:1;min-height:0}.sf-col{display:flex;flex-direction:column;gap:8px;min-width:0}.sf-sec{background:#151920;border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:6px}.sf-h{margin:0;font-size:12.5px;color:var(--muted);font-weight:700}.sf-h.toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:32px;font-size:14px;color:var(--text)}.sf-h.toggle .chev{margin-left:auto;font-size:18px;color:var(--muted)}.ok-dot{color:var(--green-hi)}.sf-body{display:flex;flex-direction:column;gap:8px}.type-row{display:flex;gap:4px;flex:1}.type-row .type-btn{flex:1;aspect-ratio:auto;height:40px}.locked>button:disabled{opacity:.25}.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.tgl{min-height:36px;border-radius:8px;background:var(--panel2);color:var(--muted);font-family:var(--display);font-size:15px;letter-spacing:.03em;border:1px solid transparent}.tgl.on{background:#2f3846;color:#fff;border-color:#e8ecf2}.tgl.need{border-color:#b8862c}.mv-grid>.tgl:first-child{grid-column:span 2}.mv-move{grid-column:span 2;display:flex;gap:8px;align-items:center}.mv-types{display:flex;flex-direction:column;gap:4px;flex:1}.mv-types .tgl{min-height:30px}.wasd-input{display:flex;flex-direction:column;align-items:center;gap:4px;padding:4px;border-radius:8px;border:1px solid transparent}.wasd-input.need{border-color:#b8862c}.wasd-input>div{display:flex;gap:4px}.wasd-input .key{width:40px;height:36px;border-radius:7px;background:var(--panel2);font-weight:800;color:var(--muted);border-bottom:3px solid #0d0f13}.wasd-input .key.on{background:var(--mh-move);color:#0b2216;border-bottom-color:#5fa784}.wide-tgl{grid-column:span 2;font-family:var(--ui)!important;font-weight:600;font-size:13px!important}.mv-mouse{display:flex;gap:6px}.mv-mouse .tgl{flex:1;font-family:var(--ui);font-weight:700;font-size:13px}.mv-preview{min-height:40px;display:grid;place-items:center;background:#0b0d10;border-radius:8px;padding:6px;text-align:center}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.drop{position:relative;aspect-ratio:16 / 9;border-radius:8px;border:2px dashed #3a4250;background:#0e1014;display:grid;place-items:center;overflow:hidden;cursor:pointer}.drop.over{border-color:var(--green-hi);background:#12241a}.drop.filled{border-style:solid;border-color:transparent}.drop.err{border-color:#c25050}.drop img,.drop video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.drop-video{margin-top:4px}.submit-panel.wide .drop-video{width:100%}.drop-empty{display:flex;align-items:center;gap:6px;color:#7d8696}.drop-num{font-family:var(--display);font-size:34px;color:#ffffff30}.drop-num.small{position:absolute;left:6px;top:2px;font-size:18px;color:#fff;text-shadow:0 0 4px #000}.drop-play{position:absolute;width:38px;height:38px;border-radius:50%;background:#000a;display:grid;place-items:center}.drop-progress{position:absolute;left:8px;right:8px;bottom:8px;height:18px;background:#000b;border-radius:99px;overflow:hidden}.drop-progress span{display:block;height:100%;background:var(--green)}.drop-progress em{position:absolute;inset:0;text-align:center;font-style:normal;font-size:11px;line-height:18px}.drop-status{position:absolute;bottom:4px;left:6px;font-size:11px;background:#000b;padding:1px 6px;border-radius:4px}.drop-error{position:absolute;left:4px;right:4px;bottom:4px;background:#5a1f22ee;color:#ffd0d0;border-radius:6px;font-size:11px;padding:3px 6px;text-align:center}.drop-clear{position:absolute;right:4px;top:4px;width:22px;height:22px;border-radius:50%;background:#000b;display:grid;place-items:center}.sf-submit{display:flex;flex-direction:column;gap:6px;margin-top:auto}.hint-btn{align-self:flex-start}.steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:12.5px;line-height:1.35}.steps li.cur{color:var(--text);font-weight:600}.steps li.done{color:var(--green-hi)}.spawn-count{font-size:13px}.grow-space{flex:1}.fav-maps{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.fav-map{background:var(--panel);border-radius:12px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:6px}.fav-map img{width:64px;height:64px;object-fit:contain}.fav-map small{color:var(--muted)}.fav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.fav-row{display:flex;align-items:center;gap:10px;background:var(--panel);border-radius:10px;padding:6px}.fav-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0;text-align:left}.fav-type{width:32px;height:32px}.fav-title{display:flex;flex-direction:column;gap:4px;min-width:0}.fav-title b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fav-thumbs{display:flex;gap:3px;flex:none}.fav-thumbs img{width:80px;height:45px;object-fit:cover;border-radius:4px;display:block}.tabs{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}.tabs button{padding:7px 12px;border-radius:8px;color:var(--muted);font-weight:600}.tabs button.on{background:var(--panel2);color:#fff}.admin .page-body>*{max-width:1200px}.tbl-wrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl th{text-align:left;color:var(--muted);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap}.tbl td{padding:6px 8px;border-bottom:1px solid #ffffff08;vertical-align:middle}.tbl-icon{width:34px;height:34px;object-fit:contain}.tiny-icon{width:16px;height:16px;object-fit:contain;vertical-align:-3px;margin-right:3px}.per-map{display:inline-flex;gap:8px;flex-wrap:wrap}.adm{color:#ffd27a}.file-pick{width:120px;height:68px;border:2px dashed #3a4250;border-radius:8px;display:grid;place-items:center;text-align:center;font-size:11px;color:var(--muted);cursor:pointer;overflow:hidden;padding:4px}.file-pick img{width:100%;height:100%;object-fit:contain}.admin-maps .inp:not(.slim){width:220px}.sub-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.sub-row{width:100%;display:flex;align-items:center;gap:10px;background:var(--panel);border-radius:10px;padding:8px;text-align:left}.sub-row:hover{background:var(--panel2)}.sub-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.sub-info small{color:var(--muted)}.hist{list-style:none;margin:10px 0;padding:0;display:flex;flex-direction:column}.hist li{display:grid;grid-template-columns:120px 150px 1fr auto;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid #ffffff08;font-size:13px}.hist li.undone .hist-what{text-decoration:line-through;color:var(--muted)}.hist-when{color:var(--muted);font-size:12px}.hist-who{display:flex;flex-direction:column}.hist-who small{color:var(--muted);font-size:11px}.hist-act{display:flex;gap:6px}.login-page{align-items:stretch}.login-form{margin:auto;width:min(320px,90%);display:flex;flex-direction:column;gap:10px}.pw-hint{margin:0;color:var(--muted);font-size:12px;font-style:italic}.elite{margin:auto;text-align:center;display:flex;flex-direction:column;gap:16px;align-items:center;padding:20px}.elite pre{white-space:pre-wrap;font-family:var(--display);font-size:20px;line-height:1.35;color:#ffd27a;margin:0;max-width:560px}.tut{position:fixed;inset:0;z-index:70;pointer-events:none}.tut-block{position:absolute;pointer-events:auto}.tut-dim{position:absolute;inset:0;background:#000b}.tut-hole{position:absolute;border-radius:12px;box-shadow:0 0 0 9999px #000a;outline:2px solid #ffffffcc;transition:all .25s}.tut-bubble{position:absolute;width:min(340px,calc(var(--app-w) * .86));background:#f2f4f7;color:#15181d;border-radius:12px;padding:12px 14px;pointer-events:auto;box-shadow:0 10px 40px #000c;max-height:calc(var(--app-h) - 20px);display:flex;flex-direction:column}.tut-bubble.wide{width:min(640px,calc(var(--app-w) * .9))}.tut-bubble .tut-text{overflow-y:auto;min-height:0;flex:1 1 auto}.tut-bubble .tut-btns{flex:none}.tut-nopoints .pt{pointer-events:none!important}.tut-bubble.welcome{width:min(380px,calc(var(--app-w) * .9));text-align:center;font-size:16px}.tut-text{line-height:1.45;font-size:14px}.tut-btns{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px}.tut-bubble.welcome .tut-btns{justify-content:center}.tut-bubble .btn:not(.primary){background:#dfe3ea;color:#15181d}.tut-bubble .link-btn{color:#5a6475}.tut-bubble a{color:#2a5bd7}.tut-rules{padding-left:18px;margin:6px 0;font-size:12.5px}@media(max-height:430px){.seg>button{min-height:32px}.filters{gap:7px}.type-btn{max-height:44px}.fav-toggle{min-height:34px}.sf-title{font-size:17px}}.sf-body>.row>.team-seg{flex:0 0 104px}.sf-body>.row>.team-seg>button{min-height:34px;flex-direction:row}.tut-welcome-btns{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}.tut-bubble .btn.tut-go{min-height:54px;width:100%;font-size:21px;font-weight:700;letter-spacing:.01em}.tut-bubble .link-btn.tut-skip{font-size:12px;color:#7a8394;padding:4px 10px}.help-ex{position:relative}.help-ex button.nv-play.help-play{position:absolute;width:64px;height:64px;border-radius:50%;aspect-ratio:auto;overflow:visible}.help-move{display:flex;align-items:center;gap:8px;margin:0 0 12px}.help-move .mhint{font-size:22px}#app{background:var(--edge, var(--panel))}.layout{position:relative;z-index:0;isolation:isolate}.overlay-slot,.tut,.modal-back,.toast,.offline-pill{-webkit-transform:translateZ(0);transform:translateZ(0)}.toast,.offline-pill{transform:translate3d(-50%,0,0)}.video-view .btn-x.ghost,.video-view .vid-bar,.video-view .vid-flash,.video-view .vid-msg,.gallery .gal-count,.gallery .gal-hint{-webkit-transform:translateZ(0);transform:translateZ(0);z-index:3}.video-view .vid-bar,.gallery .gal-count{transform:translate3d(-50%,0,0)}.gallery .gal-hint,.video-view .vid-flash{transform:translate3d(0,-50%,0)}.video-view .vid-msg{transform:translate3d(-50%,-50%,0)}.video-view .vid-msg.spinner{transform:translateZ(0)}.zm-clip{position:absolute;inset:0;overflow:hidden}.zm-bleed{position:absolute;top:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden}.bleed-ready .zm-bleed{visibility:visible;-webkit-mask-size:var(--bleed-size);mask-size:var(--bleed-size);-webkit-mask-repeat:repeat-y;mask-repeat:repeat-y;-webkit-mask-position:0 0;mask-position:0 0;animation:tn-bleed var(--bleed-loop) steps(32) infinite}.bleed-ready .zm-bleed-l{-webkit-mask-image:var(--bleed-l);mask-image:var(--bleed-l)}.bleed-ready .zm-bleed-r{-webkit-mask-image:var(--bleed-r);mask-image:var(--bleed-r)}@keyframes tn-bleed{0%{-webkit-mask-position:0 0;mask-position:0 0}to{-webkit-mask-position:var(--bleed-end) 0;mask-position:var(--bleed-end) 0}}@media(prefers-reduced-motion:reduce){.bleed-ready .zm-bleed{animation:none}}.about-body{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}.about-pic{position:relative;margin:4px 0 6px;width:min(340px,calc(var(--app-h) * .4));aspect-ratio:1;cursor:help}.about-pic img{width:100%;height:100%;display:block;border-radius:10px;image-rendering:auto}.about-tip{position:absolute;left:50%;bottom:10px;transform:translate(-50%);width:max-content;max-width:calc(100% - 16px);background:#000;color:#e8ecf2;border:1px solid var(--line);border-radius:8px;padding:6px 10px;font:700 12px/1.3 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.04em;pointer-events:none;opacity:0;transition:opacity .15s}.about-pic:hover .about-tip,.about-pic.show .about-tip{opacity:1}.about-text{margin:0;line-height:1.6;max-width:560px}.about-text .dim{color:#5c6473}.about-legal{display:flex;gap:20px;margin-top:6px;font-size:13px}.about-legal a{color:var(--muted)}.overlay.legal-page{color-scheme:light;background:#fff;color:#000;font:16px/normal Times New Roman,Times,serif;user-select:text;-webkit-user-select:text}.legal-page .legal-back{all:revert;position:absolute;top:calc(8px + var(--st));left:calc(8px + var(--sl))}.legal-page .legal-text{position:absolute;top:calc(8px + var(--st));right:calc(8px + var(--sr));margin:0;text-align:right;max-width:70%}
