.canvas-context-menu{position:fixed;z-index:10030;min-width:200px;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);overflow-y:auto;padding:6px;background:rgba(31,32,38,.98);border:1px solid #55515b;border-radius:12px;box-shadow:0 16px 48px #0009,0 1px 4px #0006;color:#ececf2;animation:canvas-context-in .12s ease-out;overscroll-behavior:contain}
.canvas-context-menu[hidden],.canvas-name-overlay[hidden]{display:none!important}
.canvas-context-heading{max-width:250px;padding:6px 10px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#b7b5bf}
.canvas-context-menu button{display:block;width:100%;min-height:32px;border:0;border-radius:6px;background:transparent;padding:7px 11px;color:#edecf2;font-size:12px;line-height:18px;text-align:left;cursor:pointer;transition:background .1s,color .1s;white-space:nowrap}
.canvas-context-menu button:hover:not(:disabled),.canvas-context-menu button:focus-visible{background:#e8c34c24;color:#ffe184;outline:1px solid #e8c34c55;outline-offset:-1px}
.canvas-context-menu button:disabled{color:#85828d;cursor:default}.canvas-context-menu button.is-danger:not(:disabled){color:#ffb1a9}.canvas-context-menu button.is-danger:hover:not(:disabled){background:#e4625522}
.canvas-context-separator{height:1px;background:#ffffff15;margin:5px 6px}
.canvas-name-overlay{position:fixed;inset:0;z-index:10040;display:grid;place-items:center;background:#05050890;backdrop-filter:blur(5px)}
.canvas-name-card{width:min(360px,calc(100vw - 32px));border:1px solid #56505a;border-radius:16px;background:#202127;color:#eee;padding:24px;box-shadow:0 20px 70px #0009;animation:canvas-context-in .14s ease-out}
.canvas-name-card h3{font-size:16px;font-weight:600;margin:0 0 20px}.canvas-name-card label{display:block;font-size:12px;color:#c5c2cb;margin-bottom:8px}.canvas-name-card input{box-sizing:border-box;width:100%;height:40px;border:1px solid #69626d;border-radius:8px;background:#15161b;color:#fff;padding:0 11px;font-size:14px;outline:none}.canvas-name-card input:focus{border-color:#e7c74f;box-shadow:0 0 0 3px #e7c74f18}
.canvas-name-buttons{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.canvas-name-buttons button{border:1px solid #56535c;background:#303037;color:#e5e3eb;border-radius:8px;padding:8px 18px;cursor:pointer;font-size:12px}.canvas-name-buttons .is-primary{background:#eed05d;border-color:#eed05d;color:#201b09;font-weight:600}.canvas-name-buttons button:focus-visible{outline:2px solid #ffe58b;outline-offset:2px}
.canvas-mask-popover{max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);overflow-y:auto;overscroll-behavior:contain}
@keyframes canvas-context-in{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.canvas-context-menu,.canvas-name-card{animation:none}.canvas-context-menu button{transition:none}}
